2013-10-04 37 views
1

我使用glDrawElementsInstanced()繪製大量的立方體(100 000+)。由於性能方面的原因,我想實施平截頭體剔除,但我不太清楚在使用實例化時如何做到這一點。 從我所知道的,訪問單個對象實例的唯一方法是在着色器中,所以我假設我必須在那裏進行剔除。我不太確定如何去做。 任何人都可以指向我的任何教程?OpenGL實例化渲染 - 截錐體剔除

回答

4

嘗試在頂點着色器中進行剔除在過程中太晚了。您必須以某種方式將多維數據集的變換提供給着色器,只需取得該數據並設置一個Bounding Volume Hierarchy即可。然後只繪製通過截錐體剔除的實例。