ThreeJS – 摄像机绕X轴、绕Y轴、绕Z轴旋转指定角度
本文作者:StubbornHuang
版权声明:本文为站长原创文章,如果转载请注明原文链接!
原文标题:ThreeJS – 摄像机绕X轴、绕Y轴、绕Z轴旋转指定角度
原文链接:https://www.stubbornhuang.com/2361/
发布于:2022年09月21日 11:38:47
修改于:2022年09月21日 11:38:47

1 ThreeJS摄像机绕X轴、绕Y轴、绕Z轴旋转指定角度
在threejs中,如果我们想要摄像机绕某一个世界坐标轴旋转,比如绕Y轴旋转。我尝试过以下的方法
- camera.rotateY(radian)
- camera.rotateOnWorldAxis(new THREE.Vector3(0,1,0),radian);
这两个方法都是没有效果的。
其实要想摄像机绕轴旋转本质上是在改变摄像机的坐标,所以我们使用three.js的四元数,从头构造一个绕轴旋转的四元数然后对摄像机的坐标进行变换,这样就可以达到旋转摄像机的目的。
1.1 摄像机绕X轴旋转
var x_axis = new THREE.Vector3( 1, 0, 0 );
var quaternion = new THREE.Quaternion();
camera.position.applyQuaternion(quaternion.setFromAxisAngle(x_axis, radian));
1.2 摄像机绕Y轴旋转
var y_axis = new THREE.Vector3( 0, 1, 0 );
var quaternion = new THREE.Quaternion();
camera.position.applyQuaternion(quaternion.setFromAxisAngle(y_axis, radian));
1.3 摄像机绕Z轴旋转
var z_axis = new THREE.Vector3( 0, 0, 1 );
var quaternion = new THREE.Quaternion();
camera.position.applyQuaternion(quaternion.setFromAxisAngle(z_axis, radian));
参考链接
当前分类随机文章推荐
- ThreeJS - FBXLoader: TGA loader not found, creating placeholder texture for ... 阅读507次,点赞0次
- ThreeJS - 摄像机绕X轴、绕Y轴、绕Z轴旋转指定角度 阅读585次,点赞1次
- ThreeJS - 修复摄像机近距离模型或者摄像机在某些观察角度3D模型部分或者全部不可见的问题 阅读371次,点赞1次
- ThreeJS - 使用Hdr环境贴图作为间接光照对模型进行渲染 阅读1203次,点赞3次
- ThreeJS - 使用自定义Shader 阅读559次,点赞2次
- ThreeJS - 动态更换fbx模型的某个子Mesh现有的纹理贴图为指定的纹理贴图 阅读2561次,点赞1次
- ThreeJS - 设置透明背景模仿L2Dwidget.js看板娘渲染效果 阅读385次,点赞0次
- ThreeJS - three.moudle.js报Uncaught SyntaxError:Unexpected token ‘export‘错误 阅读1801次,点赞0次
- ThreeJS - 获取当前使用的three.js的版本 阅读362次,点赞0次
- ThreeJS - 直接设置Fbx模型的某个关节的位移和旋转值 阅读1656次,点赞0次
全站随机文章推荐
- 资源分享 - C++Primer Plus,第6版,中文版,带书签超清 PDF下载 阅读2023次,点赞0次
- Duilib - duilib应用程序实现文件可拖拽的功能 阅读2330次,点赞1次
- 资源分享 - Practical Linear Algebra - A Geometry Toolbox , Fourth Edition 英文高清PDF下载 阅读1090次,点赞0次
- 资源分享 - Video Game Optimization 英文高清PDF下载 阅读1244次,点赞0次
- 资源分享 - Fundamentals of Computer Graphics, Fifth Edition 英文高清PDF下载 阅读5171次,点赞0次
- 资源分享 - TCP/IP网络编程(韩 尹圣雨著 金国哲译)PDF下载 阅读5856次,点赞1次
- 资源分享 - 图解机器学习(日 杉山将著 许永伟译)PDF下载 阅读3679次,点赞0次
- WordPress - 文章自定义字段post_meta添加、更新、删除、获取操作 阅读1031次,点赞0次
- 资源分享 - Physics for Game Developers(Second Edition) 英文高清PDF下载 阅读1614次,点赞0次
- Pytorch – 使用torch.matmul()替换torch.einsum(‘nkctv,kvw->nctw’,(a,b))算子模式 阅读921次,点赞0次
评论
168