0

我提交了一个实际上是一堆问题的问题,所以我按照要求将它们分成了自己的单独问题。

我已经阅读并使用了动态顶点缓冲区,并在运行时对其进行了操作等。但是,有人告诉我,将动态顶点缓冲区保持在绝对最小值,因为它们比静态缓冲区更容易降低性能。我还读到过,与其不断锁定和解锁以仅写入几个多边形,不如使用动态缓冲区允许您将大量顶点集中到一个缓冲区中并一次性发送它们,这显然可以提高性能。我可能希望能够不断地操纵场景中的大多数对象(不仅仅是通过旋转或缩放,而是通过单个顶点位置等),所以有什么方法可以让你拥有一个动态缓冲区必须更新或更改时必须更新,否则不必每帧都重写?

4

1 回答 1

1

动态缓冲区不需要每帧都重写,它只是比 GPU 更容易被 CPU 访问,以便于更新。对于不太频繁的更新,您可以使用 GPU 更容易访问的 static 以加快渲染速度,然后使用 UpdateSubResource 根据需要仅编辑一系列顶点。

于 2012-04-17T14:49:45.067 回答