2013-08-04 1 views
1

Можно ли связать одну и ту же текстуру с несколькими объектами фреймбуфера? Мне нужно написать на некоторой текстуре в многоцелевом представлении рендеринга с определенным fbo, а затем добавить какое-то смешение только к одной из этих текстур, поэтому мне нужен второй объект framebuffer с привязкой к этой текстуре.Может ли текстура быть привязана к нескольким fbo?

ответ

6

Я понятия не имею, почему вы думаете, что не можете приложить текстуру для нескольких FBOs. Так что да, вы можете.

Однако вам не пригодится для ваших целей. Вам не нужно писать в все изображений, прикрепленных к FBO. Вы control what images get written to с glDrawBuffers. Вы можете даже selectively enable and disable blending to certain draw buffers, если вам нужно написать несколько буферов, но только смешать их с некоторыми.

Так что да, вы можете, но не стоит беспокоиться. Просто переключите буферы рисования, если вам не нужен новый буфер глубины или что-то еще.

+0

Что делать, если я хочу читать текстуру, связанную с тем же FBO, над которым я пишу? Скажем, у меня есть FBO с TextureA и TextureB, связанный с ним. Я хочу добавить TextureB в TextureA. Это нормально, если я просто изменяю glDrawBuffers для рендеринга только на TextureA? Другими словами, могу ли я читать текстуру, когда я пишу на FBO, с которым связана такая текстура, если я не пишу эту текстуру? – darius

+0

@darius: Это совершенно новый вопрос. Поэтому используйте кнопку «Спросить вопрос», чтобы задать вопрос. Или просто [найдите ответ на OpenGL Wiki] (https://www.opengl.org/wiki/Memory_Model#Framebuffer_objects). –

+0

Спасибо за ссылку. – darius

 Смежные вопросы

  • Нет связанных вопросов^_^