0
好吧,我有一个vector<float>
的x,y,z值,我试图用opengl渲染它,有些东西没有工作,并想知道我在做什么错误,所以请帮忙!从缓冲区上传和绘图
这是怎么了我根缓冲
GLUint buffer;
int length = data.points.size() * 3 * sizeof(float);
glGenBuffers(1, &buffer);
glBindBuffer(GL_ARRAY_BUFFER, buffer);
glBufferData(GL_ARRAY_BUFFER, length, &data.points[0], GL_STATIC_DRAW);
,这是我如何绘制它:
glEnableClientState(GL_VERTEX_ARRAY);
glBindBuffer(GL_ARRAY_BUFFER, buffer);
glVertexPointer(3, GL_FLOAT, 0, (char *)NULL);
glDrawArrays(GL_POINTS, 0, buffer);
glDisableClientState(GL_VERTEX_ARRAY);
有什么不对?
有问题吗?我改变了我的代码来修复你的建议,但仍然没有绘制 – Dean
我在你发布的代码中看不到任何其他问题。如果它没有绘制任何东西,可能有很多原因。最常见的是您的几何体不在相机的视野范围内。你是否在某处设置了点颜色?我有时候做的一件事是使用除黑色以外的清晰颜色。这会告诉你,如果你画黑点,或根本没有点。 –
是的,我的相机是好的,它似乎是绘制一个点,没有别的......一切都在视线中,我想我将不得不继续检查 – Dean