【发布时间】:2011-03-21 14:23:17
【问题描述】:
我正在使用 XNA 构建一个封装以任意方式定义的自定义几何图形的类。我想要这个几何动作,现在,最好的方法是什么? 使用 Vector3.Translate 方法将所有坐标顶点与平移矩阵相乘是否足够?还是将几何体分配给效果(例如 BasicEffect)然后操作世界矩阵更有效?
谢谢!
【问题讨论】:
标签: c# optimization 3d xna
我正在使用 XNA 构建一个封装以任意方式定义的自定义几何图形的类。我想要这个几何动作,现在,最好的方法是什么? 使用 Vector3.Translate 方法将所有坐标顶点与平移矩阵相乘是否足够?还是将几何体分配给效果(例如 BasicEffect)然后操作世界矩阵更有效?
谢谢!
【问题讨论】:
标签: c# optimization 3d xna
我现在对 xna 并没有那么深入,但一般来说,谈到 3D 编程,您应该转换世界矩阵以“移动”对象的原点。这将比将所有顶点更新到它们的新坐标要快得多(因为计算可以卸载到显卡上,所以要快得多)。您永远不应该仅仅为了移动东西而修改/更新几何数据。这对于复杂的动画可能没问题,但(在我看来)不适用于单个翻译。
【讨论】: