Rendern Sie QImage mit OpenGL

Bezogen auf meineandere FrageIch denke die zentralere Frage wäre, wie man einen rendertQImage mit OpenGL?

Ich denke, der Code muss ungefähr so ​​aussehen, aber ich bin mir nicht sicher, was ich außer vielleicht noch braucheconvertToGLFormat(img).

glEnable(GL_TEXTURE_2D);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

glGenTextures(1, &offscreenBufferTexture);
glBindTexture(GL_TEXTURE_2D, offscreenBufferTexture);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, imgGL.width(),
         imgGL.height(), 0, GL_RGBA, GL_UNSIGNED_BYTE,
         imgGL.bits());

glBegin(GL_QUADS);
  glTexCoord2d(0,0); glVertex2d(0, 0);
  glTexCoord2d(1,0); glVertex2d(windowSize.width(), 0);
  glTexCoord2d(1,1); glVertex2d(windowSize.width(), windowSize.height());
  glTexCoord2d(0,1); glVertex2d(0, windowSize.height());
glEnd();
glDisable(GL_TEXTURE_2D);

Außerdem dachte ich schnell und dreckig, was du gebrauchen könntestglDrawPixels() (obwohl du nicht solltest), wie

glDrawPixels(imgGL.width(), imgGL.height(), GL_RGBA,
         GL_UNSIGNED_BYTE, imgGL.bits());

Aber so oder so kann ich das Bild nicht sehen, nur ein weißes Quadrat in der Größe. Mir fehlt hier etwas.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage