Несколько контекстов GLES, один кадровый буфер (iOS) - PullRequest
1 голос
/ 15 ноября 2010

Я делаю приложение для iOS, где у меня есть библиотека рендеринга черного ящика, которая имеет свой собственный EAGLContext и фрейм-буфер и выполняет свой собственный рендеринг. Мне также нужно сделать дополнительный рендеринг за пределами черного ящика lib.

До сих пор я делал это, внимательно читая, устанавливая и восстанавливая все соответствующие состояния каждого кадра. Это работает, но сложно и трудно поддерживать. Затем мне пришло в голову: «Почему бы вместо этого не использовать отдельный EAGLContext?»

Я реализовал второй контекст, поэтому теперь я переключаю контексты вместо установки / восстановления всех состояний каждого кадра. Единственная проблема в том, что я получаю много визуальных артефактов, и производительность возросла с 30 FPS до 5 FPS ...

Так что, по-видимому, я не должен рендериться на один и тот же кадровый буфер из нескольких контекстов. Кто-нибудь может это подтвердить?

...