Hello,
I reported a litlle problem earlier but it seem nobody understand my explanation so i will try to explain it again.
The problem can be more understandable if i try to do the following action (that is for explaination purpose only, not a real case!)
Code: Select all
+----------+
| param 1 |
+----------+
|
+----------+ +--------------+ +-----+
| anim 1 |------- 0 | select node |----------| out |
+----------+ +--------------+ +-----+
1 - I set a graph with a single
not loopable animation and a blend node in order to have a parameter for my explanation.
2 - i want to simulate a loopable animation by setting the param 1 to zero at the frame the animation ends (so the animation should restart).
The first time the parameter is set the amination is engaged
The animation is running...
The animation reach its end ... here i set the param1 again to restart it.
But nothing happens, the animation stay on the last animation pose because the animation tree saw no changes.
When a not looped animation has reached its end, it should be 'restartable'.
This case often occurs at low framerate and is really annoying because it 'freeze' the mesh on it's last frame.
I 'patched' the problem by setting the 'not looped' animations as 'looped' but this is not a solution because this adds artefacts at the animation's end.
A solution could be to timestamped the property modifications and propagate the following info along the tree : 'all not looped animations that reach its end this frame must be restarted because a property, in the branch you belong to, has been modified this frame'.
Does anyone see what i mean?