OpenGL закадровый рендеринг - PullRequest
0 голосов
/ 11 марта 2019

Я пытался визуализировать 2D-сцену за пределами экрана FrameBuffer Object и использовать функцию glFrameBufferTexture2D, чтобы использовать рамку в качестве текстуры для текстуры куба.

2D-сцена отображается в одном контексте, а текстура используется в другом в том же потоке.

Проблема в том, что когда я текстурировал куб, альфа-канал казался неправильным. Я использовал apitrace для проверки текстуры, и текстура имеет правильное альфа-значение, а шейдер был просто out_color = texture(in_texture, uv_coords)

Проблема была решена, если я перетяну цветовое вложение закадрового буфера к чему-либо, будь то само по себе или кадровый буфер 0 (окно вывода).

Мне было интересно, почему это происходит и как решить эту проблему без необходимости перетаскивать кадровый буфер.

1 Ответ

0 голосов
/ 11 марта 2019

Обнаружено, что я использовал одиночную буферизацию для статической 2D-сцены и требует glFlush для очистки конвейера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...