2011-04-28 66 views

回答

3

的文檔網格類的工作用的OpenGL ES 1.x和2.0。在OpenGL ES 1.x中,您使用固定功能管線(無着色器)。這裏的屬性沒有任何用處。在OpenGL ES 2.0中,您可以編寫所謂的頂點和片段着色器。如果您發送Mesh(或頂點)到您的頂點/片段着色器對,您的着色器必須有一種方法來標識特定的頂點屬性,比如說頂點位置,紋理座標,顏色等等。

着色器使用GLSL語言編寫。頂點着色器看起來是這樣的:

attribute vec4 a_Position; 
attribute vec4 a_Normal; 
attribute vec2 a_TexCoord; 

uniform mat4 u_projView; 

varying vec2 v_texCoords; 
varying vec4 v_color; 

void main() { 
    v_color = vec4(1, 0, 0, 1); 
    v_texCoords = a_TexCoord; 
    gl_Position = u_projView * a_Position; 
} 

正如你可以看到有所謂的屬性,這是完全一樣的libgdx VertexAttributes。因此,第三個參數是在着色器中使用的VertexAttribute的名稱(因此,如果您爲了方便而使用該參數,而不是直接使用GLES 2.0函數),則使用該參數中的ShaderProgram。

心連心, 馬里奧

+0

所以,第三個參數可以是任何單詞。我們將其傳遞給ShaderProgram?我可以稱之爲「有趣的包裝」,這會起作用嗎? – dotty 2011-04-28 11:27:43

0
+0

它說:「對於在ShaderProgram使用的屬性別名」,意思? – dotty 2011-04-28 09:03:57

+0

你說得對。對不起....刪除它。 – rajath 2011-04-28 10:27:49

相關問題