Это широкий вопрос, но я могу указать вам правильное направление работы 3D-рендеринга, поверьте мне, это огромный вопрос, за которым стоят десятилетия работы, и многое из того, что можно здесь изложить. Не знаю, насколько быстро вы освоите методы 3D-рендеринга, поэтому я дам вам базовую идею текстурирования и укажу на хороший набор учебников.
Как они это делают?
Идея состоит в том, что в 3D-рендеринге 3D-модели могут быть текстурированы с помощью 2D-изображения, известного как карта текстуры. Вы используете 2D-изображение и оборачиваете его вокруг 3d-модели, будь то простой примитив, такой как сфера куба, или более продвинутый, такой как классический чайник или модель человеческой головы и т. Д. Текстуру можно взять откуда угодно, в прошлом я использовал подачу камеры для текстурной сетки с видеоизображением из потока камеры, я использовал фотографии с камеры, как это делается. Так вот как лицо отображается в 3D-модели.
Это эффективно?
На iOS и большинстве мобильных устройств 3D-рендеринг использует аппаратное ускорение с использованием OpenGLES. Что касается вашего вопроса, это действительно быстро, в зависимости от того, как вы реализуете свой код рендеринга.
То, как он использует отображение (шаблон масштабирования и поворота в видео), как упомянуто антициклопом, позволяет вам сделать текстуру подходящей для модели, а также разместить глаза, которые являются частью кода рендеринга.
Так что, если вы хотите поднять это, я рекомендую прочитать учебник Джеффа Ламарша "с нуля" в качестве учебника для начинающих:
http://iphonedevelopment.blogspot.com/2009/05/opengl-es-from-ground-up-table-of.html
Во-вторых, я прочитал около 4 книг по OpenGLES для общего дизайна и специфики платформ. Я рекомендую эту книгу:
http://www.amazon.co.uk/iPhone-Programming-Developing-Graphical-Applications/dp/0596804822/ref=sr_1_1?ie=UTF8&qid=1331114559&sr=8-1