ПРАВИТЕЛЬСТВО РОСССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ДОПУСТИТЬ К ЗАЩИТЕ
Профессор с возложенными
обязанностями заведующего
Кафедрой информационных
систем в искусстве и
гуманитарных науках
___________(Борисов Н.В.)
“_____”_______________2017 г.
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА
Направление 09.03.03 «Прикладная информатика»
Уровень Бакалавриат
Основная образовательная программа
«Прикладная информатика в области искусств и гуманитарных наук»
На тему
«Создание короткометражного анимационного фильма»
Студента Юриной Ольги Сергеевны
_______________________
(подпись студента)
Руководитель: старший преподаватель СПбГУ Швембергер Сергей Викторович
__________________________
(подпись руководителя)
Рецензент (-ты): кандидат технических наук, генеральный директор
ООО «БХВ-Петербург», Шишигин Игорь Владимирович
_____________________________
(подпись рецензента)
3
АННОТАЦИЯ
выпускной квалификационной работы
Юриной Ольги Сергеевны
название выпускной квалификационной работы
Создание короткометражного анимационного фильма
Пояснительная записка 40 страниц, 22 изображения, 7 источников.
3D ГРАФИКА, ТРЕХМЕРНОЕ КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ,
Т Е К С Т У Р И Р О В А Н И Е , В И З УА Л И З А Ц И Я , Т Р Е Х М Е Р Н А Я
КОМПЬЮТЕРНАЯ АНИМАЦИЯ
Целью данной работы является создание короткометражного
анимационного фильма с использованием трёхмерной графики, освоение
всех необходимых для этого инструментов и методов работы с ними.
Задачи: создание 3D моделей персонажа и элементов окружающей среды,
анимация персонажа, создание итогового видеоряда.
При работе над короткомет ражным анимационным фильмом
использовались редакторы трехмерной графики Autodesk 3ds Max 2016,
ZBrush 4R6, графический редактор Adobe Photoshop CC.
Автор работы ___________________ _____________________________
подпись
(фамилия, имя, отчество)
Руководитель работы ____________ _____________________________
подпись
(фамилия, имя, отчество)
4
Содержание
Перечень сокращений и специальных терминов……………………4
Ведение…………………………………………………………………5
Описание используемых информационных технологий……………7
1 Создание эскизов и концепт-артов………………………………….8
2 Моделирование………………………………………………………12
2.1 Моделирование персонажа……………………………………12
2.2 моделирование окружающей среды…………………………..15
3 Текстурирование……………………………………………………..19
3.1 Текстурирование персонажа…………………………………..19
3.2 Текстурирование предметов окружающей среды……………23
4 Завершающий этап создания модели персонажа, добавление
шерсти………………………………………………………………27
5 Ригинг…………………………………………………………………28
6 Скининг……………………………………………………………….32
7 Анимация……………………………………………………………..34
8 Сборка сцены и рендеринг…………………………………………..35
Заключение……………………………………………………………..38
Список используемой литературы……………………………………39
Приложения…………………………………………………………….40
5
Перечень сокращений и специальных терминов
Референс — вспомогательное изображение: рисунок или фотография,
которые художник или дизайнер изучает перед работой, чтобы точнее
передать детали, получить дополнительную информацию, идеи. [1]
Риггинг — процесс подготовки персонажа к анимации, включающий
создание и размещение внутри трёхмерной модели рига (от англ. Rig оснастка), виртуального "скелета" - набора "костей" или "суставов" (bones,
joints), установления иерархической зависимости между ними и значений
возможных трансформаций для каждой из этих костей. [2]
Скининг — привязка всех точек модели к определённой кости или
нескольким костям для последующей анимации.
Рендеринг — термин в компьютерной графике, обозначающий процесс
получения изображения по модели с помощью компьютерной
программы. [3]
6
Введение
Целью этой выпускной квалификационной работы является создание
короткометражного анимационного фильма, разбор проблем, возникающих
на разных этапах работы над ним, и возможных вариантов их решения.
Рассматриваются все этапы создания мультфильма: идея, раскадровки,
создание эскизов и трёхмерных моделей элементов окружающей среды,
экстерьера зданий и деталей уличной обстановки, разработка персонажа и
также создание его трёхмерной модели, которая в последствии должна
быть анимирована и помещена в заранее смоделированную и
подготовленную среду.
Место действия короткометражного фильма, над которым велась работа, –
улица небольшого тихого города. Мультфильм должен передать атмосферу
спокойной жизни, красоту гармонии города и природы, соответственно,
внешний вид окружающей среды и персонажа должен отвечать тем же
целям. Такое животное как кот отлично подходит на эту роль, именно он
становится главным героем мультфильма.
При создании однотипного пространства целесообразно использовать
различные повторяющиеся модули. Для городской среды это элементы
зданий, ограждения и т.п. Одна из целей этой работы – создание всех
необходимых материалов и последующее модульное формирование
окружающей среды, которая станет местом действия короткометражного
анимационного фильма, она формирует визуальный образ, который служит
фоном для перемещений главного героя. Также некоторые элементы
становятся объектами взаимодействия с персонажем.
Важно также создать модель персонажа, внешний вид которой будет
плавно вписываться в окружающую среду и гармонировать с остальными
предметами, которые зритель увидит на экране. Это необходимо для
7
простоты и четкости восприятия мультфильма как цельной визуальной
картины, что особенно важно именно для короткого метра.
В соответствии с целями этой работы можно выделить такие задачи как
выбор соответствующего программного обеспечение (оценка преимуществ
и недостатков тех или иных вариантов), освоение соответствующих
инструментов и технологий, позволяющих проделать все этапы работы над
созданием короткометражного анимационного фильма.
В первой главе будут рассмотрены подготовительные этапы работы:
разработка более четкого понимания общего визуального образа
мультфильма, работа над эскизами окружающей среды, разработка и
создание концепт-артов персонажа. Создание зарисовок отдельных сцен и
раскадровок.
Во второй главе будет рассмотрен процесс создания модели персонажа и
элементов окружающей среды, работа в программах 3ds Max и ZBrash,
описание нужных для создания анимационного фильма инструментов и
технологий.
В третьей главе рассматривается следующий этап работы, а именно
создание разверток для моделей сложной формы, создание текстурных и
других карт и наложение их на модель.
Затем будут рассмотрены остальные этапы работы над моделью
персонажа, её подготовки к анимации и непосредственно анимация
В последней главе описывается заключительный этап работ: сборка единой
сцены, рендеринг и монтаж видео.
8
Описание используемых информационных
технологий
ZBrush — программа для 3D моделирования, отличительной особенностью
которой является имитация процесса «лепки» трёхмерной скульптуры и
трёхмерный рендеринг в реальном времени, что существенно упрощает
процедуру создания требуемого трёхмерного объекта. Каждая точка
содержит информацию не только о своих координатах XY и значениях
цвета, но также и глубине Z, ориентации и материале. [4]
Autodesk 3ds Max — полнофункциональная профессиональная
программная система для создания и редактирования трёхмерной графики
и анимации. Содержит самые современные средства для художников и
специалистов в области мультимедиа. 3ds Max располагает обширными
средствами для создания разнообразных по форме и сложности
трёхмерных компьютерных моделей, механизм расчета физики, различные
модули визуализации. [5]
Adobe Photosop — многофункциональный графический редактор,
разработанный и распространяемый фирмой Adobe Systems. В основном
работает с растровыми изображениями, однако имеет некоторые векторные
инструменты. [6]
Adobe Premier Pro — программа для профессионального нелинейного
видеомонтажа.
9
1 Создание эскизов и концепт-артов
При создании эскизов персонажа были опробованы разные стилистики
изображения, это позволило определить, что именно наиболее гармонично
будет смотреться в общей картине мультфильма, учитывая её цветовую
гамму и общий образ. Для мультфильма были выбраны пастельные тона и
стиль визуализации, отходящий от реалистичного изображения, но не
сильно искажающий пропорции и текстуры реальных предметов. После
выбора наиболее подходящего варианта были созданы более подробные
концепт-арты, изображающие персонажа в разных ракурсах и обстановке.
Это делалось с учетом раскадровок будущего мультфильма; такой подход
так же позволяет понять, как будет смотреться персонаж в конкретных
ситуациях и, возможно, внести некоторые изменения, а также полностью
отследить этапы его взаимодействия с различными предметами окружения
на протяжении всего мультфильма.
Чтобы лучше выделить главного персонажа – кота – по сравнению с
мягкими, неброскими видами окружающей его среды, изначально был
выбран черный цвет, но при дальнейшей разработке образа главного героя
выяснилось, что глубокий черный цвет визуально разрушает его
принадлежность к изображаемому месту. Это достаточно сильно выделяло
кота на общем фоне, но, в целом, помещение в мультфильм с заданной
стилистикой персонажа с таким внешним видом выглядело слишком
искусственно. Поэтому черный цвет был заменён на более гармонично
сочетающийся с окружающей средой темно-серый. С учетом того, что в
пейзаже городка практически отсутствуют темные насыщенные цвета,
такой выбор отлично отвечает поставленным задачам. Кот по-прежнему
хорошо выделяется на фоне улицы и зданий, и при этом дымчатый оттенок
отлично сочетается с мягкими тонами окружающего его пространства.
Эскизы с различными вариантами окраса представлены на рисунке1.
10
[
[
Рисунок 1 Эскизы персонажа
Было решено отказаться от сильной стилизации и искажения пропорций,
поэтому в качестве референсов для концепт-артов и 3d-моделей
использовались фотографии животных и анатомические схемы.
П р и р а з р а б о т ке в и зу а л ь н о го о б р а з а о к р у ж а ю щ е й с р е д ы в
короткометражном фильме создание эскизов – также важнейший. Именно
на этом этапе определяется стилистика изображения, настроение, которое
она будет передавать. Важную роль в этом также играет выбор цветовой
гаммы. Т.к. действие мультфильма, над которым ведётся работа,
происходит ранним утром, и, в целом, его атмосфера призвана передать
спокойствие и умиротворение, предпочтение при выборе цветов пало в
сторону мягких и спокойных пастельных оттенков (рисунок2).
[
Рисунок 2 Эскиз окружающей среды
Образ маленького городка с неспешной размеренной жизнью был отчасти
навеян произведениями Хаяо Миядзяки, в особенности его работой
11
«Ходячий Замок Хаула», где одним городов, в которых разворачивалось
действие мультфильма, был город-порт с мощеными улочками и
невысокими старыми зданиями.
При создании окружения также очень важно, как будут взаимодействовать
с ним персонажи. Работая над эскизами городской улочки, я продумала
весь путь, который совершит по ней главный герой. Т.к. персонажам
мультфильма является кот, из этого вытекает ещё несколько особенностей:
он может передвигаться не только по горизонтальным поверхностям, но и
карабкаться вверх по стенам и запрыгивать на уступы. В соответствии с
этим необходимо создание дополнительных элементов, которые послужат
опорой для его свободного перемещения в пространстве.
Маршрут главного героя и предметы, окружающие его на этом пути, были
продуманы на стадии создания раскадровок (рисунок3).
[
Рисунок 3 Раскадровки для мультфильма
По раскадровкам можно проследить движение персонажа: кот взбирается
на крышу, отталкиваясь от выступа над фундаментом и оконного карниза и
12
перемещается между домами, используя как трап прислонённую к стене
доску.
13
2 Моделирование
2.1 Моделирование персонажа
Модель персонажа была создана в программе zBrush. Для формирования
основы использовался такой инструмент как zSphere, он отлично подходит,
чтобы наметить общую форму модели, создавая крупные детали. Дерево zсфер, основой которого является сфера, находящаяся у холки кота,
примерно повторяет форму его скелета.
Все действия (добавление и перемещение сфер) производились с
включенной симметрией, чтобы избежать неточностей и искажений при
попытке проделать аналогичную работу на другой стороне модели.
После создания первоначального дерева из z-сфер его форма была немного
изменена, и были добавлены новые сферы на месте суставов реального
животного, а также на спине, чтобы придать модели большее сходство с
настоящим котом. После этого z-сферы били преобразованы в skin, и была
произведена настройка количества полигонов с помощью параметров
Adaptive skin.
Работа над уточнением формы начиналась, когда количество полигонов у
модели не было слишком большим.
Для дальнейшей корректировки формы использовались различные кисти,
особенно были полезны такие как:
Move – для плавной корректировки участков различной площади;
Clay – для наращивания массы;
SnakeHook – для добавления сильно выступающих деталей, таких как,
например, уши;
Standart – для формирования небольших ровных деталей, например носа
или подбородка;
14
Slash3 – для создания тонких линий-впадин между пальцами и на голове,
также для обозначения мышц.
Реверсивная Magnify – для создания глазных впадин.
Так же очень полезным инструментом оказались маски, используемые в
сочетании с move. Это позволило перемещать уже полностью
сформированные части модели, без искажения геометрии, чего было бы
невозможно добиться, используя только кисти. Таким образом можно
изменить длину шеи или спины, перемещая голову или другие части тела.
На этом этапе работы так же использовались референсы: как фотографии,
так и собственные рисунки. Дополнительные мелкие детали такие как
сферы глаз решено было добавить уже в 3ds Max, т.к. модель всё равно
будет перенесена туда для дальнейшей работы.
Возможность загрузки в программу анатомических референсов в виде
текстуры, с последующим применением функции Add To Spotlight,
позволила сделать работу намного более удобной, т.к. эта функция
помещает выбранную текстуру на одну рабочую панель с редактируемой
моделью, позволяя накладывать модель на референс и находить в ней
неточности, добавлять более реалистичные детали. Когда редактирование
модели с изначальным уровнем полигонов исчерпало себя, количество
полигонов было увеличено, с помощью функции Divide раздела Geometry.
По сле этого было продолжено скульптурирование уже более
высокополигональной модели, добавлялись более мелкие детали и
производились уточнения формы настолько, насколько это позволяло
текущее количе ство полигонов. Повышение полигонально сти
производилось несколько раз, при этом каждый раз на каждом новом этапе
продолжалось скульптурирование. В итоге это позволило создать
высокополигональную детализированную модель персонажа (рисунок4).
15
[
Рисунок 4 Этапы создания детализированной модели персонажа
Для последующей ретопологии модель была перенесена в 3ds Max, но
перед этим была произведена оптимизация, т.к. количество полигонов
высокодетализированной модели довольно высоко, был прозведён их
перерасчет: сетка осталось плотной в местах с большим количеством
мелких деталей: голова, окончания конечностей, а на более гладких
участках: бока, спина, количество полигонов было уменьшено (рисунок5).
Эту процедуру желательно было произвести для возможности стабильной
работы с моделью в программе 3ds Max.
[
Рисунок 5 Высокополигональная модель, экспортированная в 3ds Max после оптимизации
После экспорта модели в 3ds Max была произведена ретопология. На
основе высокополигональной модели со слишком частой и неровной
сеткой была построена низкополигональная модель. Основным
инструментом в этой работе являлся инструмент Extend, позволяющий из
16
одного первоначально созданного, подогнанного по размеру и
помещённого в непосредственной близости от высокополигональной
модели, полигона создать низкополигональную модель, добавляя каждый
новый полигон таким образом, что он сразу получается соедидённым
одним или двумя рёбрами и уже существующими полигонами, а так же
повторяет форму экспортированной из ZBrash высокодетализированной
модели. Сначала была создана лишь половина модели, причем работа
начиналась всегда с мест с наибольшим количеством мелких деталей,
модель расширялась, пока не удавалось получить простую и ровную сетку.
Затем отдельные детали были соединены в один объект (рисунок6).
[
Рисунок 6 Процесс работы над ретопологией
Все точки, проходящие по центру модели были выровнены по оси Х, чтобы
можно было применить модификатор mirror, который позволил отразить и
скопировать уже сделанную половину модели, таким способом образовав
цельную форму.
При создании низкополигональной модели важно было учитывать, что в
последствии она будет анимирована. Активнее всего сгибающиеся места
были наиболее тщательно проработаны. А именно: на шее была создана
17
максимально простая и ровная сетка; в местах соединения лап с
туловищем с помощью инструмента cut были проведены дополнительные
рёбра, по которым впоследствии и прошли линии сгибов; в суставах лап
также были добавлены рёбра на местах будущих сгибов, и рёбра,
образующие концентрические круги на выпуклых частях сгиба, это было
нужно для того, чтобы сетка при последующем сгибании максимально
сохраняла свою форму.
2.2 моделирование окружающей среды
Следующим этапом является моделирование архитектурных элементов.
Важным здесь является принцип модульности, использование которого
значительно облегчает создание однотипной среды. В точности по эскизам
были смоделированы предметы, находящиеся на пути главного героя и в
непосредственной близости от него. Остальная же часть города собиралась
как «конструктор» из уже смоделированных архитектурных элементов.
В 3ds Max, который использовался для создания моделей зданий, уже есть
некоторые заготовки архитектурных деталей, которые можно использовать
для этих целей, такие как лестницы, дверные и оконные проёмы. Но
слишком многие из них не подходят по стилистики к остальным,
созданным мной деталям и эскизам, поэтому практически все такие
элементы были смоделированы заново.
Наиболее простые детали были созданы на основе стандартных
примитивов box и cylinder. Для формирования более сложных элементов
использовалось преобразование объектов в editable poly:
Convert To: → Convert to Editable Poly
18
При работе с editable poly использовались различные инструменты,
предоставляемые 3ds Max, особенно часто использовались такие как:
Extrude – выдавливание полигонов внутрь или наружу по их форме;
Connect – соединение ребер между собой одним или несколькими ребрами;
Cut – создание ребра, проходящего через определенные вершины и другие
ребра.
Collapse – объединение нескольких вершин;
Target Weld – объединение вершин притягиванием одной вершины к
другой;
Для создания некоторых элементов использовалась программа ZBrash. В
ней были смоделированы камни мостовой, затем их низкополигональная
версия была экспортирована в 3ds Max, а в ZBrash была продолжена работа
над детализацией формы и фактуры. Для этого использовались
разнообразные кисти, также кисти с включенным режимом альфа. За
основу для альфы были взяты стандартные варианты из ZBrash: Alpha04
вполне подходит для создания текстуры камня. Эти кисти применялись с
различным значением интенсивности, для получения более реалистичной
неравномерной фактуры, в некоторых местах неровности наоборот были
сглажены, также для придания фактуре большей неравномерности,
приближенной к естественному состоянию материала.
[
19
[
Рисунок 7 Модели камней с разным количеством полигонов
На рисунке 7 можно увидеть низкополигональную модель, подготовленную
для экспорта в 3ds Max, и высокополигональную модель, работа над
которой продолжалась в программе ZBrash.
20
3 Текстурирование
3.1 Текстурирование персонажа
Развёртка для последующего текстурирования низкополигональной модели
была сделана в 3ds Max с помощью модификатора Unwrap UVW, который
выбирается из общего списка модификаторов и накладывается на всю
модель. Затем работа продолжалась с функцией Open UV Editor, которая
позволяет работать в редакторе развёрток.
На модель были добавлены швы, с помощью инструмента Point-to-Potnt
Seams, которые проходят по рёбрам сетки. Расположение швов выбиралось
не случайно, они были размещены на тех частях модели, которые меньше
всего видны: на внутренних сторонах лап, животе и т.п.
После того как сетка модели была разделена на части, работа
продолжалась на уровне полигонов: выделялись все полигоны одной
детали, и к ним применялся инструмент pale, позволяющий создать более
ровную сетку на развёртке, затем применялся инструмент relax, делающий
форму детали более естественной и свободной, он позволяет не
растягивать слишком сильно отдельные полигоны, более равномерно
распределяя их площадь.
После такой обработки все детали были разложены на поле развёртки.
Симметричность модели позволила сэкономить место, повысив таким
образом качество текстур. Детали с правой и левой сторон, текстура и
форма для которых должны быть одинаковыми, размещались на одном
месте, точно накладываясь друг на друга (рисунок8).
21
[
Рисунок 8 Развёртка
Текстурная карта для персонажа была сделана на основе его
высокополигональной модели, которая была покрашена в программе
ZBrash. Для этого использовалась стандартная кисть в различных режимах:
с разной настройкой интенсивности цвета, прозрачностью, с добавлением
альфы, а также текстурная кисть. Всё это позволило добиться более
естественного неравномерного окраса. Таким образом крупными кистями
была покрашена вся модель.
После этого был почеркнут объём более мелких деталей (носа, надбровных
дуг, ушей других частей головы, лап) кистями более мелкого размера в
режиме FreeHand. Также более мелкими кистями были прорисованы
детали, которые можно подчеркнуть только цветом, т.к. они не влияют на
форму модели (например просвечивающиеся сосуды на ушах и т.п.).
22
[
Рисунок 9 Модель персонажа после покраски в ZBrash
После того как покраска модели была завершена (рисунок9), с помощью
инструмента Texture Map → Create (рисунок10) была создана текстурная
карта. Чтобы экспортировать её необходимо использовать инструмент
Clone Txtr, добавляющий полученную карту в раздел текстур программы
ZBrash, откуда её уже можно извлечь, воспользовавшись функцией Export.
[
Рисунок 10 Интерфейс инструмента Texture Map
23
Текстура экспортируется только в формате psd, поэтому для уменьшения
занимаемого ею места с помощью редактора Adobe Photoshop она была
переведена в формат jpg, несмотря на то, что в 3ds Max есть возможность
добавлять текстуры формата psd.
Чтобы сделать низкополигональную модель более детализированной, не
увеличивая количества полигонов, было решено создать также карту
нормалей на основе модели из ZBrash. Процесс её создания похож на
процесс создание текстурной карты, за тем только исключением, что
используется инструмент Normal Map → Create NormalMap (рисунок11).
[
Рисунок 11Интерфейс инструмента Create NormalMap
После чего полученная карта (рисунок12) также добавляется в раздел
текстур, экспортируется и переводится в формат jpg, после чего уже
добавляется в материалы 3ds Max.
[
[
Рисунок 12 Текстурная карта и карта нормалей
24
Для материала, который был положен на низкополигональную модель в
программе 3ds Max применялись следующие настройки: в редакторе
материалов в раздел diffuse с помощью функции Bitmap была добавлена
созданная ранее текстурная карта. В разделе Maps есть возможность
добавить и другие карты, в частности карту нормалей – Bump map – также
с помощью функции Bitmap.
После этого, при рендеринге модели мы видим, что она по внешнему виду
она отличается от низкополигональной модели, которая была раньше. На
голове и других частях появились более мелкие черты.
3.2 Текстурирование предметов окружающей среды
Для архитектурных элементов сложной формы были сделаны развёртки с
помощью модификатора UVW Map. Этот модификатор на практике
используется очень часто. Он незаменим, когда разные подобъекты
требуют различных методов проецирования. Данный модификатор
выбирается из общего списка модификаторов панели Modify и может
применяться как ко всему объекту целиком, так и к его отдельным
подобъектам (например, к разным граням) и позволяет не только
использовать для выделенных областей различные предусмотренные типы
проецирования, но и вручную настраивать особенности выбранного типа
под конкретную модель. [7]
Текстуры для этих объектов редактировались в фотошопе таким образом,
чтобы после наложения их на модель подчеркнуть объемные детали. Были
добавлены тени под карнизами окон и под козырьками крыш.
25
Для некоторых объектов использовались текстуры из 3ds Max, такие как
Cellular или Noise.
Для текстурирования крупных объектов большой формы важно, чтобы
текстура была бесшовной, т.е. не должна оставлять швов при заполнении
плоскости, когда одно изображение многократно повторяется, стыкуясь
само с собой. Можно заранее найти подходящую текстуру или
отредактировать текстуру в фотошопе, чтобы она стала бесшовной. Для
этого отлично подходит инструмент штамп.
Для создания фактуры мостовой использовалась модель брусчатки с
большим количеством полигонов, сделанная в редакторе ZBrash.
Низкополигональная версия этой модели (переключение между разными
уровнями количества полигонов производилось в разделе Geometry) была
экспортирована в 3ds Max, а в ZBrash к высокополигональной модели были
добавлены мелкие детали. Затем она была покрашена с использованием
различный кистей, также использовалась зернистая альфа, чтобы
приблизить покраску модели к виду настоящих камней.
В раздел текстур в ZBrash была импортирована текстура гранита, которая
использовалась вместе с кистью. Итоговый результат на рисунке 13.
26
[
Рисунок 13 Покраска камней в ZBrash
Текстура изначально создавалась так, чтобы быть бесшовной, т.е. её можно
копировать сколько угодно раз, соединяя правый край первоначального
кусочка с левым краем скопированного (это работает также для верхнего и
нижнего краёв), не получая при этом заметных швов или стыков на едином
полотне. Благодаря этому мы получаем возможность, проработав
относительно небольшой участок, помещать в сцену намного большие по
площади объекты.
Чтобы добавить детализации низкополигональной модели в 3ds Max, на
основе высокодетализированной, сделанной ранее модели, в редакторе
ZBrash была создана карта нормалей (normal map), карта высот
(displacement map), а также текстурная карта (diffuse map). Создание и
добавление в параметры материала в 3ds Max карты нормалей и
текстурной карты не отличается от аналогичного процесса при
текстурировании персонажа.
Карта высот была создана с помощью инструмента Displacement Map →
Create Displacement Map, затем также как остальные была клонирована в
раздел текстур редактора ZBrash, экспортированна и с помощью
программы Adobe Photoshop переведена в формат jpg.
27
В отличии от normal map, displacement map не просто изменяет текстуру
таким образом, чтобы она казалась более объемной, а изменяет саму сетку
модели (если на ней достаточно полигонов), придавая ей нужную форму. В
нашем случае с помощью карты высот были выдавлены неровности на
камнях и глубокие впадины на их стыках.
В 3ds Max в редакторе материала в разделе Maps (карты) с помощью
функции Bitmap были добавлены все 3 карты.
[
Рисунок 14 Раздел Maps редактора материалов в 3dsMax
Также для них были изменены значения параметра Amount (рисунок14). В
случае с картой высот высокое значение этого параметра приводит к тому,
что форма модели изменяется слишком сильно, образуя вздутия и
неровности там, где их быть не должно, и перекрывая новой
искривившейся сеткой впадины между камнями, которые наоборот
должны быть видны. Опытным путем было подобрано оптимальное
значение интенсивности для воздействия разных карт на внешний вид
модели при её рендеринге. В итоге был получен вполне приемлемый
результат (рисунок15).
28
[
Рисунок 15Часть сцены с мостовой после рендера
Единственным минусом добавления карты высот является сильное
увеличение времени рендеринга для каждого кадра, где присутствует
модель, на которую наложен материал с использованием этой карты, для
короткометражного фильма эта проблема не стоит столь остро, но всё
равно причиняет определённые неудобства. Также это довольно актуально
для рендеринга на компьютерах с низкой вычислительной мощью
процессора и видеокарты, т.к. именно эти ресурсы влияют на скорость
рендеринга. В этом случае приходится все же жертвовать временем ради
более высокого качества итогового изображения.
4 Завершающий этап создания модели
персонажа, добавление шерсти.
После переноса модели в 3ds Max и завершением работы над материалом,
наложенным на модель, следующим шагом будет работа с модификатором
Hair and fur.
Этот модификатор генерирует на выделенных областях поверхности
модели кривые, которые будут имитировать шерсть или волосы. Производя
29
различные действия с этими кривыми, изменяя их направление, длину,
форму можно влиять на то, как при рендеринге будет отображаться шерсть
или волосы.
После добавления шерсти возникла необходимость привести её в
надлежащий вид, используя инструмент Style Hair. Шерсти было придано
другое направление, чтобы она стелилась вдоль туловища, т.к. без
дополнительных настроек после применения модификатора Hair and fur
шерсть очень неестественно топорщится во все стороны.
Так же был изменён цвет шерсти; увеличено значение параметра Specular и
уменьшено Glossiness, чтобы она не блестела неестественно сильно. На
голове и кончиках лап шерсть была сделана более короткой, по примеру
реальных кошек.
5 Ригинг
Анимация персонажа и прочих объектов, присутствующих в
короткометражном мультфильме также была произведена в программе 3ds
Max. Для персонажа был выбран метод костной анимации, в работе с
которым первым этапом является риггинг —создание скелета. Для этого
использовался инструмент bones (кости). Скелет создавался вручную:
кости «позвоночника» были выравнены по оси Х, для конечностей сначала
были сделаны кости только с левой стороны, затем с помощью
инструмента mirror они были скопированы в правую часть скелета,
сохраняя привязку к костям «позвоночника». При работе со скелетом
модель персонажа для удобства была «заморожена» (freeze) и сделана
полупрозрачной, чтобы сохранить возможность сверять размер и
положение костей скелета с готовой моделью, не задевая при этом саму
модель. Это необходимо для корректного движения модели при
30
последующей анимации, также необходимо разместить кости таким
образом, чтобы стыки между ними соответствовали ребрам в сетке модели,
по которым она будет в последствии сгибаться.
Следующий этап работы со скелетом — добавление контроллеров
сгибания HI Solvers (history independent solvers), использование этого
инструмента позволяет сгибать конечности более реалистично – каждый
сустав гнётся только в одну сторону, ту направление в которую было
задано в момент добавления солвера (рисунок16).
[
Рисунок 16 Интерфейс инструмента HI Solver
После этого непосредственный контроль над положением кости теряется и
переходит к солверу, от его положения зависит положение костей, к
которым был применён данный инструмент (рисунок17).
[
Рисунок 17 Процесс работы над ригом персонажа
31
Солверы были использованы для риггинга костей конечностей, шеи и
спины. Их можно было бы использовать и для костей хвоста, но это
ограничило бы возможности анимации т.к. этот инструмент позволяет
сгибать «суставы» только в одном направление, а для реалистичного
движения хвоста необходимо, чтобы он мог свободно двигаться в
нескольких плоскостях.
Учитывая всё это, для риггинга хвоста было решено использовать
контроллеры, созданные на основе примитивов torus. Каждый из них
позволяет хвосту сгибаться в одной плоскости, т.о. при использовании двух
контроллеров осуществляется его свободное движение.
Контроллер, располагающийся в основании хвоста, был привязан к костям
спины с помощью инструмента select and link, с помощью него же первая
кость хвоста была прикреплена к самому контроллеру. Затем для каждой
последующей кости была установлена зависимость по вращению между
положением кости и положением контроллера. Т.о. при вращении
контроллера хвост полностью сгибается в определённой плоскости. Эта
зависимость была установлена с помощью инструмента Wire parameters →
Transform → Rotation → Zero Euler XYZ → Х Rotation, при чем в
последнем пункте указывается, зависимость по какой оси необходимо
установить (рисунок18).
32
[
Рисунок 18 Добавление зависимости положения одного элемента от положения другого
Пара контроллеров, установленная в основании хвоста, позволила ему
свободно сгибаться в любом направлении, но этого недостаточно для
естественности движений. Поэтому между первой парой контроллеров и
кончиком хвоста была установлена ещё одна пара. Привязка костей к
контроллерам начиная от средней кости хвоста и до кончика была сделана
способом, аналогичным с первой парой. Также с помощью инструмента
select and link контроллеры в каждой паре были связаны между собой, и
внешний контроллер из второй пары привязан к кости хвоста. Это
позволило добиться довольно реалистичной анимации, когда основная
часть хвоста движется не очень активно, но при этом кончик совершает
довольно много движений или сгибается сильней, чем основание.
Чтобы избежать случайных смещений, искажений при последующей
анимации и движении скелета, вращение контроллеров было ограничено
по всем осям кроме одной, той, на сгибание хвоста в которой они должны
влиять, при чем контроллеры из одной пары могут вращаться только в двух
разных плоскостях. Так же было ограничено перемещение контроллеров в
пространстве (move) и изменение их размера (scale) (рисунок19).
33
[
Рисунок 19
6 Скиннинг
Следующий этап работы – скиннинг – наложение низкополигональной
модели на заготовленный заранее скелет, привязка всех точек модели к
определённой кости или нескольким костям.
Всё это осуществляется с помощью модификатора Skin, который
выбирается из общего списка модификаторов и накладывается на модель,
когда внутри неё уже есть готовый скелет, топология которого примерно
соответствует топологии модели. Изначально привязка точек к костям
осуществляется автоматически, что далеко не всегда происходит
корректно. Часто сразу после применения модификатора сгибание костей
скелета приводит к беспорядочному движению точек модели на месте
сгиба. Модификатор не везде может самостоятельно верно оценить какую
точку к какой кости нужно привязать, поэтому необходима последующая
коррекция действий модификатора.
Для уточнения и изменения степени привязки точек модели к костям
необходимо активировать режим Edit Envelopes во вкладке Parameters
раздела Modify.
34
Для наглядной работы с изменением степеней привязки точек к костям
удобен инструмент Paint Weight, он позволяет изменять веса (степень
привязки) точек непосредственно на модели (рис20)
[
Рисунок 20 процесс скининга
Имеется возможность изменять диаметр области, на которую оказывается
воздействие, что также довольно удобно, особенно при работе с более
мелкими деталями, где скапливается намного больше точек. Точкам,
попадающим под воздействие инструмента, весы назначаются
неодинаково: той что в центре даётся наибольшая зависимость от
выбранной кости, чем точки ближе к краю выделяемой области, тем
влияние кости на них будет меньше. Степень влияние кости на различные
точки также отображается в виде цвета. Красным цветом выделены
области, в которых располагаются точки, привязанные только к
выделенной кости, оранжевым и желтым – те, в которых точки находятся
под влиянием выбранной кости в большей или меньшей степени, но также
35
они привязаны и другой кости или костям, синим – те, на точки в которых
положение выделенной кости практически не влияет.
Минусом этого инструмента является то, что очень сложно добиться
точных значений там, где это необходимо. Весы назначаются удобным
способом, но страдает точность. Чтобы восполнить этот пробел было
решено воспользоваться инструментом Weight Table (рис21).
[
Рисунок 21 Интерфейс инструмента Weight Table
Инструмент Weight Table позволяет видеть степень привязки к каждой
кости всех выделенных точек. Для большинства костей это значение,
конечно, будет равно нулю, т.к. точка привязывается только к ближайшей к
ней костям. Вес, или степень привязки точки к кости отображается в
таблице в численном виде, здесь его можно редактировать и устанавливать
максимально точные значение, но такой способ тоже имеет свои минусы:
из-за большого количества костей в скелете увеличивается время поиска
нужной ячейки таблицы, в которой необходимо отредактировать данные
или ввести новые.
Тем или иным образом, после расстановки нужных значений для каждой
точки модель стала адекватно реагировать на движение скелета, стало
возможным приступить к следующему этапу работы – анимации.
7 Анимация
Для анимации персонажа в основном использовался режим Set Key (рис.
22), который позволяет вручную расставлять ключи на временной шкале. В
36
отличии от режима Auto Key, где ключи расставляются автоматически при
любом изменении положения модели. Режим Auto Key по-своему удобен,
но было решено его не использовать, во избежание случайной установки
ключей там, где этого не требуется или случайного изменения уже
существующих ключей.
[
Рисунок 22Работа в режиме Set Key
Основными объектами, для которых расставлялись ключи на временной
шкале, были контроллеры HI Solvers, отвечающие за движение
конечностей, головы, изгиб позвоночника, они перемещались при помощи
инструмента move, а также контроллеры, созданные вручную на основе
примитивов torus, отвечающие за движение хвоста, они вращались при
помощи инструмента rotate.
Для демонстрации сцены с нужных ракурсов были созданы две камеры
(PhysCamera), которые также были анимированы, что позволило получить
более динамичные сцены.
Также пришлось увеличить длительность стандартной временной шкалы
3ds Max, т.к. предоставляемых по умолчанию 100 кадров определённо не
хватает для создания анимационного фильма.
8 Сборка сцены и рендеринг
После завершения работы над каждой моделью в отдельности, необходимо
поместить их все в одну сцену, настроить освещение и камеры.
При добавлении в существующую сцену новой модели необходимо
учитывать, что материалы, уже использующиеся в сцене и материалы,
37
наложенные на модель, не должны находиться в одной и той же ячейке в
окне редактора материалов, иначе невозможно будет использовать их
одновременно. На модель наложится материал, уже присутствующий в
сцене, заменяя собой нужный, или наоборот, материал, используемый в
добавляемой модели заменит материал сцены. В таком случае придётся
заново создавать один из них, поэтому лучше заранее позаботиться о том,
чтобы они находились в разных ячейках.
После того как все объекты объединены в одну сцену, можно начинать
расставлять свет и камеры.
В нашем случае были использованы стандартные источники света, а
именно Target Spot. Затем была произведена настройка источников света:
были включены тени General Parameters → Shadows, назначена Mental Ray
Shadow Map, этот режим позволяет добиться довольно высокого качества
изображения теней при рендеринге.
Также были созданы две камеры, это позволило получить вид на сцену с
разных ракурсов. Движение камер было анимировано: для более
динамичных сцен одна из них облетает вокруг персонажа, другая медленно
проплывает, постепенно приближая изображение. Все последующие
движения камер были анимированы с учётом раскадровки.
Чтобы избежать потери времени и данных при рендеринге, решено было
получить видеоряд в виде множества отдельных кадров. Если рендерить
сцену сразу в какой-либо видео формат, то при каком-либо сбое,
случившимся до завершения рендеринга все уже полученные данные будут
недоступны. В случае с отдельными кадрами, каждая новая картинка
становится полностью доступна, как только завершится рендеринг
текущего кадра, поэтому даже если произойдёт какой-либо сбой, все
полученные данные останутся в рабочем состоянии, и не придётся
переделывать уже совершённую работу.
38
Рендеринг делится на несколько частей, в зависимости от того, сколько
ракурсов сменится на протяжении мультфильма. В настройках указывается
первый кадр, с которого будет начат рендеринг, и последний – после
которого он прекратится. Этот промежуток указывается несколько раз –
для каждой камеры свой.
После получения всех кадров в виде отдельных изображений формата jpg
из них создавался видеоряд с помощью программы Adobe Premier Pro.
39
Заключение
Основная цель работы была достигнута: был освоен ряд инструментов и
технологий, применяемых для создания 3D моделей и анимации.
Кроме этого были созданы готовые к анимации модели персонажей и
различные элементы окружения. Используя полученные навыки и знания,
была создана и подготовлена к визуализации сцена, на основе которой был
создан короткометражный анимационный фильм.
40
Список используемой литературы
[1] Википедия Свободная энциклопедия [Электронный ресурс] URL:
h t t p s : / / r u . w i k i p e d i a . o r g / w i k i /
%D0%A0%D0%B5%D1%84%D0%B5%D1%80%D0%B5%D0%BD%D1%81
[2] Википедия Свободная энциклопедия [Электронный ресурс] URL:
https://ru.wikipedia.org/wiki/%D0%A0%D0%B8%D0%B3
Википедия Свободная энциклопедия [Электронный ресурс] URL: [3]
h t t p s : / / r u . w i k i p e d i a . o r g / w i k i /
%D0%A0%D0%B5%D0%BD%D0%B4%D0%B5%D1%80%D0%B8%D0%B
D%D0%B3
[4] Википедия Свободная энциклопедия [Электронный ресурс] URL:
https://ru.wikipedia.org/wiki/ZBrush
[5] Википедия Свободная энциклопедия [Электронный ресурс] URL:
https://ru.wikipedia.org/wiki/Autodesk_3ds_Max [Электронный ресурс]
[6] Википедия Свободная энциклопедия [Электронный ресурс] URL:
https://ru.wikipedia.org/wiki/Adobe_Photoshop
[7] Директор инфо: Компьютер пресс [Электронный ресурс] URL: http://
www.mir3d.ru/learning/930/
41
Выпускная квалификационная работа выполнена мною самостоятельно.
Использованные в работе материалы из опубликованной научной, учебной
литературы и Интернет имеют ссылки на них.
Отпечатано в ____ экземплярах.
Библиография ____ наименований.
Один экземпляр сдан на кафедру.
Дата
Я, Юрина Ольга Сергеевна, не возражаю против размещения на сайте
Факультета искусств СПбГУ моей выпускной квалификационной работы и
ее результатов
__________ ___________(расшифровка подписи)
Отзывы:
Авторизуйтесь, чтобы оставить отзыв