Пример ключевого кадра three.js с сглаживанием (кубическая интерполяция)

Я искал некоторую ясность в том, как реализовать сглаживание (или кубическую интерполяцию) для анимации Three.js KeyframeTrack. Из моего тестирования недостаточно разбора метода интерполяции в конструкторе KeyframeTrack.

var position = new THREE.VectorKeyframeTrack(
    '.position',
    [0, 1],
    [
        plane.position.x,
        plane.position.y,
        plane.position.z,
        1.25 * plane.position.x,
        1.25 * plane.position.y,
        1.25 * plane.position.z
    ],
    THREE.InterpolateSmooth
);
position.createInterpolant();

var clip = new THREE.AnimationClip('Action', 3, [
    position
]);

that.mixer = new THREE.AnimationMixer(plane);

var action = that.mixer.clipAction(clip);
action.setLoop(THREE.LoopOnce);
action.startAt(0);                // delay in seconds
action.clampWhenFinished = true;
action.play();

0 ответов

Другие вопросы по тегам