我正在编写一些Android代码,以准备我计划开发的图形密集型应用程序.我从2004年开始没有做任何OpenGL.我偶然发现http://www.opengl.org/wiki/Vertex_Array_Object和PC平台的多个来源声称使用顶点数组对象是最好的渲染方式.
我的目标平台是配备Android 2.3的摩托罗拉Atrix 2智能手机.
我似乎无法找到与GL_OES_vertex_array_object对应的函数的包含.我想调用类似于glGenVertexArraysOES的函数.
如何在Android中使用VAO?
我目前的包括
import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.CharBuffer;
import java.nio.FloatBuffer;
import java.nio.IntBuffer;
import javax.microedition.khronos.opengles.GL10;
import javax.microedition.khronos.opengles.GL11;
解决方法:
VAO是相当新的,不包含在OpenGL | ES 1.0或1.1中(不要与Buffer Objects混淆,或者它们有时被称为VBO).您必须导入并使用OpenGL | ES 2.0,并且通过这样做,您必须对图形代码进行一些更改,以通过着色器而不是glVertexPointer和类似方法进行绘制.从它的外观来看,没有内置于Android的GL20Ext类或类似内容,我会环顾网页进行绑定或使用NDK自己编写.