I have observer the same behaviour,
In the glTf is LINEAR, however the easing on the end of the animation is very evident
(To notice simply change the texture to something more noticeable like a sequence of numbers)
{
"channels": [
{
"sampler": 0,
"target": {
"node": 12,
"path": "scale"
}
}
],
"extensions": {
"ASOBO_property_animation": {
"channels": [
{
"sampler": 1,
"target": "materials/0/extensions/ASOBO_material_UV_options/UVOffsetV"
}
]
}
},
"name": "C_Tire_rolling",
"samplers": [
{
"input": 73,
"interpolation": "LINEAR",
"output": 74
},
{
"input": 75,
"interpolation": "LINEAR",
"output": 76
}
]
},
they are showing as linear in the GLTF, but it for sure isn’t in the game. It’s also linear in blender, what export setting did you use?
In the Blender action, I use 360 frames as a reminder that this is like a rotation. I have intermediate frames at 120 and 240.
The export animation setting has mode “Action” and “Use Current Frame” is on, everything else is off. No sampling, no optimization. I find that the GLTF indeed has stored only 4 frames of animation.
The XML animation is:
<UseTemplate Name="ASOBO_GT_Anim">
<ANIM_NAME>Tires_Tundra_L_UV</ANIM_NAME>
<ANIM_CODE>(A:WHEEL ROTATION ANGLE:1, degrees) dnor</ANIM_CODE>
<ANIM_LENGTH>360</ANIM_LENGTH>
<ANIM_WRAP>True</ANIM_WRAP>
<ANIM_LAG>0</ANIM_LAG>
</UseTemplate>
In the sim it loops perfectly. The UV rotation and the wheel’s object rotation both move in sync except for very slight mismatch every once and a while.