Animation Upload Loop Controls
The loop controls are a regular source of confusion. They work with percentages, rather than frame numbers, unlike every other animation program.
Many people also fail to understand what happens to frames before Loop In and after Loop Out.
Working with Percentages
When calculating the percentage for a frame number be aware that the loop controls do count the first frame, even though it's not displayed. The percentage indicates the frame number of the BVH file, not the frame number of the animation.
For example, in a BVH file with 7 frames, if we wanted the loop to start on frame 4 of the file, and end on frame 5 of the file:
Loop In Percentage:
frame 4/7 BVH frames = 57.143%
Loop Out Percentage:
frame 5/7 BVH frames = 71.429%
If this strikes anyone as unnecessarily complex and error-prone that feeling is normal.
A Diagram of the Example
|BVH File Frame||Animation Frame|
|1||Not Displayed (Reference Frame)|
|2||1 (Intro Frame 1)|
|3||2 (Intro Frame 2)|
|4||3 (Loop Frame 1)|
|5||4 (Loop Frame 2)|
|6||5 (Outro Frame 1)|
|7||6 (Outro Frame 2)|
Before Loop In
Frames before Loop In, if any, will be played only when the animation starts. You could think of this as the intro of the animation.
During the Loop
Frames within the loop work like you would probably expect. When playback reaches the Loop Out frame it jumps back to the Loop In frame and continues. To make the loop seamless the Loop In and Loop Out frames need to be identical. There is no interpolation or delay during this jump, which is necessary to avoid a noticeable pause. When the animation is stopped playback will stop jumping to the Loop In frame when it reaches the Loop Out frame.
If playback is stopped in the middle of the loop, playing will continue. It just stops treating the Loop Out frame specially.
After Loop Out
When the animation is stopped the frames after Loop Out, if any, will be played. You could think of this as the outro of the animation.
A bug causes frames after Loop Out to not be played in the animation upload preview window. However, they still play correctly in-world (see VWR-8301).
- You can avoid wasting lindens due to this bug by testing all your animations on the Beta Grid.