Я делаю базирующееся приложение универсального openGL, которое должно работать над ipod/iphone 2G/3G/3GS/4 и iPad.
Для поставки самой лучшей графики, я должен переключиться между различными разрешениями структуры на основе того, какое устройство выполняет ее.
Например, iPhone 2G нужны структуры, который не больше, чем 1024x1024, в то время как iPhone 3GS может обработать большие структуры.
Так, на iPhone 3GS I хотят загрузить атлас структуры, который это 2048x2048, в то время как iPhone 2G получит уменьшенный масштаб 1024x1024 атлас структуры.
Существует ли простой и безопасный способ обнаружить максимальное разрешение структуры, доступное openGL на каком-либо упомянутом устройстве?
Да, используйте glGetIntegerv как:
int maxTextureSize;
glGetIntegerv(GL_MAX_TEXTURE_SIZE, &maxTextureSize);
Тогда вы можете использовать максимум текстуру maxTextureSize x maxTextureSize.