threejs第十一用 wsad移动camera

找到camera面向的方向,normalize 乘1个移动速度 就是这一次移动的距离了

function onDocumentKeyDown(event)
      {      
      var moveSpeed=10;//速度
        if(event.keyCode==87){
        var vector = new THREE.Vector3(0, 0,1.0).unproject(camera);//屏幕正中间对应的z==1的点
        var tempStep=vector.sub(camera.position).normalize();//得到方向
        var step=new THREE.Vector3(tempStep.x,tempStep.y,tempStep.z);
        camera.position.x+=step.x*moveSpeed;
        camera.position.y+=step.y*moveSpeed;
        camera.position.z+=step.z*moveSpeed;}}

                                   

猜你喜欢

转载自blog.csdn.net/qq_35158695/article/details/81287121