When blending between animation clips using the AnimationAction’s fadeIn, crossFadeTo, etc I noticed that Three.js blends linearly. In many cases this is unnoticeable - like in the skinning example the duration adjustment of the clips and the start frame synchronization covers most of the visual artifacts. Brilliant!
Let’s say we have two looping clips and for some reason they are not on the “same place” world position terms. For example a UFO ship is having a loop at one place of the scene and an other loop further away. The distance between the clips/loops will cause a lot more visible effect of linear blending.
I used this code to blend between the two loops:
currentAction.crossFadeTo(toAction, duration, true).play();
It blends the clips nicely except I see the above mentioned linear transition between the two. I also set the warpBoolean parameter to true but it did not help.
So, Is there a way to have a smooth fade/crossFade?
I’m NOT trying to solve the “smooth blend between positions” issue … Tween, etc. My example is just very similar.