2013-03-11 113 views
0
GLuint vBuffer; 
glGenBuffers(1, &vBuffer); 
glBindBuffer(GL_ARRAY_BUFFER, vBuffer); 
int totalSize = sizeof(tempVertexList); 
glBufferData(GL_ARRAY_BUFFER, totalSize, tempVertexList, GL_STREAM_DRAW); 
glDrawArrays(GL_TRIANGLE_STRIP, 0, vertexCount); 

此代碼崩潰,當涉及到glDrawArrays,我失蹤的任何明顯的原因? vertexCount是4和tempVertexList充滿定義爲glDrawArrays崩潰與GLES2

4層頂點結構
typedef struct 
{ 
    float Position[3]; 
    float Colour[4]; 
} Vertex; 

回答

0
glVertexAttribPointer(positionSlot, 3, GL_FLOAT, GL_FALSE, sizeof(Vertex), 0); 
glVertexAttribPointer(colorSlot, 4, GL_FLOAT, GL_FALSE, sizeof(Vertex), (GLvoid*)(sizeof(float)*3)); 
需求

每個GL_ARRAY_BUFFER改變時被調用,不知道剛剛發現:)