Commit bf5385db6f03350c5d4cc7377313dcdfeaf164f2
1 parent
283d2906
Added nine patch images to Benchmark example.
use the --use-ninepatch command flag to use nine patch images. Change-Id: Ie14eacdf938066343a1d75f6738a3c1dd65a7e81
Showing
54 changed files
with
84 additions
and
14 deletions
examples/benchmark/benchmark.cpp
| @@ -84,7 +84,64 @@ const char* IMAGE_PATH[] = { | @@ -84,7 +84,64 @@ const char* IMAGE_PATH[] = { | ||
| 84 | DALI_IMAGE_DIR "gallery-medium-53.jpg", | 84 | DALI_IMAGE_DIR "gallery-medium-53.jpg", |
| 85 | }; | 85 | }; |
| 86 | 86 | ||
| 87 | +const char* NINEPATCH_IMAGE_PATH[] = { | ||
| 88 | + DALI_IMAGE_DIR "selection-popup-bg.1.9.png", | ||
| 89 | + DALI_IMAGE_DIR "selection-popup-bg.2.9.png", | ||
| 90 | + DALI_IMAGE_DIR "selection-popup-bg.3.9.png", | ||
| 91 | + DALI_IMAGE_DIR "selection-popup-bg.4.9.png", | ||
| 92 | + DALI_IMAGE_DIR "selection-popup-bg.5.9.png", | ||
| 93 | + DALI_IMAGE_DIR "selection-popup-bg.6.9.png", | ||
| 94 | + DALI_IMAGE_DIR "selection-popup-bg.7.9.png", | ||
| 95 | + DALI_IMAGE_DIR "selection-popup-bg.8.9.png", | ||
| 96 | + DALI_IMAGE_DIR "selection-popup-bg.9.9.png", | ||
| 97 | + DALI_IMAGE_DIR "selection-popup-bg.10.9.png", | ||
| 98 | + DALI_IMAGE_DIR "selection-popup-bg.11.9.png", | ||
| 99 | + DALI_IMAGE_DIR "selection-popup-bg.12.9.png", | ||
| 100 | + DALI_IMAGE_DIR "selection-popup-bg.13.9.png", | ||
| 101 | + DALI_IMAGE_DIR "selection-popup-bg.14.9.png", | ||
| 102 | + DALI_IMAGE_DIR "selection-popup-bg.15.9.png", | ||
| 103 | + DALI_IMAGE_DIR "selection-popup-bg.16.9.png", | ||
| 104 | + DALI_IMAGE_DIR "selection-popup-bg.17.9.png", | ||
| 105 | + DALI_IMAGE_DIR "selection-popup-bg.18.9.png", | ||
| 106 | + DALI_IMAGE_DIR "selection-popup-bg.19.9.png", | ||
| 107 | + DALI_IMAGE_DIR "selection-popup-bg.20.9.png", | ||
| 108 | + DALI_IMAGE_DIR "selection-popup-bg.21.9.png", | ||
| 109 | + DALI_IMAGE_DIR "selection-popup-bg.22.9.png", | ||
| 110 | + DALI_IMAGE_DIR "selection-popup-bg.23.9.png", | ||
| 111 | + DALI_IMAGE_DIR "selection-popup-bg.24.9.png", | ||
| 112 | + DALI_IMAGE_DIR "selection-popup-bg.25.9.png", | ||
| 113 | + DALI_IMAGE_DIR "selection-popup-bg.26.9.png", | ||
| 114 | + DALI_IMAGE_DIR "selection-popup-bg.27.9.png", | ||
| 115 | + DALI_IMAGE_DIR "selection-popup-bg.28.9.png", | ||
| 116 | + DALI_IMAGE_DIR "selection-popup-bg.29.9.png", | ||
| 117 | + DALI_IMAGE_DIR "selection-popup-bg.30.9.png", | ||
| 118 | + DALI_IMAGE_DIR "selection-popup-bg.31.9.png", | ||
| 119 | + DALI_IMAGE_DIR "selection-popup-bg.32.9.png", | ||
| 120 | + DALI_IMAGE_DIR "selection-popup-bg.33.9.png", | ||
| 121 | + DALI_IMAGE_DIR "button-disabled.9.png", | ||
| 122 | + DALI_IMAGE_DIR "button-down.9.png", | ||
| 123 | + DALI_IMAGE_DIR "button-down-disabled.9.png", | ||
| 124 | + DALI_IMAGE_DIR "button-up-1.9.png", | ||
| 125 | + DALI_IMAGE_DIR "button-up-2.9.png", | ||
| 126 | + DALI_IMAGE_DIR "button-up-3.9.png", | ||
| 127 | + DALI_IMAGE_DIR "button-up-4.9.png", | ||
| 128 | + DALI_IMAGE_DIR "button-up-5.9.png", | ||
| 129 | + DALI_IMAGE_DIR "button-up-6.9.png", | ||
| 130 | + DALI_IMAGE_DIR "button-up-7.9.png", | ||
| 131 | + DALI_IMAGE_DIR "button-up-8.9.png", | ||
| 132 | + DALI_IMAGE_DIR "button-up-9.9.png", | ||
| 133 | + DALI_IMAGE_DIR "button-up-10.9.png", | ||
| 134 | + DALI_IMAGE_DIR "button-up-11.9.png", | ||
| 135 | + DALI_IMAGE_DIR "button-up-12.9.png", | ||
| 136 | + DALI_IMAGE_DIR "button-up-13.9.png", | ||
| 137 | + DALI_IMAGE_DIR "button-up-14.9.png", | ||
| 138 | + DALI_IMAGE_DIR "button-up-15.9.png", | ||
| 139 | + DALI_IMAGE_DIR "button-up-16.9.png", | ||
| 140 | + DALI_IMAGE_DIR "button-up-17.9.png", | ||
| 141 | +}; | ||
| 142 | + | ||
| 87 | const unsigned int NUM_IMAGES = sizeof(IMAGE_PATH) / sizeof(char*); | 143 | const unsigned int NUM_IMAGES = sizeof(IMAGE_PATH) / sizeof(char*); |
| 144 | +const unsigned int NUM_NINEPATCH_IMAGES = sizeof(NINEPATCH_IMAGE_PATH) / sizeof(char*); | ||
| 88 | 145 | ||
| 89 | const float ANIMATION_TIME ( 5.0f ); // animation length in seconds | 146 | const float ANIMATION_TIME ( 5.0f ); // animation length in seconds |
| 90 | 147 | ||
| @@ -149,14 +206,25 @@ Geometry& QuadMesh() | @@ -149,14 +206,25 @@ Geometry& QuadMesh() | ||
| 149 | return mesh; | 206 | return mesh; |
| 150 | } | 207 | } |
| 151 | 208 | ||
| 209 | +bool gUseMesh(false); | ||
| 210 | +bool gUseImageView(false); | ||
| 211 | +bool gNinePatch(false); | ||
| 212 | +unsigned int gRowsPerPage(25); | ||
| 213 | +unsigned int gColumnsPerPage( 25 ); | ||
| 214 | +unsigned int gPageCount(13); | ||
| 215 | + | ||
| 152 | Renderer CreateRenderer( unsigned int index ) | 216 | Renderer CreateRenderer( unsigned int index ) |
| 153 | { | 217 | { |
| 154 | - static Renderer renderers[NUM_IMAGES]; | 218 | + |
| 219 | + int numImages = !gNinePatch ? NUM_IMAGES : NUM_NINEPATCH_IMAGES; | ||
| 220 | + static Renderer* renderers = new Renderer[numImages]; | ||
| 155 | if( !renderers[index] ) | 221 | if( !renderers[index] ) |
| 156 | { | 222 | { |
| 157 | //Create the renderer | 223 | //Create the renderer |
| 158 | Shader shader = Shader::New( VERTEX_SHADER_TEXTURE, FRAGMENT_SHADER_TEXTURE ); | 224 | Shader shader = Shader::New( VERTEX_SHADER_TEXTURE, FRAGMENT_SHADER_TEXTURE ); |
| 159 | - Image image = ResourceImage::New(IMAGE_PATH[index]); | 225 | + |
| 226 | + const char* imagePath = !gNinePatch ? IMAGE_PATH[index] : NINEPATCH_IMAGE_PATH[index]; | ||
| 227 | + Image image = ResourceImage::New(imagePath); | ||
| 160 | Sampler textureSampler = Sampler::New( image, "sTexture" ); | 228 | Sampler textureSampler = Sampler::New( image, "sTexture" ); |
| 161 | Material material = Material::New( shader ); | 229 | Material material = Material::New( shader ); |
| 162 | material.AddSampler(textureSampler); | 230 | material.AddSampler(textureSampler); |
| @@ -174,13 +242,6 @@ Actor CreateMeshActor( unsigned int index) | @@ -174,13 +242,6 @@ Actor CreateMeshActor( unsigned int index) | ||
| 174 | return meshActor; | 242 | return meshActor; |
| 175 | } | 243 | } |
| 176 | 244 | ||
| 177 | -bool gUseMesh(false); | ||
| 178 | -bool gUseImageView(false); | ||
| 179 | -unsigned int gRowsPerPage(25); | ||
| 180 | -unsigned int gColumnsPerPage( 25 ); | ||
| 181 | -unsigned int gPageCount(13); | ||
| 182 | - | ||
| 183 | - | ||
| 184 | } | 245 | } |
| 185 | // Test application to compare performance between ImageActor and ImageView | 246 | // Test application to compare performance between ImageActor and ImageView |
| 186 | // By default, the application consist of 10 pages of 25x25 ImageActors, this can be modified using the following command line arguments: | 247 | // By default, the application consist of 10 pages of 25x25 ImageActors, this can be modified using the following command line arguments: |
| @@ -189,6 +250,7 @@ unsigned int gPageCount(13); | @@ -189,6 +250,7 @@ unsigned int gPageCount(13); | ||
| 189 | // -p NumberOfPages (Modifies the nimber of pages ) | 250 | // -p NumberOfPages (Modifies the nimber of pages ) |
| 190 | // --use-imageview ( Use ImageView instead of ImageActor ) | 251 | // --use-imageview ( Use ImageView instead of ImageActor ) |
| 191 | // --use-mesh ( Use new renderer API (as ImageView) but shares renderers between actors when possible ) | 252 | // --use-mesh ( Use new renderer API (as ImageView) but shares renderers between actors when possible ) |
| 253 | +// --use-nine-patch ( Use nine patch images ) | ||
| 192 | 254 | ||
| 193 | // | 255 | // |
| 194 | class Benchmark : public ConnectionTracker | 256 | class Benchmark : public ConnectionTracker |
| @@ -248,6 +310,11 @@ public: | @@ -248,6 +310,11 @@ public: | ||
| 248 | return true; | 310 | return true; |
| 249 | } | 311 | } |
| 250 | 312 | ||
| 313 | + const char* ImagePath( int i ) | ||
| 314 | + { | ||
| 315 | + return !gNinePatch ? IMAGE_PATH[i % NUM_IMAGES] : NINEPATCH_IMAGE_PATH[i % NUM_NINEPATCH_IMAGES]; | ||
| 316 | + } | ||
| 317 | + | ||
| 251 | void CreateImageActors() | 318 | void CreateImageActors() |
| 252 | { | 319 | { |
| 253 | Stage stage = Stage::GetCurrent(); | 320 | Stage stage = Stage::GetCurrent(); |
| @@ -256,7 +323,7 @@ public: | @@ -256,7 +323,7 @@ public: | ||
| 256 | 323 | ||
| 257 | for( size_t i(0); i<actorCount; ++i ) | 324 | for( size_t i(0); i<actorCount; ++i ) |
| 258 | { | 325 | { |
| 259 | - Image image = ResourceImage::New(IMAGE_PATH[i % NUM_IMAGES]); | 326 | + Image image = ResourceImage::New(ImagePath(i)); |
| 260 | mActor[i] = ImageActor::New(image); | 327 | mActor[i] = ImageActor::New(image); |
| 261 | mActor[i].SetSize(Vector3(0.0f,0.0f,0.0f)); | 328 | mActor[i].SetSize(Vector3(0.0f,0.0f,0.0f)); |
| 262 | mActor[i].SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS ); | 329 | mActor[i].SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS ); |
| @@ -272,7 +339,7 @@ public: | @@ -272,7 +339,7 @@ public: | ||
| 272 | 339 | ||
| 273 | for( size_t i(0); i<actorCount; ++i ) | 340 | for( size_t i(0); i<actorCount; ++i ) |
| 274 | { | 341 | { |
| 275 | - Image image = ResourceImage::New(IMAGE_PATH[i % NUM_IMAGES]); | 342 | + Image image = ResourceImage::New(ImagePath(i)); |
| 276 | mImageView[i] = ImageView::New(image); | 343 | mImageView[i] = ImageView::New(image); |
| 277 | mImageView[i].SetSize(Vector3(0.0f,0.0f,0.0f)); | 344 | mImageView[i].SetSize(Vector3(0.0f,0.0f,0.0f)); |
| 278 | mImageView[i].SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS ); | 345 | mImageView[i].SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS ); |
| @@ -287,7 +354,8 @@ public: | @@ -287,7 +354,8 @@ public: | ||
| 287 | mActor.resize(actorCount); | 354 | mActor.resize(actorCount); |
| 288 | for( size_t i(0); i<actorCount; ++i ) | 355 | for( size_t i(0); i<actorCount; ++i ) |
| 289 | { | 356 | { |
| 290 | - mActor[i] = CreateMeshActor(i % NUM_IMAGES); | 357 | + size_t numImages = !gNinePatch ? NUM_IMAGES : NUM_NINEPATCH_IMAGES; |
| 358 | + mActor[i] = CreateMeshActor(i % numImages); | ||
| 291 | mActor[i].SetSize(0.0f,0.0f,0.0f); | 359 | mActor[i].SetSize(0.0f,0.0f,0.0f); |
| 292 | 360 | ||
| 293 | stage.Add(mActor[i]); | 361 | stage.Add(mActor[i]); |
| @@ -472,6 +540,10 @@ int main( int argc, char **argv ) | @@ -472,6 +540,10 @@ int main( int argc, char **argv ) | ||
| 472 | { | 540 | { |
| 473 | gUseImageView = true; | 541 | gUseImageView = true; |
| 474 | } | 542 | } |
| 543 | + else if( arg.compare("--nine-patch" ) == 0) | ||
| 544 | + { | ||
| 545 | + gNinePatch = true; | ||
| 546 | + } | ||
| 475 | else if( arg.compare(0, 2, "-r" ) == 0) | 547 | else if( arg.compare(0, 2, "-r" ) == 0) |
| 476 | { | 548 | { |
| 477 | gRowsPerPage = atoi( arg.substr( 2, arg.size()).c_str()); | 549 | gRowsPerPage = atoi( arg.substr( 2, arg.size()).c_str()); |
| @@ -484,8 +556,6 @@ int main( int argc, char **argv ) | @@ -484,8 +556,6 @@ int main( int argc, char **argv ) | ||
| 484 | { | 556 | { |
| 485 | gPageCount = atoi( arg.substr( 2, arg.size()).c_str()); | 557 | gPageCount = atoi( arg.substr( 2, arg.size()).c_str()); |
| 486 | } | 558 | } |
| 487 | - | ||
| 488 | - | ||
| 489 | } | 559 | } |
| 490 | 560 | ||
| 491 | RunTest( application ); | 561 | RunTest( application ); |
resources/images/button-disabled.9.png
0 → 100644
783 Bytes
resources/images/button-down-disabled.9.png
0 → 100644
720 Bytes
resources/images/button-down.9.png
0 → 100644
844 Bytes
resources/images/button-up-1.9.png
0 → 100644
897 Bytes
resources/images/button-up-10.9.png
0 → 100644
943 Bytes
resources/images/button-up-11.9.png
0 → 100644
942 Bytes
resources/images/button-up-12.9.png
0 → 100644
939 Bytes
resources/images/button-up-13.9.png
0 → 100644
948 Bytes
resources/images/button-up-14.9.png
0 → 100644
934 Bytes
resources/images/button-up-15.9.png
0 → 100644
939 Bytes
resources/images/button-up-16.9.png
0 → 100644
953 Bytes
resources/images/button-up-17.9.png
0 → 100644
941 Bytes
resources/images/button-up-2.9.png
0 → 100644
997 Bytes
resources/images/button-up-3.9.png
0 → 100644
982 Bytes
resources/images/button-up-4.9.png
0 → 100644
982 Bytes
resources/images/button-up-5.9.png
0 → 100644
996 Bytes
resources/images/button-up-6.9.png
0 → 100644
989 Bytes
resources/images/button-up-7.9.png
0 → 100644
985 Bytes
resources/images/button-up-8.9.png
0 → 100644
983 Bytes
resources/images/button-up-9.9.png
0 → 100644
942 Bytes
resources/images/selection-popup-bg.1.9.png
0 → 100644
748 Bytes
resources/images/selection-popup-bg.10.9.png
0 → 100644
537 Bytes
resources/images/selection-popup-bg.11.9.png
0 → 100644
541 Bytes
resources/images/selection-popup-bg.12.9.png
0 → 100644
624 Bytes
resources/images/selection-popup-bg.13.9.png
0 → 100644
514 Bytes
resources/images/selection-popup-bg.14.9.png
0 → 100644
535 Bytes
resources/images/selection-popup-bg.15.9.png
0 → 100644
591 Bytes
resources/images/selection-popup-bg.16.9.png
0 → 100644
622 Bytes
resources/images/selection-popup-bg.17.9.png
0 → 100644
602 Bytes
resources/images/selection-popup-bg.18.9.png
0 → 100644
490 Bytes
resources/images/selection-popup-bg.19.9.png
0 → 100644
574 Bytes
resources/images/selection-popup-bg.2.9.png
0 → 100644
755 Bytes
resources/images/selection-popup-bg.20.9.png
0 → 100644
634 Bytes
resources/images/selection-popup-bg.21.9.png
0 → 100644
632 Bytes
resources/images/selection-popup-bg.22.9.png
0 → 100644
622 Bytes
resources/images/selection-popup-bg.23.9.png
0 → 100644
610 Bytes
resources/images/selection-popup-bg.24.9.png
0 → 100644
593 Bytes
resources/images/selection-popup-bg.25.9.png
0 → 100644
562 Bytes
resources/images/selection-popup-bg.26.9.png
0 → 100644
614 Bytes
resources/images/selection-popup-bg.27.9.png
0 → 100644
615 Bytes
resources/images/selection-popup-bg.28.9.png
0 → 100644
537 Bytes
resources/images/selection-popup-bg.29.9.png
0 → 100644
625 Bytes
resources/images/selection-popup-bg.3.9.png
0 → 100644
708 Bytes
resources/images/selection-popup-bg.30.9.png
0 → 100644
500 Bytes
resources/images/selection-popup-bg.31.9.png
0 → 100644
535 Bytes
resources/images/selection-popup-bg.32.9.png
0 → 100644
619 Bytes
resources/images/selection-popup-bg.33.9.png
0 → 100644
628 Bytes
resources/images/selection-popup-bg.4.9.png
0 → 100644
672 Bytes
resources/images/selection-popup-bg.5.9.png
0 → 100644
657 Bytes
resources/images/selection-popup-bg.6.9.png
0 → 100644
538 Bytes
resources/images/selection-popup-bg.7.9.png
0 → 100644
487 Bytes
resources/images/selection-popup-bg.8.9.png
0 → 100644
497 Bytes
resources/images/selection-popup-bg.9.9.png
0 → 100644
511 Bytes