#objective-c #opengl-es
#objective-c #opengl-es
Вопрос:
Я хотел бы создать приложение с использованием OpenGL ES (в ObjC), позволяющее пользователю перемещаться по детализированной 2D-карте (панорамирование, масштабирование, поворот) с помощью распознавателей жестов.
У меня есть, как и у Google Maps, папка, содержащая 128×128 текстур для каждого «фрагмента» и уровня LOD, например, LOD 0 = 1 текстура, LOD 1 = 4 текстуры, LOD 2 = 16 текстур и т.д… В зависимости от масштаба / зума, я могу переключить LOD, чтобы показать больше деталей…
Как бы вы реализовали что-то подобное технически?
Например, как загружать / выгружать текстуры, которые необходимы (NSOperationQueue ? Что произойдет, если пользователь будет увеличивать и уменьшать масштаб и / или панорамировать очень быстро?), Как переключать LOD и т.д.
Ответ №1:
Я бы посмотрел на презентацию WWDC 2010 Session # 104 и ее демонстрационный код PhotoScroller. В нем подробно рассказывается об использовании плиток в UIScrollView и обработке масштабирования и т.д.