我玩了一些例子,看起来很棒。
但是我注意到Bullet使用自己的矢量结构和数学实用程序。我正在将DirectXMath用于DirectX应用程序的其余部分。所以这意味着我有两套数学函数。
我相信DirectXMath更有效率,但Bullet是130,000行,所以在开始重构之前我必须确定。
答案 0 :(得分:3)
几乎没有必要重构。
这听起来是一项令人生畏的任务,特别考虑到过程中可能引入的错误数量(并且子弹数学也非常快,具有通过调用d3d函数进行内联的优势)。
只需使用bullet数据类型进行模拟,并在需要时将它们转换为d3d math数据类型(因为它们具有相同的内存布局,指针转换将完成工作并且几乎没有成本,只需要几个c ++转换操作符这个过程几乎是透明的)