最近因为一时疏忽,出现了bug,由于是交叉编译,调了好久才发现问题在哪。
Opengl EBO空间分配问题
ebo分配空间是依据实际绘制的顶点数。在glDrawElemnet绘制时第一个参数采用GL_TRIANGLE_STRIP时,在EBO空间分配QOpenGLBuffer::allocate(const void *data, int count)仍要按照绘制实际点分配。
比如矩形是由2个三角形组成,按照GL_TRIANGLE_STRIP绘制,索引只需要0,1,2,3.四个,但是实际分配是仍要分配6个空间。本人当时只分配4个,在pc端测试没问题,但项目移植至arm出现问题,特来记录一下。