Я хочу анимировать трехмерный объект (вентилятор вращается на 360 градусов вокруг одной оси в бесконечном режиме) с ключевыми кадрами. Я создал 3d модель и анимацию с помощью blender 2.78 и экспортировал ее с помощью gltf expoter.
Здесь вы можете проверить или загрузить файл .glb или .blend все ресурсы в репозитории github
Что не так:
между каждым концом анимационной модели некоторое время приостанавливается. Я действительно не знаю, в чем дело. Я делаю что-то не так в блендере или, может быть, в коде мне не хватает какого-либо свойства для установки.
1- Я также пытался загрузить модель .glb в glTF Viewer и этот «прыжок» также виден в конце анимации (если вы уменьшите анимацию воспроизведения, вы лучше увидите, что происходит).
2- Я также был пытаюсь установить различные комбинации кайфреймов вращения:
1 кадр: вращение вентиляторов 0 - | - 10 кадр: вращение вентиляторов 324 (я получаю странные прыжки)
1 кадр: вентилятор установить вращение 0 - | - 10 кадров: вращение вентилятора установить на 360 (здесь вентилятор некоторое время останавливается)
3- Я также пытался установить режим экстраполяции на линейный, но он делает ' Эффект t Экстраполяция изображения Blender
4- Экспорт настроек glft (Всегда проверяются примеры анимации) Настройки glft изображения
this часть кода, которую я использую для анимации
loader.load("animation.glb", gltf => {
this.mixer = new THREE.AnimationMixer(gltf.scene);
//this.mixer.timeScale = 0.6;
let action = this.mixer.clipAction(gltf.animations[0]);
action.play();
scene.add(gltf.scene);
)};
startAnimationLoop = () => {
this.delta = this.clock.getDelta();
if (this.mixer) this.mixer.update(this.delta);
//[...] rest o code
};
Я начинаю думать, что t отсутствует какое-то свойство интерполяции ...
Примечание
Я хочу сделать это с анимацией модели, не поворачивая меня sh, добавляя меня sh .rotation.x + = 1; в анимации l oop
РЕДАКТИРОВАТЬ РЕШЕНИЕ
OK Извините, я нашел это сам ... Это была ошибка на стороне анимации блендера. На самом деле я устанавливал вращение 0 на «первом» ключевом кадре, а не на «ноль», который генерировал паузу (не знал, что анимации в ключевых кадрах в blender начинают отсчитывать с 0 ...)