2012-12-25 137 views
1

我有一個可修改的地形存儲在頂點緩衝區中。由於頂點數量很多,我不希望每次修改地形時再次上傳所有頂點。我現在所做的是將地形分成更小的塊,這樣我只需重新創建包含地形修改的區域的緩衝區。在OpenGL中修改緩衝區

但我怎樣才能添加或刪除現有的緩衝區的頂點?

回答

2

您可以使用glBufferSubData作爲datenwolf說,改變現有的緩衝區中的數據,或者如果你是在做大量的修改和訪問隨機數據計劃,你可能想映射使用glMapBuffer緩衝到客戶端內存中,然後使用glUnmapBuffer.取消映射(然後,根據您選擇的訪問說明符,可以將數據編輯爲C數組)