我在three.js中有一个第三人称RPG风格的环境。我使用的是orbitControls。控制很好地针对玩家obj,无论她在世界上的哪个地方,我都可以围绕她旋转。
我还没有解决的问题是在移动时保持固定的缩放距离,这小于maxDist值的设置值。到目前为止,我唯一能做到的方法是使最小/最大值相同。当我设置一个大的maxDistance值(比如5000(时,只要我开始移动玩家,她就会离开凸轮,直到达到maxDist。
我希望能够在玩家移动时设置一个次要或临时的maxDist值,比如500,但如果需要,仍然允许缩小到maxDist(5000(。有人做过类似的事情或有建议吗?
提前谢谢。
在调用controls.update((之前,您可以设置渲染循环中每帧的.maxDistance。制作一个轨道控件副本并对其进行修改以满足您的需要。