如何在android上的opengles中创建着色网格

时间:2010-11-07 13:01:31

标签: android opengl-es

在我的应用程序中,我正在尝试创建一个由单个方向灯遮蔽的网格。我面临的问题是,我似乎无法理解我的法线。

如果我在每个三角形条带的基础上设置法线,它可以正常工作,但是如果我尝试渲染一系列使用glNormalPointer方法设置法线的三角形,则使用相同的颜色渲染整个网格(如果我一起跳过调用glNormalPointer,这与我得到的结果相同)。

我的网格渲染方法如下所示:

public void render(GL10 gl){   gl.glFrontFace(GL10.GL_CW);   gl.glNormalPointer(GL10.GL_FLOAT,0,normalBuffer);   gl.glVertexPointer(3,GL10.GL_FLOAT,0,vertexBuffer);   gl.glDrawElements(GL10.GL_TRIANGLES,indexBuffer.capacity(),GL10.GL_UNSIGNED_BYTE,indexBuffer);  }

1 个答案:

答案 0 :(得分:1)

You should call

glEnableClientState(GL_NORMAL_ARRAY);