多少顶点缓冲区太多了?
Posted
技术标签:
【中文标题】多少顶点缓冲区太多了?【英文标题】:How many vertex buffers is too many? 【发布时间】:2011-07-29 21:18:01 【问题描述】:D3D11 等较新的 API 强制使用顶点缓冲区。
您可以使用static (contents don't change) or dynamic vertex buffers (contents can be updated and changed by CPU)。
我的问题是,你怎么知道你正在接近极限? 每个模型都应该有自己的顶点缓冲区吗?您是否应该只有 8 个顶点缓冲区之类的东西并在所有模型之间共享它们,并根据需要进行更新?
【问题讨论】:
【参考方案1】:你不应该为每个对象都有一个新的顶点缓冲区,不。但是你需要为每个纹理一个新的顶点缓冲区。你会想尽可能多地填满它们。 8个也不算多!
【讨论】:
你的意思是当你改变纹理时你需要一个新的顶点缓冲?【参考方案2】:您不需要为每个纹理使用不同的 vb。您可以使用偏移到缓冲区的附加参数绘制子集,并从该缓冲区绘制给定数量的顶点。在对 drawindexedprimitive 的任何后续调用之间设置纹理。
【讨论】:
以上是关于多少顶点缓冲区太多了?的主要内容,如果未能解决你的问题,请参考以下文章