Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Wiwkin

.pdf
Скачиваний:
22
Добавлен:
18.03.2015
Размер:
4.82 Mб
Скачать

1.5. Трехмерная графика и анимация

Для создания трехмерного пространства и анимации применяют 3D-редакторы. В трехмерном пространстве можно создавать, перемещать, вращать 3D-объекты. В современных 3D-редакторах имеются специальные инструменты, которые заставляют объекты самостоятельно двигаться, то есть создают на их основе анимацию.

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

Трехмерный проект обычно называют «сценой».

Во время съемок реального фильма режиссеры сначала подбирают актеров и решают, где именно будут происходить съемки, а при необходимости создают декорации. Затем на месте съемки устанавливаются камеры и осветительные приборы, актеров гримируют и, наконец, производят съемку. Поскольку с первого раза достичь наилучшего результата практически невозможно, в большинстве случаев режиссеры снимают одну и ту же сцену несколько раз.

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

Моделирование

Втрехмерном пространстве не существует никаких предметов. Виртуальный мир наполняется разными объектами, которые создает пользователь в 3D-редакторе. Это относится к трехмерным персонажам, зданиям, горам, лесам

илюбым другим вещам виртуального мира. Процесс создания трехмерных объектов называется моделированием, а сами объекты – моделями. В отличие от рисованного изображения, трехмерную модель можно вращать и перемещать в трех измерениях, глядя на нее со всех сторон.

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

11

Анимация

В отличие от моделирования, анимация не является обязательным этапом создания трехмерных проектов. Например, если дизайнер работает над проектом интерьера квартиры, ему не нужно заставлять объекты двигаться, поскольку для такого проекта важно показать внешний вид и размещение предметов в помещении. Если же создается рекламный ролик или какой-нибудь эффект наподобие взрыва, то без анимации не обойтись. Анимация подразумевает изменение положения объектов, которые присутствуют в трехмерном пространстве, во времени. Например, если требуется сделать анимацию падающего карточного домика, то размещение карт в первом кадре будет отличаться от их положения во втором и последующих кадрах. Таким образом, в процессе создания анимации 3D-художнику необходимо разместить уже созданные им объекты в каждом кадре.

Съемка

Во время просмотра фильма или телепередачи вы можете заметить, что режиссер часто изменяет точку съемки. Например, в начале трансляции футбольного матча часто показывают вид стадиона с высоты птичьего полета, затем основное внимание уделяется игрокам на поле и тренерам. А теперь представьте себе, как было бы неинтересно смотреть матч, если бы его показывали только с одной точки, не изменяя положение камеры и не используя другие камеры, расположенные в разных местах стадиона.

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

3D-художник, работающий над анимационным проектом, должен уметь правильно подобрать расположение камер, чтобы точка съемки была наиболее

12

удачной, а также продумать, как камеры будут перемещаться в процессе анимации.

Освещение

Благодаря свету мы различаем окружающие нас предметы. Лучи света, исходящие от многочисленных источников, начиная от Солнца и заканчивая электрическими лампочками, многократно преломляются и отражаются от различных поверхностей, что дает нам картину окружающего нас мира.

Виртуальное пространство, в котором работают 3D-художники, в отличие от реального мира, не имеет источников освещения. Чтобы увидеть, что происходит в виртуальном мире, его нужно осветить. Для имитации освещения в трехмерной графике используются специальные объекты – источники света. Чтобы освещение 3D-объектов было похоже на настоящее, приходится учитывать множество факторов: где расположен источник света, с какой силой он светит, от каких предметов отражается и т. д.

Текстурирование

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

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

В трехмерной графике текстурой может служить как фотография реального объекта, наложенная на 3D-модель, так и двумерный рисунок, созданный в программе типа Adobe Photoshop. Существуют и другие типы текстур.

Раскраска всех объектов виртуального мира – это сложное и трудоемкое занятие. Однако появляются неограниченные возможности для творчества, поскольку предметам можно придавать такой вид, который они не могут иметь в реальности (например, на объект, повторяющий форму чайника, можно наложить текстуру клубники и т. д.).

13

Визуализация

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

Контрольные вопросы

1.Что такое анимация и мультипликация?

2.Как можно классифицировать виды компьютерной анимации?

3.Охарактеризуйте GIF-анимацию.

4.Охарактеризуйте Flash-анимацию.

5.Особенности трехмерного проекта.

6.Перечислите и охарактеризуйте основные этапы трехмерной анимации.

14

Раздел 2. Программный комплекс трехмерной графики

Blender

Программный комплекс Blender является средой разработки рендера/ анимации/игр. Программа с открытым исходным кодом, свободно распространяемая и поддерживаемая Blender Foundation. Скачать Blender бесплатно можно с сайта www.blender.org.

Основные особенности программного комплекса Blender:

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

cохранение всей сцены в одном файле .blend, любые изображения, звуки или шрифты могут быть упакованы в сцену для более простого ее переноса;

маленький размер исполняемого файла;

большое количество доступных расширений, созданных на языке Py-

thon;

портирование под самые известные операционные системы – Windows, Linux, FreeBSD, Mac OS X, SGI Irix 6.5, Sun Solaris 2.8 (sparc).

Вданном пособии рассматривается версия Blender 2.48а.

2.1.Интерфейс Blender

Интерфейс состоит из многих компонентов: окна, заголовки, контексты, панели, вкладки, кнопки, движки, переключатели и т. д.

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

2.1.1. Экран Blender

После запуска Blender загружается «сцена по умолчанию», в которой присутствуют куб, лампа и камера (вид сверху) (рис. 2.1.1). Можно изменить сцену по своему желанию, сохранить внесенные изменения, нажав «Ctrl+U», после чего Blender будет запускаться с новой сценой. Если необходимо загрузить именно исходную сцену, то нажмите File Load Factory Settings.

15

Рис. 2.1.1. Основное окно программы Blender

Основные элементы экрана

Экран содержит три окна: сверху (узкая полоска) окно пользовательских настроек (User Preferences Window), самое большое – 3D-окно (3D Viewport Window) и внизу – окно кнопок (Buttons Window).

Тип окна. Каждое окно может менять свой тип, который можно вы-

брать в меню оконного типа (Window Type).

Заголовок окна – светло-серая полоска, содержащая меню и/или иконки кнопок. Заголовок, если присутствует, может располагаться в верхней (как у окна кнопок) или нижней (как у 3D-окна) части окна. Слева в заголовке отображается иконка текущего типа окна. Большинство заголовков окон, следом за кнопкой выбора типа окна, имеют набор меню. Эти меню позволяют получить непосредственный доступ ко многим функциям и командам. Меню могут быть скрыты кнопкой с изображением треугольника, расположенного слева. Меню изменяются в зависимости от типа окна, выделенного объекта и режима. Они показывают только те действия, что могут быть применены в настоящий момент.

16

Главное меню (Main Top Menu) находится в окне пользовательских на-

строек (File, Add, Timeline, Game, Render, Help).

Текущий экран (Current Screen) – в Blender встроено 5 готовых экранов:

анимация, моделирование (по умолчанию), материалы, секвенсор, скрипты. Каждый экран запоминает последнюю используемую сцену. Выбирая

разные экраны, вы будете переключаться на разные сцены. Все изменения размеров и типов окон происходят только в текущем экране.

Вы можете добавить свой экран, выбрав строку Add New. Новый экран будет копией предыдущего. Щелкнув на имени экрана, вы сможете его переименовать (например, 6-MyScreen). Можно удалить текущий экран, нажав на крестик и подтвердив удаление.

Текущая сцена (Current Scene) – позволяет организовать работу. Например, разбить проект или игру на отдельные сцены и переключаться между ними. Выбор, добавление, удаление сцен возможно в меню заголовка, кнопка SCE (Scene). При добавлении сцены (ADD NEW) можно выбрать один из четырех вариантов:

Empty – создает новую пустую сцену.

Link Objects – создает новую сцену с текущими объектами. Их изменения

водной сцене приводят к изменению во всех других сценах.

Link ObData – создает новую сцену на основе текущей (сетки, материалы и т. д.). В новой сцене вы можете менять их позицию, но изменения сетки, материалов повлияют на объекты в других сценах.

Full Copy – создает полностью независимую копию текущей сцены со всеми находящимися в ней объектами.

Для удаления текущей сцены нажмите на крестик справа от ее имени и подтвердите удаление.

Информация о ресурсах (Resource Information) – справа в заголовке ок-

на настроек показаны параметры сцены (чтобы увидеть, нужно нажать на треугольничек рядом с «File»):

вобъектном режиме: показано количеcтво точек, вершин (Vertex, Ve); полигонов, граней (Face, Fa); объектов (Object, Ob) первая цифра – общее колво объектов в сцене, через дефис – количество выделенных объектов. Количество занятой памяти (Memory, Mem);

врежиме редактирования: показано количество точек (Vertex, Ve: выделенных – общее количество); ребер (Edge, Ed: выделенных – общее количество); полигонов (Face, Fa: выделенных – общее количество). Количество занятой памяти.

17

Текущий кадр (Current frame) – применяется при анимации.

Затенение 3D-вида (Viewport shading) – Blender может по-разному отображать объекты. Есть несколько вариантов, их выбор зависит от требования работы и от мощности компьютера.

Textured – самый ресурсоемкий режим, он отрисовывает текстуры в

3D-виде.

Shaded – затеняет объекты в зависимости от установленных в сцене ламп. Solid – затеняет в зависимости от настроек OpenGL.

Wirefarme – показывает только ребра объектов.

Bounding Box – показывает габариты объекта в виде параллелепипеда.

3D-манипуляторы (3D Transform Manipulator) – вид-

жеты, позволяют трансформировать объекты (перемещение, вращение, масштабирование).

Слои (Layers) – позволяют облегчить насыщенную сцену, разместив объекты на разных слоях. Можно включать и отключать слои для отображения тех или иных объектов. Чтобы переместить объект на другой слой, нужно выбрать этот объект, щелкнув по нему правой клавишей мыши, и нажать клавишу «M». Для того чтобы сделать видимыми несколько слоев, нужно щелкнуть по иконкам этих слоев, удерживая клавишу «Shift».

Куб, лампа и камера введены в сцену для того, чтобы при начальном тестовом рендере отобразился объект, а не пустое место.

3D-курсор, изначально находящийся в середине куба, используется для определения места, куда будут добавляться объекты. Перемещение 3D-курсора осуществляется нажатием левой клавиши мыши в нужной точке окна.

Опорная точка (Rotation/Scaling Pivot point) – все деформации и при-

вязки тела происходят относительно этой точки (рис. 2.1.2) .

Рис. 2.1.2. Опорная точка

Панель редактирования (Editing Panel Group) – нижнее окно кнопок имеет несколько групп кнопок. Полоска из кнопок позволяет переключаться между разными контекстами. После того как пользователь выберет основной контекст, подконтекст в основном выбирается Blender автоматически, в зависимости от активного объекта (рис. 2.1.3).

18

Кнопка игры

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Кнопка затенения

 

 

 

 

 

 

 

 

 

Кнопка окружения

 

 

 

 

 

 

 

 

 

Кнопка объекта

 

 

 

 

 

 

 

 

 

Кнопка текстуры

 

 

 

 

 

 

 

 

 

Кнопка редактирования

 

 

 

 

 

 

 

Кнопка материала

 

 

 

 

 

 

 

Кнопка сцены

 

 

 

 

 

 

Кнопка лампы

 

 

 

 

 

 

Основные контексты

Подконтексты

Рис. 2.1.3. Кнопки панели редактирования

Например, если выбран контекст затенения «Shading», и лампа в этот момент выделена, то подконтекст покажет кнопки управления освещением. Если выбран Mesh-объект (например, куб), тогда подконтекстом будут кнопки материалов, а если выбрать камеру, то подконтекстом будут кнопки World (окружение). Каждая кнопка имеет свои панели редактирования. Щелкая мышкой по кнопкам, можно вызывать различные панели редактирования.

2.1.2. Типы окон

Каждое окно Blender может изменять свой тип с помощью меню оконного типа (рис. 2.1.4).

Рис. 2.1.4. Типы окон

19

Типы окон разделены по функциональности:

Scripts Window (Окно скриптов) – позволяет использовать встроенные скрипты на языке Python.

File/Image Browsers (Браузер файлов/картинок) – появляется автоматически при работе с файлами/картинками: открытие, сохранение, импорт, поиск.

Node Editor (Редактор нодов) обработка и компоновка материалов и изображений.

Buttons Window (Окно кнопок) – вкладки и кнопки для настройки. Outliner – помогает найти и организовать объекты.

User Preferences (Окно пользовательских настроек) – меню и опции для настройки Blender. Не сохраняются в .blend файле.

Text Editor (Текстовый редактор) – здесь можно сделать записи к проекту или написать скрипт на языке Python.

Audio Window (Окно Аудио) – отображает звуковые файлы и их согласование с кадрами анимации.

Timeline (Временная шкала) – отображает ключевые кадры анимации, перемещает к любому кадру.

Video Sequence Editor (Редактор видеопоследовательности) – собирает части видео, изображения, сцены в одно целое.

UV/Image Editor (Редактор графики) – рисование, редактирование, наложение текстур.

NLA Editor (NLA редактор) – управляет нелинейной анимацией.

Action Editor (Редактор действий) – редактор анимации, объединяет отдельные действия в их комбинации.

IPO Curve Editor (Редактор IPO-кривых) – редактор кривых, анимирует перемещения, изменения объектов.

3D View (3D-просмотр) – графическое отображение сцены, работа с моделями.

2.1.3. Конфигурация, пользовательские настройки

При запуске Blender на экране сверху появляется окно пользовательских настроек. Если установить курсор на линию, отделяющую 3D-окно от окна пользовательских настроек, нажать левую кнопку мыши и потянуть эту линию вниз, то можно будет увидеть множество настроек и опций. Каждая вкладка отображает свои настройки. Рассмотрим некоторые из них (рис. 2.1.5).

20