glDrawElements只绘制一半四

问题描述:

这里是我的功能:glDrawElements只绘制一半四

void Object::draw2() 
{ 

if(!mIsInitialised) { return; } 

//Tell OpenGL about our vertex and normal data 
glEnableClientState(GL_VERTEX_ARRAY); 
glVertexPointer(3, GL_FLOAT, 0, &Vertices.front()); 

glEnableClientState(GL_NORMAL_ARRAY); 
glNormalPointer(GL_FLOAT, 0, &Temp2.front()); 

//draw the .txt-file 
glDrawElements(GL_TRIANGLES, Indices.size(), GL_UNSIGNED_INT, &Indices.front()); 

//restore the state GL back 
glDisableClientState(GL_VERTEX_ARRAY); 
glDisableClientState(GL_NORMAL_ARRAY); 
} 

我的指数向量包含:1 2 3 1 3 4

我的顶点载体包含:-1 -1 0 1 -1 0 -1 1 0

当我运行程序时,它只绘制了半个四边形 - 即三角形。

结果 - >http://i.stack.imgur.com/jZALG.png

你的指数载体应含有:

0 1 2 0 2 3 

否则,你永远不碰顶点数0与四边形的半结束。

+1

它告诉我等一分钟才能接受:) –