【#yyds干货盘点#three.js中相机的lookAt和control的target区别】胸怀万里世界, 放眼无限未来。这篇文章主要讲述#yyds干货盘点#three.js中相机的lookAt和control的target区别相关的知识,希望能为你提供帮助。
1.改变相机的lookAt,效果如下:
文章图片
会发现:
- 场景是没移动的
- 改变的是相机的lookAt值
核心代码
// 添加相机辅助对象,用来查看相机的变化情况 const cameraHelper = new THREE.CameraHelper(camera) scene.add(cameraHelper) // 创建一个点 let pos= new THREE.Vector3(0, 0, 0) let index = 0 function render() { controls.update() TWEEN.update() renderer.render(scene, camera) if (isEnabled) { pos.x += 0.5 camera.lookAt(pos) } } animate()
2.改变OrbitControls控制器的target的值,效果如下:
文章图片
会发现
- 相机是没有变化的
- 整个3D场景在朝着反方向移动,所以我们可以得出,其实OrbitControls控制的是场景的变化
核心代码
let pos= new THREE.Vector3(0, 0, 0) let index = 0 function render() { controls.update() TWEEN.update() renderer.render(scene, camera) if (isEnabled) { pos.x += 0.5 controls.target.copy(pos) } } animate()
## 3.总结
1. 相机的lookAt的使用
2. 明白OrbitControls控制到底控制的是什么, 控制的的是整个场景对象
推荐阅读
- Flutter 专题28 易忽略的小而巧的技术点汇总#yyds干货盘点#
- #yyds干货盘点# ElasticSearch第二弹之分片原理
- 有没有好奇过路由器宽带拨号的mtu值为什么是1492呢(了解MTU与IP分片)
- #yyds干货盘点#Flutter中如何添加垂直分隔线flutter专题35
- #yyds干货盘点#Spring认证中国教育管理中心-Spring Data R2DBC框架教程六
- 配置IPv6地址跳变——网络测试仪实操
- 通俗易懂,一篇文章带你认识Kafka
- #yyds干货盘点#看动画学算法之:二叉搜索树BST
- #yyds干货盘点# 自写dede/织梦的function方法,来满足调用问题