OpenGL渲染浮动图像

时间:2014-12-24 10:40:24

标签: opengl fragment-shader

我有一个1D浮点数组,表示粗糙的25x25灰度图像(展平为1D数组),我想将其绘制到方形平面(坐在3D空间中),我使用以下方法绘制:< / p>

glBindBuffer( GL_ARRAY_BUFFER, m_glVBO ); // vertices are sitting in a VBO.
glEnableClientState( GL_VERTEX_ARRAY );
glVertexPointer( 3, GL_FLOAT, sizeof(vec3), (void*)(0) );
glColor4f( 0.5f, 0.5f, 0.5f, 1.0f );
GLubyte indices[] = {0,1,2, // first triangle (bottom left - top left - top right)
                         0,2,3}; // second triangle (bottom left - top right - bottom right
glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_BYTE, indices);
glBindBuffer( GL_ARRAY_BUFFER, 0 );
glDisableClientState( GL_VERTEX_ARRAY );

如果我打算相当频繁地更新此浮动数据,那么绘制所述图像的有效方法是什么?我应该在GL_TEXTURE_1D上使用glBindTexture吗?或者我可以将数据直接传递到片段着色器并将其绘制在那里而不绑定纹理吗?

0 个答案:

没有答案