【发布时间】:2017-04-11 09:29:13
【问题描述】:
我有一个没有动画循环的静态场景,我正在尝试使用 TrackballControls 的更改事件来触发渲染函数,遵循thread 中的模式,即:
var controls = new THREE.TrackballControls( camera, renderer.domElement );
controls.addEventListener( 'change', render );
function render() {
renderer.render( scene, camera );
}
这适用于 OrbitControls,但是当我替换 TrackballControls 时不会触发更改事件。但是,如果我添加以下行:
_this.update();
在 TrackballControls.js 中的 mousewheel()、mousemove() 和 touchmove() 函数结束时,我可以正确触发更改事件(在我的情况下,无论如何)。我不确定这是否是触发更改事件的最佳方式。对于这种情况,分叉 TrackballControls 的本地副本是最佳解决方案吗?我是否忽略了某些内容,或者更改 TrackballControls.js 是否有意义?
【问题讨论】:
标签: three.js