Я пытаюсь заставить MRT работать в OpenGL, чтобы опробовать отложенный рендеринг. Вот такая ситуация, как я понимаю.
- Создайте 3 буфера рендеринга (например). Два RGBA8 и один Depth32.
- Создайте FBO.
- Присоедините буферы рендеринга к FBO. ColorAttachment0 / 1 для буферов цвета, DepthAttachment для буфера глубины.
- Свяжите FBO.
- Нарисуйте геометрию.
- Отправляйте данные в разные вложения, используя
gl_FragData[]
в шейдере фрагментов.
На этом этапе я хотел бы получить данные в другом проходе с использованием GLSL, как можно а) получить данные из вложений цвета фреймбуфера, б) получить данные из компонента глубины.