你好,我目前正在开发一款太空模拟游戏并遇到了问题,处理行星的运动时遇到了困难。
我使用简单的方法来模拟行星/卫星的轨道:将距离你最靠近的物体 froze,绕其进行旋转。这种方式工作得非常好,并不用计算任何运动相关信息。此外,在 Kerbal Space Program 中,也是使用这种方式。然而,我遇到的问题在于:行星以其轴线旋转:
实际火箭(同样地,在 KSP 中的火箭)在发射方向的旋转而获得的免费“加速”,自行体验到大地的推力。这可以通过与行星自身的转速匹配实现,以“悬停”在某个地点的表面。这只会在行星在旋转时有效。然而,我无法思考出一个可以模拟轨道转动的方式。
Kerbal Space Program 是如何实现的?他们会实际在世界空间中移动火箭,通过应用相同的线性速度来做到这一点么?我尝试了这种方法,但是遇到了一个大问题,即如何使玩家在着陆时保持与地面一致的旋转,而当处于空中时又能自由地飞行。着陆时-transition 总是表现出非常奇怪的物理行为。
那么,你是如何实现玩家旋转的运动?
评论 (0)