GLX контекстное чтение кадрового буфера

Я пытаюсь прочитать пиксели из контекста 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

2

Решение

Не меняйте своп 1-й, вы читаете из буфера BACK, так что glReadPixels перед свопом …

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]