古い glDrawPixels のようなものを実行しようとしています: テキストで作成されたピクセル バッファーがあり、それをバック バッファー (すべてのシーンが既にレンダリングされている場所) に適用したいと考えています。
unsigned char a[] = {255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 0, 0};
// What I would
//glDrawPixels(2, 2, GL_RGB, GL_UNSIGNED_BYTE, (GLvoid*)pixels);
// What I am trying
GLuint pbo = 0;
glGenBuffers(1, &pbo);
glBindBuffer( GL_PIXEL_UNPACK_BUFFER, pbo);
glBufferData(GL_PIXEL_UNPACK_BUFFER, 12, a, GL_STREAM_DRAW);
// Blit pbo to back buffer, but how?
// Release all
....
ほとんどのチュートリアル [1] は、ピクセル バッファをテクスチャにコピーしてから、このテクスチャをクワッドに適用するように見えますが、このソリューションは多くの不要な操作を実行しているようです: データのコピー、テクスチャのフィルタリングの作成、クワッドの描画 (つまり、新しい VBO) など...
他の回答[2]は「ブリッティング」について語っていますが、私はそれを機能させることができません。
また、OpenGL に関するほとんどの情報では、OpenGL 3.X では非推奨 (および使用不可) になっている glDrawPixels を引き続き使用しています。