1

我玩过一些例子,它们看起来真的很好。

但是我注意到 Bullet 使用它自己的向量结构和数学实用程序。我将 DirectXMath 用于 DirectX 应用程序的其余部分。所以这意味着我有两组数学函数。

我相信 DirectXMath 的效率更高,但 Bullet 有 130,000 行长,所以在开始重构之前我必须确定。

4

1 回答 1

3

几乎不需要重构。

这听起来是一项艰巨的任务,特别是考虑到过程中可能引入的错误数量(并且子弹数学也非常快,其优势在于内联而不是调用 d3d 函数)。

只需使用子弹数据类型进行模拟,并在需要时将它们转换为 d3d 数学数据类型(因为它们具有相同的内存布局,指针转换将完成这项工作并且成本几乎为零,使用一些 c++ 转换运算符它也将使该过程几乎透明的)

于 2012-11-13T07:13:12.917 回答