我一直在做一个简单的3D刚体模拟器,而且我需要处理对象之间的碰撞。到目前为止,使用新的DirectXMath和DirectXTK的SimpleMath一直是一个巨大的帮助。
我一直在使用DirectXCollision库中的BoundingBox和BoundingOrientedBox类,它们非常适合确定两个对象是否相交,但除此之外不再提供任何其他信息。我需要能够检索接触点和交点法线,以便正确计算刚体反应。
我的问题是 - 有没有办法使用DirectX库检索该信息,还是应该学习它并实现我自己的方法?
答案 0 :(得分:1)
是和否。
使用DirectX数学库,您可以获得非常原始形状与非常原始形状交叉的交叉细节,例如plane-line,plane-plane,三角平面。但是你只有关于更复杂的交叉点的基本(“真,假”或“-1,0,1”)信息,如光线盒,盒子等等。
所以,解决方案:
希望它有所帮助。 快乐的编码! ;)