THREE.js (r70) 为什么必须创建 OrbitControls 对象?
THREE.js (r70) Why must an OrbitControls object be created?
一个非常简单的THREE.js脚本。
运行在这个 JSFiddle 没问题。
但是如果下面一行代码:
controls = new THREE.OrbitControls(camera, renderer.domElement);
被注释掉,JSFiddle 被重新 运行 然后没有图形显示。我使用 Chrome 调试器 运行 来自本地主机 html 文件的等效代码,但它没有显示任何警告或异常。 Firefox 中的行为相同。所有 运行 都是在 Windows 7 笔记本电脑上完成的。
那么为什么 THREE.js 在这个例子中似乎需要一个 OrbitControls 对象?
(我并不特别需要应用程序中的 OrbitControl 功能)。
问题不在于 controls
,而在于相机。 .lookAt()
采用矢量,因此您需要将其称为 camera.lookAt(new THREE.Vector3(0,0,0));
。否则您会使相机实例无效。如果您在 fiddle 中注释掉 controls
和 camera.lookAt()
,它会起作用。
一个非常简单的THREE.js脚本。 运行在这个 JSFiddle 没问题。
但是如果下面一行代码:
controls = new THREE.OrbitControls(camera, renderer.domElement);
被注释掉,JSFiddle 被重新 运行 然后没有图形显示。我使用 Chrome 调试器 运行 来自本地主机 html 文件的等效代码,但它没有显示任何警告或异常。 Firefox 中的行为相同。所有 运行 都是在 Windows 7 笔记本电脑上完成的。
那么为什么 THREE.js 在这个例子中似乎需要一个 OrbitControls 对象?
(我并不特别需要应用程序中的 OrbitControl 功能)。
问题不在于 controls
,而在于相机。 .lookAt()
采用矢量,因此您需要将其称为 camera.lookAt(new THREE.Vector3(0,0,0));
。否则您会使相机实例无效。如果您在 fiddle 中注释掉 controls
和 camera.lookAt()
,它会起作用。