【问题标题】:How do I set the position a camera in three.js without it rotating?如何在不旋转的情况下在 three.js 中设置相机的位置?
【发布时间】:2016-07-11 16:17:06
【问题描述】:

我有一个使用 CSS3DObject 渲染工具使用 three.js 开发的界面。 我已将轨道设置为 0 以防止旋转并将我的移动限制为平移和缩放。

请注意,我也在使用 Orbit Control。

我使用以下代码将相机的位置设置为 x=-2000:

camera.position.x=-2000;
camera.position.z=4000;

当我这样做时,相机会移动位置,但仍指向 (0,0,0),从而导致外观倾斜。 所以我假设我需要给它一个向量

camera.up = new THREE.Vector3(0,1,0);  //keeps the camera horizontal
camera.lookAt(new THREE.Vector3(2000,0,0));  //should point the camera straight forward

请注意,我仍在努力寻找有关设置外观如何工作的良好解释。

【问题讨论】:

    标签: javascript three.js


    【解决方案1】:

    经过更多研究,轨道控制似乎覆盖了 camera.lookAt,因此没有做任何事情。 为了实现平移,我将相机 x 位置的位置设置为等于目标的值。 我还删除了 camera.up 行。

    var myCameraX = -2000;
    var myCameraY = 500;
    
    camera.position.x=myCameraX;
    camera.position.y=myCamerYa;
    control.target.set(myCameraX,myCameraY,0);
    

    希望对某人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-20
      • 2016-05-13
      • 1970-01-01
      • 2014-01-18
      • 2018-09-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多