Завершение приложения GLFun
И наконец, передадим сформированный массив вершин соответствующей функции OpenGL ES, указав этой библиотеке нарисовать и визуализировать его содержимое, а контексту — представить вновь визуализированное изображение.
Мы не будем подробно рассматривать здесь метод рисования прямоугольника, поскольку в нем применяется тот же самый подход. Но только упомянем, что и в этом случае мы определяем сначала массив четырех вершин прямоугольника, а затем визуализируем и представляем его.
Что же касается рисования изображения, то и здесь мы не будем многословны, поскольку все хлопоты об этом процессе берет на себя класс Texture2D, предоставляемый компанией Apple и делающий рисование спрайтов таким же простым, как и в библиотеке Quartz 2D. Но у этого процесса имеется одна важная особенность, на которую следует обратить внимание.
В этой строке кода мы должны активизировать наложение текстур, прежде чем воспользоваться классом Texture2D, поскольку ранее возможность накладывать текстуры была запрещена.
После метода рисования следуют те же самые методы, имеющие отношение к касанию экрана, что и в предыдущей версии рассматриваемого здесь приложения. Единственное отличие заключается в следующем: вместо того чтобы указывать представлению на необходимость его отображения, мы просто вызываем метод рисования. Нам не нужно указывать библиотеке OpenGL ES, какие именно участки экрана следует обновлять, поскольку она делает это сама, опираясь на аппаратное ускорение процесса рисования наиболее эффективным образом.
Теперь можете отредактировать файл GLFunViewController.xib и разработать интерфейс рассматриваемого здесь приложения. Мы не будем здесь пояснять, как это делается, но если у вас возникнут определенные трудности, обращайтесь за справкой к подразделу “Обновление файла QuartzFunViewController.xib", приведенному ранее в этой статье. Если же вы выполняли не все этапы создания данного приложения, скопируйте файл QuartzFunViewController.xib в текущий проект, переименуйте его и пользуйтесь им в качестве отправной точки. Но в любом случае непременно замените класс QuartzFunView основного представления на GLFunView.
- Дата: 16-01-2015, 10:37