我有一个3d场景(我正在使用UrhoSharp),并且所有“活动”都以(0,0,0)为中心。
我希望用户能够移动相机并查看场景。
我当时想使用球形坐标,当用户按住鼠标左键时,我会沿球形表面平移相机。这是计算位置的简单数学。 然后,我将使用鼠标滚轮来调整半径(与中心的距离)。 这会导致摄影机可能倒置,因此在按住鼠标右键时,我可以旋转摄影机的向上矢量(我想我必须计算该点沿球体的切线)。
我尝试实现这一点,但是相机的移动不是很直观。
因此,我正在寻找有关最佳方法的建议(以及数学方法),以使用户能够使用鼠标自由移动相机。