У меня небольшая проблема с яблоками EAGLView и Texture2D. Если я создам экземпляр EAGLView и нарисую несколько текстур, он отлично работает. Однако всякий раз, когда я создаю второй экземпляр EAGLView, текстуры в новом представлении не отображаются.
Будучи новичком в OpenGL, я теперь абсолютно точно понимаю, что вызывает такое поведение. Если кто-то хотел бы помочь, я создал небольшой проект, который воспроизводит поведение. Проект можно найти по адресу http://www.cocoabeans.se/OpenGLESBug.zip
Большое спасибо,
Тим Андерссон
Обновление
Я пытался использовать sharegroups, но я не совсем уверен, правильно ли я их использовал. Тем не менее, это немного изменило поведение; вместо рисования текстуры только в первом экземпляре, теперь он рисует текстуру в экземпляре last и в других видах рисует белые прямоугольники. Я не знаю, лучше это или хуже, но по крайней мере что-то появляется в других представлениях сейчас.
Это сводит меня с ума, и я был бы очень признателен, если бы кто-нибудь мог помочь мне с этой проблемой. Я обновил проект на http://www.cocoabeans.se/OpenGLESBug.zip, чтобы отразить изменения.
Приветствия
Тим
Второе обновление
После еще нескольких попыток кажется, что проблема связана с классом Apple Texture2D, хотя я не уверен, что именно вызывает поведение. Я думаю, что лучше всего написать свой собственный класс текстур (это поможет мне понять, как OpenGL обрабатывает текстуры, что, вероятно, пригодится).