Texture Test

Category:Test Scripts
== TextureTest ==
* Textures for the following test can be found here... 
** test_256_256.tga
** test_256_256_alpha.tga
** test_256_512.tga
** test_512_16.tga
=== 1. Uploading Textures ===
* a. Single Texture Upload Test
** File->Upload Image
** Upload test_256_256.tga
** Verify that the upload succeeds and that the image looks correct (red arrow pointing up in a green box)
* b. Batch Texture Upload Test
** File->Bulk Upload
** Upload test_256_512.tga, test_256_256_alpha.tga, test_512_16.tga
** Verify that the textures are the correct dimensions, and that the _alpha texture has transparency
** Filter your inventory by Texture and verify that the uploaded textures all show up
=== 2. Applying textures ===
* a. Object Texture Test
** Create a box and scale it up so that its sides are easy to see
** Right-click and edit the box
** Click on the Texture tab
** Click on the current (default wood) texture box
*** Verify that the Pick: Texture dialog comes up.
*** Verify that the Textures folder in your inventory appears to the right
** Select test_256_256 in the texture picker
*** Verify that the texture on all sides of the box changes
*** Verify that the arrows on all four sides point up
*** Verify that the arrows on the top and bottom point opposite directions
** Click OK to close the Pick: Texture dialog
** Click on the Color box
*** Verify that the Color Picker dialog comes up
** Choose a color and click OK to close the dialog
*** Verify that the color of all sides of the box change
** Change the Transparency spinner and verify that the transparency of the box changes
** Change the Color and Transparency back to White / 0
** Increase the Horizontal and Vertical Scale
*** Verify that the texture appears multiple times across each surface
** Decrease the Horizontal and Vertical Scale
*** Verify that a subset of the texture appears on the surface
** Change the Horizontal and Vertical Offset
*** Verify that the texture is offset on each face
** Set Horizontal and Vertical scale to negative numbers
*** Verify that the texture flips on each surface
** Change the Rotation value
*** Verify that the texture rotates correctly on each surface
** Change the Repeats Per Meter and click on Apply
*** Verify that the Repeats per Face values change accordingly
*** Change the Horizontal Scale and Vertical Scale back to 1.0 and verify that the Repeats Per Meter value changes
* b. Face Texture Test
** Open up the Inventory : My Inventory : Textures folder (or filter your inventory for textures)
** Drag test_256_256_alpha on to one of the faces on the box
*** Verify that the texture appears correctly and that you can see through it
** Drag test_256_512 on to a different face and verify that it appears correctly
** Drag test_512_16 on to the same face and verify that it appears correctly
*** The image should appear blurry since it is being stretched across the surface
** Re-size the box to 2x2x2m and Set the Texture Mapping to Planar
*** Verify the texture repeats have increased on the box.
** Change the Texture Mapping back to Default
** Take the box to your inventory for testing Media Textures
=== 3. Avatar Textures ===
* a. Modifying Your Avatar Textures Test
** Right-click on your avatar, choose Edit my Outfit"'
** If you are not wearing a Jacket, click the gear menu > New Clothes > New Jacket
** Select Jacket and change the Upper and Lower fabric texture
*** Verify that the jacket texture on your avatar changes
*** Click on < Save to save the changes
** Edit Pants and change the fabric texture
*** Verify that the pants texture on your avatar changes
*** Click on < Save to save the changes
*** Click on <' to exit "Edit Outfit"
** Watch your avatar. The texture should go from crisp to (briefly) blurry then crisp again as the baked image loads.
*** Verify that the baked image looks correct
*** Have another avatar verify they see the changes once you save and that your avatar looks correct.
* b. Modifying Another Avatar Textures Test
** Watch while another avatar repeats the above test
*** Verify that after the other avatar finishes making changes, the baked texture appears correctly
* c. Avatar clothing flare 
** If you have an observer avatar, log it out.
** Right-click on your avatar, choose Edit my Outfit
** Edit your pants
** Set Cuff Flare to 100.
** Click Save.
** Relog
*** Verify your pants cuffs still appear flared.
** Log in with an observer avatar
*** Verify the pants cuffs of the tester avatar appear flared.
=== 4. Parcel Overlay ===
* Set World->Show->Land Owners to enabled. 
* Verify that property colors are visible and their edges are crisp
* Disable World->Show->Land Owners
=== 5. Media Textures ===
* a. Applying Parcel Media Textures Test
** Move your avatar to a parcel of land you own
** Rez the box you previously created in the Applying textures section.
** Right-click on the land and choose About Land
** Choose the Media tab
** Make sure that there is not currently anything in the Home Page field (If there is, clear it by clicking the Set button, delete the Media URL, and click OK to set it to blank.)
** Click on texture swatch next to Replace texture:
*** Verify that the Pick dialog comes up with a list of your textures on the right
** Select the test_256_256 texture
** Click OK to close the Pick Texture dialog
** Click the Set button next to the Home Page field, and enter a valid streaming media URL into the Media URL field and click OK
*** For example https://s3-us-west-2.amazonaws.com/lecs-bugislandtests/texture_rotate_animation_loop.mov
*** Verify that "Type" automatically switches to the content type (in this case of texture_rotate_animation_loop.mov the Type is Movie)
** Check the Loop checkbox
** Close the About Land dialog
** Leave then re-enter the parcel.
** Verify that the movie starts playing on the sides of the box with test_256_256 applied
** Right-click the box and choose Edit
** Click on the Texture tab
** Switch the "Materials" drop down to "Media"
** Click on the Align button
*** Verify that the movie now plays across the entire surface of faces with test_256_256 applied
** Close the Edit dialog
** Right-click on the land and choose About Land again. The Media tab should already be selected.
** Click again on the box under Replace this texture: and verify that the Pick dialog comes up
** Select the test_256_256_alpha texture
*** Verify that the movie starts playing on the surface with test_256_256_alpha applied
*** Note: the texture may not be aligned on the new surface
*** Verify that the surface is not transparent
*** Verify that the other surfaces return to displaying test_256_256
** Select the test_256_16 texture
*** Verify that the movie starts playing on the surface with test_256_16 applied
*** Note: the texture may not be aligned on the new surface
*** Verify that the aspect ratio and transparency are the same as when the movie played on the other surface
*** Verify that the other surface returns to displaying test_256_256_alpha
* b. Media Parcel texture Test
** Move out of the parcel
*** Verify that the movie stops playing and that the previously applied texture appears on the surface
** Move back into the parcel
*** Verify that the movie starts playing.
** Press Pause on the media control at the top right of the screen
*** Verify that the movie pauses
** Press Play on the media control at the top right of the screen
*** Verify that the movie starts playing again.
=== 6. Texture Priority ===
* Locate an object in the distance with an unloaded or blurry texture.
** You may need to fly to a new area or log out / log in.
** example test location: http://maps.secondlife.com/secondlife/TextureTest/161/82/44
* Zoom in on the object so that the blurry texture is large and centered in your view.
** The texture should quickly improve to the correct resolution, before other nearby textures do.
=== 7. Full Res ===
(Removed)
=== 8. Texture Memory management ===
(Removed)
=== 9. Texture Cache ===
* Clear the cache: login to SL, open preference -> setup: reset the cache, click "OK" when asking if clear the cache. At the beginning of the next login, the entire texture cache will be wiped out. 
* Save to cache: re-login, open the Develop menu with "ctrl+alt+q"(SecondLife 2.x), open the texture console by "ctrl+shift+3". Watch the final status of each fetched texture is "WRT", which means the fetched texture is written to the texture cache.
* Load from cache: re-login, go to the places you visited last time, open the texture console by "ctrl+shift+3", watch the status of each fetched texture. There should be no "SIM", "NET", or "HTP" status for most textures, especially for those "white" colored texture items shown in the texture console. The texture fetching process should be much faster.
* Exhausting test: this may take a long time. Set the texture cache to be minimal (64MB) (Going to "preference -> Setup -> cache size"). Visit a lot of different places to make the cache full. To determine the available texture cache use this calculation: 20% of the cache size goes to VFS. 20% of the rest goes to store headers of textures. So the texture cache size is 0.8 * 0.8 = 0.64 * cache_size. Example: With Viewer Cache Size set to 64 Mbytes, the Texture Cache size is 40.96 Mbytes. To determine when the texture cache is full Open the Texture Console: Develop > Consoles > Texture Console and observe there will be a line output like Cache: 11.0/40.0 MB (The first value is the current size of the texture cache / The second number is the total allotted texture cache) When the texture cache is full (like Cache 40.0/40.0 MB), 20% of its contents will be purged based on Last Recently Used. Example: With a viewer cache size set to 64 Mbytes, 40 Mbytes are available for texture cache. When that 40 Mbytes is exceeded in texture cache shown in the Texture Console, the texture cache will purge 8 Mbytes and then be sized at 32 Mbytes. Watch that viewer and cache works fine when this 20% purge occurs when the texture cache overflows. Every time when re-login to the last place where you quit SL, most textures are still loaded from the cache. There should not be any freezing or crash happening.