1、glCreateProgram需要在GL线程中调用,否则报错1281。报1281、1282这个错误有很多情况,对OpenGL还处于学习阶段,遇到再补充。
顶点buffer不需要再GL线程中调用。
2、无报错,但不能画出三角形,原因:代码是按照2.0规范调用,没有在创建G了SurfaceView后启用2.0支持。(
glSurfaceView.setEGLContextClientVersion(2);)
3、画出的形状与预期不符,但没有报错。原因:开启缓冲时 GLES30.glEnableVertexAttribArray(),每个handle需要开启一个顶点缓冲,否则会引起数据混乱,如
GLES30.glEnableVertexAttribArray(0);
GLES30.glEnableVertexAttribArray(1)
之后对应
glDisableVertexAttribArray(0);
glDisableVertexAttribArray(1);