Difference between revisions of "Animation Test"

From Second Life Wiki
Jump to navigation Jump to search
Line 179: Line 179:
</lsl>
</lsl>


[[Category:QA Portal]]
 
[[Category:Quality Assurance]]
[[Category:Quality Assurance]]
[[Category:Test Scripts]]
[[Category:Test Scripts]]

Revision as of 14:52, 21 May 2012


AnimationTest

  • VERSION 0.2
  • LENGTH 00:60
  • TESTERS 1
  • OVERVIEW Test uploadable animations, the construction of gestures and the llGetAnimationList function
  • SETUP 1 Tester, 10L$ for upload, Poser, and a Poser animation file (.bvh).


Animations

  • 0010 Verify you can upload .bvh files from Poser 4, 5 or 6ServiceRelease1.
  • 0020 Preview the animation from different angles.
  • 0030 Stop and start the animation preview.
  • 0040 Cancel the animation upload.
  • 0050 Preview an animation where the legs move and change the name and description.
  • 0060 Check the Loop box, and click the play button.
  • 0070 Set the priority to 2. Cycle through the preview poses and verify the legs bend in only the stand preview
  • 0080 Set the priority to 4. Cycle through the preview poses and verify the legs bend in all the preview poses
  • 0090 Set the Loop Start 50% and the End Loop to 80%. The animation will play to the 80% mark then loop to the 50% mark.
  • 0100 Change the hand pose and expression and verify that your changes appear in the preview correctly.
  • 0110 Change Ease in to 0 and Ease out to 1. Verify the animation starts quickly, and the end blends smoothly to the standing animation.
  • 0120 Upload the animation. Verify you are charged L$10 for the upload.
  • 0130 Open your inventory and verify the folder containing the animation asset is open and the most recently uploaded animation is selected.
  • 0140 Double click the animation from your inventory, click the "Play Locally" button and watch your avatar animate.
  • 0150 Choose World > Stop All Animations. All animations should stop and the avatar should enter their idle animation.
    • Stop multiple animations, include normal idle, gestures, animations played in world, and locally.

Gestures

  • 0150 Check your gestures folder and verify that all your old gestures have been turned into gesture assets
  • 0160 Open one of the gestures from your inventory by double clicking it
  • 0170 Change each of the elements of the gesture; the input text, the shortcut key, the sound, the animation, the output text. Save the gesture and trigger it with the input text and the shortcut key.
  • 0180 Create a New Gesture from the Inventory's Create menu.
  • 0190 Verify a new Gesture is created in your inventory and selected.
  • 0200 Double click it to open the Gesture Floater. Click the Preview. Your avatar will wave and then say "Hello, avatar!"
  • 0210 Rename the Gesture asset to "backflip".
  • 0220 In the Description field, type "backflip gesture"
  • 0230 Activate the gesture
  • 0240 Type "yay" In the Trigger field, and "w00t!" in the Replace with field.
  • 0250 Set the shortcut key to shift-F6
  • 0260 Add a animation by clicking Animation from the left column, and clicking the add button.
  • 0270 An animation will be added to the end of the Steps list. Click the "Move Up" button until the animation is the 2nd step. Change the Animation to one you have just uploaded.
  • 0280 Hit Ctrl-S to save the animation, then click the Preview button to play it.
  • 0290 Delete the Wait step.
  • 0300 Add a new Wait step. and set the wait time to 5.0 seconds.
  • 0310 Add a new sound, and select a sound from the list.
  • 0320 Click the save button, click the Active checkbox, and close the gesture floater.


Playing Gestures

  • 0330 Activate the Gesture, then chat "animations work, yay"
  • 0340 Verify your avatar waves, does a backflip, says "animations work, w00t!", waits for 5 seconds, says "Hello, avatar!, then plays the sound you chose.
  • 0350 Make a new gesture, name it "greet", and set the trigger to "/greet". Save and activate the gesture.
  • 0360 Hit enter to open the chat bar. Click the Gesture combo box in the chat bar, and choose your "greet" gesture. Verify the gesture plays.
  • 0370 Type "/gre" into the chat field and verify that "/greet" is autocompleted. Hit enter and verify the animation plays.


Active Gestures

  • 0380 Open the Active Gestures window by selecting gestures from the Edit menu.
  • 0390 Sort the animations by clicking the buttons at the top of the columns.
  • 0400 Verify you can Edit a gesture by selecting a gesture and clicking edit.
  • 0410 Verify selecting a gesture and clicking Show Inv will open your inventory and select the Gesture.
  • 0420 Verify you can play gestures by clicking a gesture then clicking Play.
  • 0430 Verify double clicking a gesture will play the gesture.


Scripted Animations

Verifies llGetAnimationList() works


  • 0440 Rez a box then Create and Add the following script to it.
    • SCRIPT llGetAnimationListScript
  • 0450 Copy the UUID from one of you animations by right clicking it in your inventory > Copy Asset UUID
  • 0460 Chat the UUID (Ctrl V and Enter in the Chat Bar)
  • 0470 Play the animation and verify that one of the UUID's displayed by the script matches the UUID you chatted.

Gesture Caching

  • 0480 Create two gestures
  • 0490 Make sure one is active and the other is inactive
  • 0500 Log out, log in --purge (add --purge to the Target field of the SL shortcut)
  • 0510 Make sure they are still active and inactive
  • 0520 Make sure they both still play
  • 0530 Deactivate one and activate the other
  • 0540 Log out, log in --purge
  • 0550 Make sure they are inactive and active.
  • 0560 Make sure they both play

Animations continue playing as you cross region boundary

  1. Attach the Popgun from the Objects folder of the Inventory Library
  2. Rez a Kart from the Objects folder of the Inventory Library
  3. Drive the Kart across a region boundary
  4. Verify your avatar remains sitting while crossing the region boundary, and your arm is still aiming the Popgun.
  5. Verify your avatar is still leaning back in the seat after arriving in the other region.


llGetAnimationListScript

<lsl> default {

   state_entry()
   {
       llSetTimerEvent(0.5);
   }
   timer()
   {
       llSetText((string)llList2CSV(llGetAnimationList(llGetOwner())), <1,1,1>,1);
   } 

} </lsl>