Сейчас я играю с OpenGL ES на iPhone, используя Oolong Engine. Это может быть глупый вопрос, но насколько это необходимо для очистки после OpenGL при выходе из приложения? Моя проблема заключается в том, что у меня есть статический вектор, который управляет загрузкой моделей и слабо гарантирует, что модели не загружаются дважды. Из-за этого все дескрипторы VBO и текстур хранятся в Model
объектах в static map<Model>
. Когда приложение закрывается, карта, по-видимому, не вызывает деструкторы для отдельных объектов Model, поэтому они не вызывают glDeleteBuffers()
.
У меня вопрос: действительно ли это необходимо, если приложение достаточно маленькое, чтобы я никогда не выгружал и не перезагружал модели из памяти во время выполнения? Или OpenGL просто позаботится обо всем этом для меня? Я мог бы создать статическую CleanUp()
функцию, которая вызывается из dealloc
приложения, но стоит ли это того?