Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Animation Three.js morphAnimMesh动画不';t更新_Animation_3d_Three.js_Render - Fatal编程技术网

Animation Three.js morphAnimMesh动画不';t更新

Animation Three.js morphAnimMesh动画不';t更新,animation,3d,three.js,render,Animation,3d,Three.js,Render,最近我花了一些时间研究了three.js。我在blender中创建了一个3d模型,然后将其导入three.js。一切正常,morphAnimMesh中的数据(如currentKeyframe和lastKeyframe)都在更新,但它只是不渲染动画,而是渲染静态3d对象。有人能帮我一下吗?谢谢 这是我作品的url: 我所有的代码都在这里: var scene = new THREE.Scene(); var camera = new THREE.PerspectiveCamera(75, wind

最近我花了一些时间研究了three.js。我在blender中创建了一个3d模型,然后将其导入three.js。一切正常,morphAnimMesh中的数据(如currentKeyframe和lastKeyframe)都在更新,但它只是不渲染动画,而是渲染静态3d对象。有人能帮我一下吗?谢谢

这是我作品的url:

我所有的代码都在这里:

var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);
var histLookVector = new THREE.Vector3(1,1,1);
var currentLookVector = new THREE.Vector3(1,1,1);
var xAxis = new THREE.Vector3(1,0,0);
var yAxis = new THREE.Vector3(0,1,1);
var renderer = new THREE.WebGLRenderer();
var mesh;
var time;
var oldTime;
var delta;
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);

camera.position.x = -20;
camera.position.y = 20;
camera.position.z = 20;
camera.lookAt(currentLookVector);
var x=0;
var loader = new THREE.JSONLoader();
loader.load( "nets.js", createGeometry  );
function createGeometry(model){
    var material = new THREE.MeshNormalMaterial({morphTargets:true});

    mesh = new THREE.MorphAnimMesh(model, material);
    mesh.scale.x = mesh.scale.y = mesh.scale.z = 4;
    mesh.position.x = 10;
    mesh.time = 0;
    mesh.duration = 2000;

    oldTime = time = new Date().getTime();
    scene.add(mesh);
    render();
}

function render() {
    requestAnimationFrame(render);
    time= new Date().getTime();
    delta= time-oldTime;
    oldTime=time;


    if(mesh){
        mesh.updateAnimation(delta);
        //console.log('current: ' + geometry.currentKeyframe);
    }

    renderer.render(scene, camera);
}