синхронизация двух GLSurfaceViews - PullRequest
3 голосов
/ 29 июня 2011

Хотя я нашел вопрос о Разделении контекста GLES20 ... , я думаю, что моя ситуация немного шире.

У меня есть два GLSurfaceView наслоенных друг на друга в FrameLayout. (Один Harism CurlView из android_page_curl работает как библиотека в моем приложении. Другой GLSurfaceView - мой.) Каждый GLSurfaceView выполняется в собственная тема.

У меня непоследовательные проблемы с отображением растровых изображений на моем GLSurfaceView. Иногда растровое изображение рисуется идеально, а иногда видны только его части. Могу поспорить, что два GLSurfaceView конкурируют за доступ к экранной памяти и попирают друг друга.

Чтобы решить эту проблему, я подумал, что могу просто synchronize на одноэлементном логическом значении в приложении до вызова onDrawFrame(), но после прочтения Потоки слегка ... Я думаю, что должен быть немного более вдумчивый.

На каком объекте и в каком коде я должен synchronize сделать так, чтобы два наложенных GLSurfaceViews играли хорошо?

1 Ответ

1 голос
/ 28 июля 2011

В итоге я использовал View через GLSurfaceView по причинам, аналогичным приведенным здесь

, программно добавляющим SurfaceView в FrameLayout, который Z-упорядочен под ImageView

...