Jump to content

XML:TRAM: Difference between revisions

removing obsolete ITO notes
mNo edit summary
(removing obsolete ITO notes)
Line 93: Line 93:
|valign="top"| <FromState>
|valign="top"| <FromState>
|valign="top"| flag
|valign="top"| flag
| Look them up over [[XML:StNA#animation_states|HERE]].
| [[Image:chr_debug_characters_shows_interpolated_animations.jpg|thumb|400px|right|Primary <FromState> in <Lookup> uses about 8 interpolating frames by default. Use Shortcut's <FromState> to override this frame number.]]
 
Look them up over [[XML:StNA#animation_states|HERE]].
: When FromState is set to None some default behaviors are ignored and are replaced by Shortcuts.
: When FromState is set to None some default behaviors are ignored and are replaced by Shortcuts.
: Shortcuts extend the number of states from which an animation can be played and under what conditions (replacing this atomic yes/no).
: Shortcuts extend the number of states from which an animation can be played and under what conditions (replacing this atomic yes/no).
: If you set length to be more than 3 then postitions will be notable short because of interpolation.
:: You can set interpolation to such low values or 0 if you start your first moves rot/pos values with idle's last rot/pos values.
|-
|-
| <ToState>
| <ToState>
Line 142: Line 142:


[[Image:TRAM interpolation - standard case.jpg|thumb|400px|left|Scenario A: hardcoded interpolation 8 frames long; scenario B: changeable interpolation frame number]]
[[Image:TRAM interpolation - standard case.jpg|thumb|400px|left|Scenario A: hardcoded interpolation 8 frames long; scenario B: changeable interpolation frame number]]
|-
|-
| <Shortcut>
| <Shortcut>
Line 152: Line 151:
| Look them up over [[XML:StNA#animation_types|HERE]].
| Look them up over [[XML:StNA#animation_types|HERE]].
|-
|-
| <Length>
|valign="top"| <Length>
| int16
|valign="top"| int16
|
|Amount of interpolating frames. While interpolations with rotations are less noticeable, interpolations of different positions can cause an additional drift.
 
This was especially observed for transitions of idle to movements and vice versa, basically any combination of animations with different accelerations at start and end. By default, animations without specified Shortcut interpolation give about 8 frames of interpolation. For moves starting or ending in idle better don't use interpolation. Just let the start and end frames have same positions and rotation values as the idle. Interpolations should always be considered as ''last resort''.
|-
|-
|valign="top"| <ReplaceAtomic>
|valign="top"| <ReplaceAtomic>
Line 313: Line 314:
: COMcomb_p, (no pause) COMcomb_p_p
: COMcomb_p, (no pause) COMcomb_p_p
: COMcomb_p, (pause) COMcomb_k
: COMcomb_p, (pause) COMcomb_k
Combos seem to ignore <Interpolation><End>.
Combos ignore <Interpolation><End>.
|-
|-
| <Interpolation>
| <Interpolation>
Line 324: Line 325:
* interpolates first X frames of next animation
* interpolates first X frames of next animation
* if the first follow-up animation is too short, it can continue to play even further (not observed with vanilla)
* if the first follow-up animation is too short, it can continue to play even further (not observed with vanilla)
While interpolations with rotations are less noticeable, interpolations of different positions can cause an additional drift.
This was especially observed for transitions of idle to movements and vice versa, basically any combination of animations with different accelerationsat start and end. By default, animations without specified Shortcut interpolation give about 8 frames of interpolation. For moves starting or ending in idle better don't use interpolation. Just let the start and end frames have same positions and rotation values as the idle. Interpolations should always be considered as ''last resort''.
[[Image:TRAM interpolations - end interpolation bigger than next anim.jpg|thumb|400px|left|"end" interpolation covering multiple follow-up animations]]
[[Image:TRAM interpolations - end interpolation bigger than next anim.jpg|thumb|400px|left|"end" interpolation covering multiple follow-up animations]]
|-
|-
| <Max>
| <Max>
| int16
| int16
|
| unused
|-
|-
| <FinalRotation>
|valign="top"| <FinalRotation>
| float
|valign="top"| float
| Ending rotation in degrees. (During animation the camera is detached rotation-wise. If this value matches the body's final rotation it will prevent a 'glitchy' re-attaching.)
|valign="top"| Ending rotation in degrees. (During animation the camera is detached rotation-wise. If this value matches the body's final rotation it will prevent a 'glitchy' re-attaching.)
|-
|-
|valign="top"| <Direction>
|valign="top"| <Direction>
Line 862: Line 868:
==Speeding up existing animations==
==Speeding up existing animations==
s10k has created a XmlTools patch that allow the speedup of any existing TRAM (by removing frames). More information and download [http://mods.oni2.net/node/354 here.]
s10k has created a XmlTools patch that allow the speedup of any existing TRAM (by removing frames). More information and download [http://mods.oni2.net/node/354 here.]
==Interpolation drifting==
===Issue===
Needs update.
[[Image:chr_debug_characters_shows_interpolated_animations.jpg|thumb|200px|right|5th line: current interpolation frame/total interpolation frames, TRAM name, current frame/total frames]]
For unknown reasons some animations are unexpectedly interpolated.
So far this has been observed with transitions from '''<u>i</u>dle <u>t</u>o <u>o</u>ther''' animations (any attack or movement).
: chr_debug_characters = 1
: Use slowmotion cheat "carousel" or single step frame progression in developer mode for better visibility.
Normally, '''interpolations are encoded in TRAM''' files.
:Example in XML, KONCOMidle1:
        <Interpolation>
            <End>0</End>
            <Max>65535</Max>
        </Interpolation>
Despite the fact that idle interpolation is set to 0, ITO will always force an interpolation, most often it is '''8 frames''' long.
Example in character debug display, KONCOMidle1 to KONCOMpunch_fw transition:
0/8 KONCOMpunch_fw 0/37
When you let the character perform an animation via command line or scripting the transition will not happen which makes us think that ITO interpolations behavior is hardcoded.
chr_animate 0 KONCOMpunch_fw
KONCOMpunch_fw 0/37






{{XML}}
{{XML}}
8,013

edits