2012-09-03 31 views

回答

3

我們在談論數組或結構陣列的結構及其效率。在大多數情況下,Array of Structures效率更高,因爲它可以更好地利用處理器緩存,但是這假定您將訪問存儲器中的數據。

但是,如果某些數據刷新速度不同於另一個數據庫,那麼將它們放在不同的緩衝區中會有好處,這樣您就只能更新需要更新的數據。

+0

感謝您的所有答案! – XaitormanX

5

使用多個緩衝區的優點是,您可以輕鬆禁用某個特殊渲染(深度 - 例如,不需要法線或紋理座標)。

但是,將所有交叉存儲在單個數組中的屬性存儲在渲染時會提供更好的緩存局部性。

2

根據OpenGL wiki

如果使用單獨的維也納組織你不會失去太多的表現。這將是大約5%的 ,但您的測試可能會顯示其他情況。

我不知道這個聲明是否僅用於動態數據,但在我的引擎中我使用了單獨的VBO。

相關問題