Основы работы с OpenGL ES 2.0 на iPhone 3G S
7 мин
Одно из самых приятных нововведений в iPhone 3GS — более быстрая и мощная графическая платформа с поддержкой OpenGL ES 2.0. К сожалению, информации от Apple о том, как именно задействовать открывшиеся возможности, крайне мало. Практически для всех API у них есть отличная документация с образцами кодов, но проблема в том, что в случае с OpenGL примеры всегда оставляли, мягко говоря, желать лучшего.Более того, начинающим работу с OpenGL ES 2.0 не предлагается ни базовых примеров, ни шаблона XCode. Чтобы воспользоваться расширенными графическими возможностями, придется осваивать их самостоятельно. Не стоит ошибочно полагать, что OpenGL ES 2.0 — незначительно доработанная версия OpenGL ES 1.1 с парочкой новых функций. Отличия между ними кардинальные! Конвейер с фиксированными функциями исчез, и теперь для отображения на экране обычного треугольника понадобится более глубокое знакомство с основами компьютерной графики, включая шейдеры.
Часто для работы iPhone/iPad приложений необходим некоторый «дефолтовый» набор данных в базе. К сожалению, Apple стандартных средств предзаполнения базы приложения разработчикам не предоставляет. 
У любого желающего писать программы для продукции фирмы Apple в жизни наступает такой момент, когда ему приходиться изучить новый язык программирования — Objective-C. Когда-то этот счастливый момент постиг и меня. А чтобы лучше запомнить основные особенности этого языка, решил законспектировать свои мысли во время осмысления его документации, которыми и делюсь с вами. 
Я иногда сталкивался с тем, когда web-программист не знал CSS или, скорее, не хотел заниматься облагораживанием своего HTML, который являлся результатом работы разрабатываемого им скрипта. Это натолкнуло меня на мысль, что ему (программисту) не помешало бы иметь при себе некоторое средство для создания «красивых» страниц. Средство должно было бы включать в себя некоторый CSS, возможно, картинки, и подключаться к любому HTML (очевидно, созданному по некоторым определённым правилам). При этом смена CSS (и картинок) на альтернативные не должна была бы приводить к семантически некорректному отображению.


