首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有三个js的FBX动画不能正常运行

有三个js的FBX动画不能正常运行
EN

Stack Overflow用户
提问于 2017-08-22 07:43:32
回答 1查看 1.5K关注 0票数 2

我对一些fbx模型的动画有一个问题。如果我有一个持续20秒的动画,模型将保持19秒不变,然后所有的更改都会在最后一秒钟左右发生。在其他fbx模型上,动画运行正常。用于运行动画的代码如下: loader.load回调是:

代码语言:javascript
复制
var clock = new THREE.Clock();
var mixers = [];

function(object){
        object.position.set(0,0,0);
        object.mixer = new THREE.AnimationMixer(object);
        mixers.push(object.mixer);
        console.log(object);
        for (var a = 0; a < object.animations.length; a++){
            var action = object.mixer.clipAction(object.animations[a]);
            action.play();
            console.log(action);
        }



        scene.add(object);
        animate();
    }

动画代码是:

代码语言:javascript
复制
function animate() {
    requestAnimationFrame(animate);
    for(var i = 0; i < mixers.length; i++){
        mixers[i].update(clock.getDelta());
    }
    render();
    stats.update();
}

function render() {
    if (mixer) {
        mixer.update(clock.getDelta());
    }
    renderer.render(scene, camera);
}

有什么想法吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2017-11-12 20:22:09

根据经验,我可以告诉你,fbx ascii出口过程(至少对Autodesk Maya来说)并不总是提供

  1. 正确的开始和结束时间设置为玛雅或
  2. 给出一组不正确导入的数字。

你最终得到的是--正如你所描述的--在动画片中很多时候什么都没发生。据我所见,它通常是落后在最后,但它肯定也可能是在开始。

您可以手动修复fbx文件,但是添加一个函数来设置第一个框架的开始时间(如果第一个帧是问题,从第二个框架开始)可能会更容易。

我有这方面的代码,让我找到它,然后我会把它加到这个答案中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45811713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档