Я пытаюсь прочитать пиксели из контекста GLX. вот как я создаю контекст
int Attributes[] =
{
GLX_DRAWABLE_TYPE, GLX_WINDOW_BIT,
GLX_RENDER_TYPE, GLX_RGBA_BIT,
GLX_DOUBLEBUFFER, GL_TRUE,
GLX_RED_SIZE, 8,
GLX_GREEN_SIZE, 8,
GLX_BLUE_SIZE, 8,
None
};
visual = glXChooseVisual(display,
DefaultScreen(display),
Attributes);if (visual == NULL)
{
return -1;
}
glxContext = glXCreateContext(display, visual, NULL, GL_TRUE);XLockDisplay(displayGLX_);
int result = glXMakeCurrent(display, windowHandle, glxContext);
XInitThreads();
затем я рендеринг простого треугольника, и я хочу прочитать этот буфер с помощью glReadPixels. Есть ли возможность сделать это?
glReadBuffer(GL_BACK);
glXSwapBuffers(display, windowHandle);
а потом я звоню
glReadPixels
Не меняйте своп 1-й, вы читаете из буфера BACK, так что glReadPixels перед свопом …
Других решений пока нет …