2

我有一个关于动态顶点和索引缓冲区的问题。我可以完全改变他们的拓扑吗?例如,在一帧中有一组顶点,将它们丢弃并重新创建具有自己属性的顶点,并且计数不等于先前的顶点计数。我也想知道关于索引缓冲区的信息,我可以更改动态索引缓冲区中的索引数量吗?

到目前为止,在我的应用程序中,我在尝试更新更大尺寸的索引缓冲区时收到警告:D3D11 警告:ID3D11DeviceContext::DrawIndexed:索引缓冲区没有足够的空间![执行警告#359:DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL]

4

1 回答 1

2

创建后无法更改缓冲区的大小。

动态缓冲区允许您更新数据。只要不超过缓冲区的大小,您就可以向其写入新数据。

但是缓冲区不关心数据布局。一个大小为 200 字节的缓冲区可以容纳 100 个 short 或 50 个 float 或混合数据;任何小于或等于 200 字节的内容。

于 2013-02-16T12:53:48.020 回答