定位时限制orbitControls maxDistance,THREE.js

时间:2018-11-07 18:33:24

标签: javascript three.js controls

我在three.js中拥有第三人称RPG风格的环境。我正在使用orbitControls。这些控件很好地将玩家obj作为目标,无论她在世界上什么地方,我都可以绕着她旋转。

我要解决的问题是在移动时保持固定的缩放距离,该距离小于maxDist值设置的距离。到目前为止,我能够做到的唯一方法是使最小值/最大值相等。当我设置一个较大的maxDistance值(例如5000)时,一旦我开始移动播放器,她就会离开凸轮,直到碰到maxDist。

我希望能够在播放器移动时设置次要或临时的maxDist值(例如500),但如果需要,仍可以缩小到maxDist(5000)。有没有人做过类似的事情或有建议?

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以在渲染循环中的每个帧上设置.maxDistance,然后再调用controls.update(),可以制作轨道控件的副本并对其进行修改以满足您的需求。