2010-02-23 85 views
1

使用Opengl ES for Android時,我們在繪製具有紋理的正方形時面臨一個問題。他們從遠處看起來很好,但是當靠近模型時,紋理就會鬆動。我們認爲,這是一個事實,即模型只包含四個頂點造成的:Opengl ES - 繪製多個頂點的平面

浮法[] COORDS = {

-1,1,0.0F,

1,1,0.0F,

-1,-1,0.0F,

1,-1,0.0F,
};

這就是爲什麼我們要擴大模型,因此由10×10的多邊形,所以問題是:以什麼順序做,我們必須吸取的頂點創建一個類似的平面:

http://cocktailgenerator.net/cis4/plan.png

使用GL_TRIANGLE_STRIP,我們可以繪製一個像(1x10)這樣的多邊形的矩形,效果很好,但我們如何將它擴展爲10x10?

+0

愚蠢的問題,並在頂點的順序影響面繪製的方法是什麼?例如浮[] COORDS = { -1,1,0.0F, 1,1,0.0F, 1,-1,0.0F, -1,-1,0.0F, }; ...它與您當前的座標系訂單相比呈現不同嗎? – 2010-02-23 13:52:22

回答

0

如果從左向右創建行,只需添加一個不可見的退化條即可開始新行:添加行的最後一個點兩次,插入零面積三角形。渲染面部時,這些三角形將不可見。通過使用這種技術,您可以在鋼帶上創建不連續性,例如,在大平面上開始一個新的行。

關於原始問題:您確定可以通過細分網格來擺脫渲染問題嗎?這聽起來不像是正確的路要走。

+0

感謝您的回覆。我們不知道有可能分割網格。你有關於如何做的例子的鏈接? – Glen 2010-02-23 13:31:28