Android OpenGL-ES VBO支持与否?我怎么检查这个?
由于
答案 0 :(得分:6)
有些手机支持它,有些则不支持。通常,VBO在OpenGL 1.1中是必需的,因此如果设备报告
gl.glGetString(GL10.GL_VERSION);
为1.1或更高版本(您也可以编写应用程序清单文件,以便安装时需要1.1),然后支持它们。
如果设备仅支持OpenGL ES 1.0,则应检查
的返回值gl.glGetString(GL10.GL_EXTENSIONS);
是否包含 ARB_vertex_buffer_object 。可能它会。
有关Android设备的各种GL功能的(略)相关信息,您可以在此问题中找到一些:OpenGL extensions available on different Android devices。
答案 1 :(得分:0)
void draw(GL10 gl){
GL11 gl11 = (GL11)gl;
...
gl11.glBindBuffer(...);
}
答案 2 :(得分:0)
OpenGL ES 2.0支持VBO,但Android 2.2中存在一个错过GLES20类api的问题:
public static native void glDrawElements(
int mode,
int count,
int type,
int offset
);
此问题已在Android 2.3中修复。