glInvalidateFramebuffer и время использования данных - PullRequest
0 голосов
/ 10 апреля 2019

Я выполняю рендеринг нескольким FBO с намерением связать их как текстуру в последующем розыгрыше. Насколько я знаю, мне следует вызывать glInvalidateFramebuffer, если я не хочу, чтобы данные в FBO были релевантными в следующем кадре.

Мой вопрос заключается в том, что если я вызываю glInvalidateFramebuffer прямо перед glBindFramebuffer, который связывает текущее FBO в качестве цели рендеринга, как долго я смогу использовать это FBO в качестве входной текстуры для вызовов рендеринга, пока данные не станут непригодными для использования? До тех пор, пока unbinding glBindFramebuffer? До следующего звонка, который использует текстуру? До eglSwapBuffers?

1 Ответ

1 голос
/ 10 апреля 2019

Пиксели немедленно становятся недействительными, если речь идет о любых последующих командах. Помните: хотя OpenGL может выполняться асинхронно, определено для синхронного выполнения (с некоторыми исключениями). Поэтому любые последующие команды будут выполняться так, как если бы предыдущие команды были выполнены.

...