Difference between revisions of "BVH Frame Rate"
(Remove a lot of misinformation from this page.) |
|||
(6 intermediate revisions by one other user not shown) | |||
Line 3: | Line 3: | ||
}} | }} | ||
{{KBnote|Animations in Second Life do not have a framerate internally, as motions are interpolated between timestamped keyframes on each joint, meaning the framerate is arbitrary.}} | |||
{{KBwarning|This page contains a lot of incorrect information; and should not be used for definitive reference. A lot of misinformation has been removed, however some may remain.}} | |||
Theoretically, BVH animations for use in Second Life can have a frame rate between 1 and 1092 FPS (frames per second). Internally, the time that a key frame is displayed is stored as a unsigned short (a 16-bit integer), which has 65536 unique values (including 0). Animations can be up to 60 seconds long. For each key frame to have a unique value for the time it's displayed:<br> | |||
FPS = 65536/60 | |||
The advantage of using a high frame rate is more detail can be recorded. While Second Life lossily compresses animations, the motions dropped are so subtle as to be imperceptible | It's important to understand that the FPS of a BVH animation only indicates how often the motion is sampled, not the number of images that will be shown when they are played. | ||
The advantage of using a low frame rate is smaller animation files, which transfer to viewers faster. You need not worry that the animation will appear choppy. The viewer will smoothly interpolate between the key frames on computers with a display FPS higher than the FPS of your animation. That said, 60 second animations at 45 FPS are smaller than most textures. | |||
The advantage of using a high frame rate is more detail can be recorded. While Second Life lossily compresses animations, the motions dropped are so subtle as to be imperceptible. | |||
The following is a table of frame rates with desirable qualities. | The following is a table of frame rates with desirable qualities. | ||
Line 13: | Line 19: | ||
{|{{prettytable}} | {|{{prettytable}} | ||
|-{{Hl2}} | |-{{Hl2}} | ||
!Frame Rate | ! Frame Rate | ||
!Factors | ! Factors | ||
!Factor Of | ! Factor Of | ||
|- | |||
| 5 | |||
| prime | |||
| 5 10 45 60 360 | |||
|- | |||
| 6 | |||
| 2 3 | |||
| 60 360 | |||
|- | |||
| 8 | |||
| 2 4 | |||
| 360 | |||
|- | |||
| 9 | |||
| 3 | |||
| 45 360 | |||
|- | |||
| 10 | |||
| 2 5 | |||
| 10 60 360 | |||
|- | |||
| 12 | |||
| 2 3 4 6 | |||
| 60 360 | |||
|- | |||
| 15 | |||
| 3 5 | |||
| 45 60 360 | |||
|- | |||
| 18 | |||
| 2 3 6 9 | |||
| 360 | |||
|- | |- | ||
| | | 20 | ||
|2 | | 2 4 5 10 | ||
|60 | | 60 360 | ||
|- | |- | ||
| | | 24 | ||
|3 | | 2 3 4 6 8 12 | ||
| | | 360 | ||
|- | |- | ||
| | | 30 | ||
|2 | | 2 3 5 6 10 15 | ||
|60 | | 60 360 | ||
|- | |- | ||
| | | 36 | ||
|2 3 | | 2 3 4 6 9 12 18 | ||
| | | 360 | ||
|- | |- | ||
|45 | | 40 | ||
|3 5 9 15 | | 2 4 5 8 10 20 | ||
|45 | | 360 | ||
|- | |||
| 45 | |||
| 3 5 9 15 | |||
| 45 360 | |||
|} | |} | ||
A frame rate with many factors is desirable. It is also desirable that the frame rate be a factor of numbers you often need to divide. | A frame rate with many factors is desirable. It is also desirable that the frame rate be a factor of numbers you often need to divide. | ||
Numbers Second Life animators might want to divide: | |||
* 5 - pelvis offset limit in meters | |||
* 10 - pelvis offset axis length in meters | |||
* 60 - animation length limit in seconds; seconds in a minute; minutes in a hour | |||
* 360 - degrees in a circle | |||
This makes it easy to place key frames such that the time and space is evenly divided, which is something animators often need to do. | |||
You might find it easiest to place your key frames at 15 FPS. | |||
[[Category:LSL_Animation]] | [[Category:LSL_Animation]] |
Latest revision as of 07:32, 12 February 2023
Help Portal: |
Avatar | Bug Fixes | Communication | Community | Glossary | Land & Sim | Multimedia | Navigation | Object | Video Tutorials | Viewer | Wiki | Misc |
Note: Animations in Second Life do not have a framerate internally, as motions are interpolated between timestamped keyframes on each joint, meaning the framerate is arbitrary. |
Warning: This page contains a lot of incorrect information; and should not be used for definitive reference. A lot of misinformation has been removed, however some may remain. |
Theoretically, BVH animations for use in Second Life can have a frame rate between 1 and 1092 FPS (frames per second). Internally, the time that a key frame is displayed is stored as a unsigned short (a 16-bit integer), which has 65536 unique values (including 0). Animations can be up to 60 seconds long. For each key frame to have a unique value for the time it's displayed:
FPS = 65536/60
It's important to understand that the FPS of a BVH animation only indicates how often the motion is sampled, not the number of images that will be shown when they are played.
The advantage of using a low frame rate is smaller animation files, which transfer to viewers faster. You need not worry that the animation will appear choppy. The viewer will smoothly interpolate between the key frames on computers with a display FPS higher than the FPS of your animation. That said, 60 second animations at 45 FPS are smaller than most textures.
The advantage of using a high frame rate is more detail can be recorded. While Second Life lossily compresses animations, the motions dropped are so subtle as to be imperceptible.
The following is a table of frame rates with desirable qualities.
Frame Rate | Factors | Factor Of |
---|---|---|
5 | prime | 5 10 45 60 360 |
6 | 2 3 | 60 360 |
8 | 2 4 | 360 |
9 | 3 | 45 360 |
10 | 2 5 | 10 60 360 |
12 | 2 3 4 6 | 60 360 |
15 | 3 5 | 45 60 360 |
18 | 2 3 6 9 | 360 |
20 | 2 4 5 10 | 60 360 |
24 | 2 3 4 6 8 12 | 360 |
30 | 2 3 5 6 10 15 | 60 360 |
36 | 2 3 4 6 9 12 18 | 360 |
40 | 2 4 5 8 10 20 | 360 |
45 | 3 5 9 15 | 45 360 |
A frame rate with many factors is desirable. It is also desirable that the frame rate be a factor of numbers you often need to divide.
Numbers Second Life animators might want to divide:
- 5 - pelvis offset limit in meters
- 10 - pelvis offset axis length in meters
- 60 - animation length limit in seconds; seconds in a minute; minutes in a hour
- 360 - degrees in a circle
This makes it easy to place key frames such that the time and space is evenly divided, which is something animators often need to do.
You might find it easiest to place your key frames at 15 FPS.