three.js - 相机变化真的很奇怪

three.js - really strange behaviour with camera changes

我开发了一个简单的 three.js 应用程序,它呈现一个立方体,并且有几个按钮来设置固定的相机位置。我在这里有我的代码演示:https://jsfiddle.net/ph0ropg7/9/

在我的应用程序中,我渲染了一个立方体,我可以切换到顶视图(使用 TOP VIEW 按钮),我可以使用全部显示 按钮。但是,我注意到了三件奇怪的事情:

我是 three.js 的新手,我不明白为什么会发生这三件事。任何面对这些问题的帮助或建议将不胜感激,谢谢。

我查看了 OrthographicTrackballControls source 并注意到它在执行重置时使用相机 lookAt 方法。 lookAt 方法会将相机与其 up 向量对齐。因此,您需要做的是在 ShowAll 和 ShowTop 函数中删除对 camera.lookAt(look_at_position); 的调用,并在 _reset_controls_after_camera_movement 方法中添加 controls.up0.copy(camera.up); 。该控件现在将具有正确的向上矢量并可以为您执行观察。

这里是 modified fiddle