Как ни странно, технология создания персонажей компьютерных игр на сегодняшний день максимально приблизилась к искусству античной скульптуры. Чтобы продемонстрировать это, 3D-художник Николай Говако специально для «Популярной механики» сделал модель воина-победителя, фантастического танка-трансформера времен Второй мировой войны

Компьютерную графику часто называют искусством XXI века. Именно сейчас новые технические возможности позволили ей максимально приблизиться к свободному творчеству без ограничений, подобно живописи или скульптуре. И в то же время именно сейчас этот вид искусства как никогда доступен любому желающему. В современной игровой индустрии процесс создания персонажа условно делится на шесть этапов. Прежде всего автор формулирует идею и собирает информацию, которая поможет реализовать ее визуально: фотографии, чертежи, рассказы очевидцев, слухи и сплетни. На основе полученной информации создается детальный концепт в виде набросков и эскизов. Третий этап — самый важный: создание высокополигональной трехмерной модели, или скульптинг. Затем виртуальная скульптура переводится в низкополигональную модель — именно в таком упрощенном виде она сможет бегать по экрану среднестатистических домашних компьютеров. Рабочая модель одевается в карты нормалей и текстуры и превращается из пустотелого клетчатого привидения в осязаемого персонажа. На последнем этапе наш герой анимируется и поселяется в игру. Не стоит пугаться множества специальных терминов: каждый этап мы рассмотрим подробно.

От архивов к эскизам

В самом начале работы у художника на руках есть только краткое описание, присланное из редакции: «Боевой робот-трансформер, трансформировавшийся из танка Т-34, в стилистике Второй мировой: потрепанный, зеленый, с красными звездами. Как это реализовать, какую деталь сделать руками, а какую ногами — творческая задача для художника». Определив требуемую задачу, мы приступаем к поиску информации. В первую очередь находим в интернете фотографии и чертежи танка Т-34. Впоследствии, чтобы полностью воссоздать персонажа по заданному техзаданию, нам также пригодятся фотографии искореженного металла, изображения красной звезды той эпохи, рисунок гусениц и прочие мелкие детали. Потратив полчаса на поиск нужных картинок, мы переходим к этапу концепт-арта.Эскизы могут быть простыми и грубыми, могут даже не иметь ничего общего с финальным продуктом, тем не менее они очень важны — наброски отражают мысль на бумаге (или экране монитора) и позволяют художнику основательно все продумать в дизайне персонажа, прежде чем браться за «тяжелую артиллерию» в виде трехмерного моделирования.

На этот этап работы ушла всего пара-тройка часов, но, если бы была возможность, мы с удовольствием потратили бы на него намного больше времени. Не стоит недооценивать важность концептов и набросков в рабочем процессе, ведь именно они дают автору и заказчику возможность понять, как будет выглядеть готовая модель, и сделать какие-то корректировки, пока еще не слишком поздно.

Виртуальное изваяние

Представьте себе, что на шинели красноармейца мы нарисовали множество точек примерно на равном расстоянии друг от друга. Если соединить каждую точку с соседними, полученные отрезки образуют на поверхности шинели множество треугольников. Такие треугольники называются полигонами. Именно в виде точек и полигонов трехмерный объект живет в памяти компьютера. Очевидно, что чем больше полигонов в модели, тем больше ее изображение на экране будет похоже на свой реальный прототип и тем сложнее будет компьютеру рассчитать и показать пользователю сцену с ее участием.

Приступая к воплощению замысла, 3D-художник создает высокополигональную модель, которая содержит не один десяток миллионов полигонов. Пошевелить столь детальную цифровую скульптуру не сможет даже самый мощный домашний компьютер. Возникает резонный вопрос — зачем вкладывать столько сил в проработку всех деталей до последнего винтика, если потом все это придется нещадно оптимизировать? Ответ прост: художники и программисты научились очень реалистично обманывать глаз игрока, «запекая» информацию о высокополигональной геометрии в обычную двухмерную текстуру (своего рода обои, которые клеятся на модель). Ни одна крошечная деталька не пропадет даром, поэтому на данном этапе художник может предаться вдохновению и творить персонажа во всей красе, не думая о полигонах и системных ресурсах.

Наш герой родился внутри программы цифрового скульптинга Zbrush. По сравнению с ветеранами — программными монстрами вроде Maya или 3ds Max, чьи порядковые имена уже разменяли первый десяток версий, Zbrush — довольно молодой пакет. Однако принято считать, что его выход ознаменовал тихую революцию в 3D-графике. Он позволяет в буквальном смысле ваять из трехмерного примитива (куба, цилиндра, сферы) любые формы с помощью планшета. Просто нажимая на перо сильнее или слабее, художник, подобно скульптору, отсекает от виртуальной мраморной глыбы излишки материала. Вокруг Zbrush даже сложился соответствующий сленг. Когда специалисты говорят «лепить» или «пилить», речь идет о создании высокополигональной модели.

Итак, через несколько часов напряженной работы перед нами законченная высокополигональная модель. В ней чуть больше 15 млн полигонов. На сегодняшний день скульптинг — это самый длительный и трудоемкий этап работы над персонажем. Любопытно, что еще несколько лет назад, во времена Quake 3 и Half-Life, этап создания высокополигональной модели и вовсе отсутствовал. Сейчас же почти все герои современных игр и компьютерных голливудских блокбастеров создаются именно в Zbrush.

Все гениальное просто

Даже в самых современных играх в модели редко бывает больше 10−15 тысяч полигонов. Чтобы заставить модель выглядеть лучше, чем она есть на самом деле, существует специальная технология. Называется она normal mapping, и ее смысл заключается в том, что с помощью специальной текстуры в геометрическую модель добавляют множество деталей, которых у нее, собственно говоря, нет. Эти текстуры называются картами нормалей (normal maps), и для их создания как раз и нужны высокополигональные модели.

Чтобы понять, как работает normal mapping, представим себе, каким образом человеческий глаз получает информацию об объеме и рельефе. Поверхности, расположенные под разным углом к источнику света, по‑разному отражают его и отбрасывают тени. Свет и тень — вот те сигналы, которые позволяют нам судить о форме предметов. Карта нормали — это те же обои с рисунком. Только цвет каждой точки отражает ее отклонение от нормали (как будто точка принадлежит поверхности, находящейся под углом к полигону, на который натянута текстура) и особые свойства отражения света. Рассчитывая освещение для этой точки, компьютер делает соответствующие поправки. С точки зрения системных ресурсов это гораздо проще, чем освещать миллионы полигонов.

Низкополигональная модель строится на основе высокополигональной, но при этом главная задача художника — как можно точнее передать основные формы модели, уложившись в жесткие полигональные рамки. Следует помнить, что о мелких деталях позаботятся карты нормалей, а вот крупную геометрию нужно обязательно проработать на низкополигональной модели. На этот этап ушло в общей сложности восемь рабочих часов.

Костюмчик по меркам

Чтобы «запечь» карту нормалей, понадобится две модели (высоко- и низкополигональная) и любой пакет трехмерного моделирования вроде Autodesk 3ds Max, Maya или Softimage XSI. Также обязательны на сегодня в работе с трехмерными моделями для игр карты диффуза (diffuse, рассеянный свет) и спекуляра (specular, отраженный свет). Диффуз определяет цвет тех или иных элементов модели. Это в прямом смысле цветные обои с узорами. Спекуляр определяет отражающие свойства поверхности и позволяет достоверно имитировать любой материал: к примеру, металл хорошо отражает свет, а ткань или кожа, напротив, не бликуют. На самом деле существует еще множество самых различных текстур, которые используются не столь широко: например, glow отвечает за «свечение» каких-либо элементов на текстуре персонажа — скажем, огоньков или фар; opacity — за прозрачность. На отрисовку всех текстур было потрачено примерно десять рабочих часов. Качественно снятая карта нормалей во многом помогла нам в работе над другими текстурами — она послужила разметкой для рисования «обоев» точно по нужным меркам. В процессе создания карт диффуза и спекуляра использовались фототекстуры металла и ржавчины.

Вся работа над персонажем заняла около недели рабочего времени — это стандарт в современной индустрии игровой графики. Впрочем, на этом жизнь трехмерного героя обычно только начинается — впереди его еще ждет процедура обучения движениям (анимация) с помощью программирования и записи движений живых актеров. Об оживлении 3D-персонажей мы расскажем в одном из следующих номеров.

Автор — организатор конкурсов Dominance War и CGTalk.ru'MAGIC Next-Gen на территории СНГ

Статья «» опубликована в журнале «Популярная механика» (№5, Май 2009).