three.js在平面上旋转相机

奥斯塔皮安

我的应用中有一个摄像头:

camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 );
camera.position.z = 1;
camera.position.y = -5;
camera.rotateOnAxis(new THREE.Vector3(1, 0, 0), degInRad(90));
camera.up = new THREE.Vector3(0, 0, 1);  

这些render功能代码必须在我按下按键时旋转相机:

if (leftPressed) {
    camera.rotateOnAxis((new THREE.Vector3(0, 1, 0)).normalize(), degInRad(1));
} else if (rightPressed) {
    camera.rotateOnAxis((new THREE.Vector3(0, 1, 0)).normalize(), degInRad(-1));
}
if (upPressed) {
    camera.rotateOnAxis((new THREE.Vector3(1, 0, 0)).normalize(), degInRad(1));
} else if (downPressed) {
    camera.rotateOnAxis((new THREE.Vector3(1, 0, 0)).normalize(), degInRad(-1));
}  

相机旋转,但不是我需要的方式。我希望相机像飞机上的FPS(第一人称射击)一样旋转。见图片明白我想要什么......
我试着用sin(1)cos(1),但无法理解rotateOnAxis的作品,引起translate功能于她所看到的工作就像一个魅力和移动相机的方向。
PS
这是一个文档three.js也许有帮助。
为了处理键盘事件,我使用KeyboardJS
,这是一个degInRad函数:

function degInRad(deg) {
    return deg * Math.PI / 180;
}  

JSFiddle链接

相机旋转

O-相机的位置
O-O1-当前的相机方向
R1-当前的旋转方向
R-我想要的方向
对不起,想要获得好的照片。

冰淇淋你

通过设置,您可能会得到想要的东西 camera.rotation.order = 'YXZ';

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Three.js在本地轴上旋转相机X

来自分类Dev

在球体上旋转玩家相机(javascript/three.js)

来自分类Dev

使用具有特定功能的three.js在表面上旋转多维数据集

来自分类Dev

Three.js相机旋转错误

来自分类Dev

Three.js-相机旋转和TransformControls

来自分类Dev

当对象旋转时Three.js旋转相机

来自分类Dev

如何使用THREE.js在平面上绘制SVG元素?

来自分类Dev

在平面上纹理化(WebGL,Three.JS)

来自分类Dev

如何使用three.js在平面上包裹飞机?

来自分类Dev

Three.js将相机旋转到特定位置

来自分类Dev

旋转相机后,Three.js Skybox似乎坏了

来自分类Dev

Three.JS通过移动设备围绕对象旋转相机

来自分类Dev

Three.js旋转相机以外的所有物体

来自分类Dev

旋转相机后,Three.js Skybox似乎坏了

来自分类Dev

在three.js中旋转相机无法正常工作

来自分类Dev

在按钮上旋转 3D 对象单击 Three.js

来自分类Dev

Three.js旋转

来自分类Dev

three.js-如何围绕lookAt(object)和相机位置之间的线旋转相机

来自分类Dev

如何在对象上旋转THREE.PerspectiveCamera

来自分类Dev

Three.js相机的理解

来自分类Dev

Three.js:我不能改变相机的远近平面图。为什么?

来自分类Dev

适合在THREE.js中在平面上缩放贴图纹理

来自分类Dev

如何在three.js中修复圆角平面上的纹理

来自分类Dev

尝试将具有透明度的图像放置在平面上(three.js)

来自分类Dev

使用slerp旋转时补间相机位置-THREE.js

来自分类Dev

在Three.js中使用轨道控制旋转相机时发生奇怪的晃动

来自分类Dev

Three.js立方体相对于相机的面部旋转矢量

来自分类Dev

Three.js:同时通过触摸和设备方向旋转相机

来自分类Dev

Three.js-当摄像机旋转90度角时,为什么在x轴和z轴上旋转具有相同的效果?

Related 相关文章

  1. 1

    使用Three.js在本地轴上旋转相机X

  2. 2

    在球体上旋转玩家相机(javascript/three.js)

  3. 3

    使用具有特定功能的three.js在表面上旋转多维数据集

  4. 4

    Three.js相机旋转错误

  5. 5

    Three.js-相机旋转和TransformControls

  6. 6

    当对象旋转时Three.js旋转相机

  7. 7

    如何使用THREE.js在平面上绘制SVG元素?

  8. 8

    在平面上纹理化(WebGL,Three.JS)

  9. 9

    如何使用three.js在平面上包裹飞机?

  10. 10

    Three.js将相机旋转到特定位置

  11. 11

    旋转相机后,Three.js Skybox似乎坏了

  12. 12

    Three.JS通过移动设备围绕对象旋转相机

  13. 13

    Three.js旋转相机以外的所有物体

  14. 14

    旋转相机后,Three.js Skybox似乎坏了

  15. 15

    在three.js中旋转相机无法正常工作

  16. 16

    在按钮上旋转 3D 对象单击 Three.js

  17. 17

    Three.js旋转

  18. 18

    three.js-如何围绕lookAt(object)和相机位置之间的线旋转相机

  19. 19

    如何在对象上旋转THREE.PerspectiveCamera

  20. 20

    Three.js相机的理解

  21. 21

    Three.js:我不能改变相机的远近平面图。为什么?

  22. 22

    适合在THREE.js中在平面上缩放贴图纹理

  23. 23

    如何在three.js中修复圆角平面上的纹理

  24. 24

    尝试将具有透明度的图像放置在平面上(three.js)

  25. 25

    使用slerp旋转时补间相机位置-THREE.js

  26. 26

    在Three.js中使用轨道控制旋转相机时发生奇怪的晃动

  27. 27

    Three.js立方体相对于相机的面部旋转矢量

  28. 28

    Three.js:同时通过触摸和设备方向旋转相机

  29. 29

    Three.js-当摄像机旋转90度角时,为什么在x轴和z轴上旋转具有相同的效果?

热门标签

归档