我必须编写自己的物理代码(如果你很好奇,请参阅here)。模拟单个刚体非常简单。但是我们有组件(模拟空间集落),它由多个刚体组成,通过旋转轴承连接。
旋转轴承应将两个部件牢固地保持在恒定的相对位置和旋转轴,并允许它们仅通过绕该轴旋转来改变。
每个部分的主要机制是角动量守恒。这有时会导致轴发生相当大的变化(例如,请参阅here again)。但是如果一端或另一端附着到另一个物体上,那么该物体将被拖拽或取消轴的变化(或两者的某种组合 - 取决于它们的相对质量)。由于另一个物体也可能具有保持角动量的事实,这一切都变得更加复杂。
我有游戏开发人员的物理学,但它不包括关节。我搜索了互联网,但我能找到的所有关于在各种现成的物理引擎中使用关节的文章。任何人都可以提供有关如何模拟这种轴承/接头的建议吗?
答案 0 :(得分:0)
简化计算的一个标准技巧是将关节模拟为一个相当僵硬的弹簧,其中休息长度=关节长度。这允许瞬间的异步传播,同时保持场景和物理引擎的构造分离。
尤其是讨论扩展对象碰撞的后半部分。这个想法也适用于与Verlet不同的碰撞和集成方案的力量。