所以我想繪製大量的四邊形(甚至立方體),並偶然發現了這個可愛的東西,叫做幾何着色器。使用幾何着色器進行實例化
現在我已經知道它是如何工作的,我可能會操縱它爲頂點緩衝區中的每個頂點繪製一個立方體,但我不確定這是否是正確的方式。幾何着色器發生在頂點着色器和片段着色器之間,所以它在屏幕空間的頂點上工作。但我需要他們在世界空間做轉變。
那麼,讓我的頂點着色器只需將輸入管道輸入到幾何着色器,並在創建基元之後讓幾何着色器乘以modelviewproj矩陣即可?統一着色器架構應該沒有問題,但是在使頂點着色器變得冗餘的時候,我仍然感到不自在。
有替代品嗎?或者這真的是「正確」的方式嗎?
感謝您的實例提示,但速度很慢。它將我限制在整個立方體中,所以我無法剔除任何隱藏的面孔,並且每個四邊形的實例化是毫無意義的,因爲描述每個四邊形變換的4x4矩陣幾乎比直接使用4個vert更大。 – Hannesh 2011-02-19 21:44:29