2015-01-14 107 views
0

我使用從矢量陣列提供的2個緩衝區在一個世界周圍放置一堆方形瓷磚,一個用於顏色,另一個用於位置。三角形頂點顏色不平滑,因爲它們不插入正方形中的兩個三角形之間。爲了解決這個問題,我想單獨設置每個片段顏色,手動混合頂點的顏色。我無法用預製紋理替代這個過程。OpenGL - 從頂點着色器訪問緩衝區中的下3個頂點

Ive遇到的問題是將緩衝區中的下三個頂點位置和位置傳遞給頂點着色器。有沒有簡單的方法來做到這一點?

謝謝你,祝你有美好的一天!

+0

你是什麼意思的頂點顏色不插入之間的兩個三?你可以添加圖片嗎?在頂點着色器中獲取多個頂點並不容易,但我可能會有另一種解決方案來解決您的問題。 – Jerem

+0

@JeremyLaumon http://puu.sh/ev0rj/2bf0c29a68.png這是頂點照明的一個很好的例子,它不是在我的瓷磚中的三元素之間進行插值,因爲它使用重心過濾而不是雙線性,因爲我想要它 – Justakid

回答

1

添加另一組屬性,並設置glVertexAttribPointer以指向頂點位置緩衝區,但也有偏移量。請記住,要添加一些虛擬填充到最後,以便在到達數組末尾時不會出現超出限制的情況。此外,…_ADJACENCY繪圖模式在這種情況下很有用(如果可用)。

+0

謝謝@ datenwolf!我不得不做很多擺弄才能正確實施,但提到偏移參數使我朝着正確的方向前進。非常感謝你 – Justakid