Вы находитесь на странице: 1из 1160

ФАЙЛ СКАЧАН С САЙТА: www.makegame.3dn.

ru

Автор: Светлана Шляхтина


http://www.compress.ru

Иллюстрированный самоучитель по
3D Max для новичков
СОДКРЖАНИЕ
3D Studio MAX: первые шаги. Урок 1. Введение
Теоретические аспекты работы
Создание и простейшее редактирование стандартных примитивов
Создание стандартных примитивов
Простые варианты выделения и редактирования стандартных примитивов
Изучение навигационных возможностей
Создание объектов на основе примитивов

3D Studio MAX: первые шаги. Урок 2. Моделирование объектов на основе


примитивов
Создание расширенных примитивов
Создание и редактирование конструкций из примитивов
Выравнивание объектов
Объединение объектов в группы
Клонирование объектов
Зеркальное отражение объектов
Другие методы выделения объектов
Создание именованных наборов объектов
Комплексное использование различных вариантов выделения, выравнивания и
клонирования объектов при создании сцен

3D Studio MAX: первые шаги. Урок 3. Основы сеточного моделирования


Теоретические аспекты
Типы подобъектов и принцип их редактирования
Моделирование при помощи вершин
Моделирование при помощи ребер
Сеточное моделирование на конкретных примерах
Яйцо из шара
Гантель из цилиндра
Морской еж из геосферы
Кубик Рубика из куба
Ограненные кристаллы из геосферы
Футбольный мяч из геосферы
Шахматная пешка из цилиндра

3D Studio MAX: первые шаги. Урок 4. Основы работы со сплайнами


Что такое сплайны
Создание сплайнов
Геометрические фигуры

1
Текст
Линии
Составные сплайновые формы
Редактирование сплайнов
Редактирование на уровне вершин
Изменение типа подобъектов
Редактирование на уровне сегментов
Редактирование на уровне сплайнов

3D Studio MAX: первые шаги. Урок 5. Создание моделей методом


лофтинга
Лофтинг и loft-объекты
Создание loft-объектов
Редактирование loft-объектов
Добавление в loft-объект новых сечений
Удаление сечений
Замена сечения в loft-объекте
Редактирование сплайнов пути и сечений на уровне параметрической формы
Изменение контуров пути и сечений на уровне подобъектов
Проблема скручивания
Создание loft-объектов на основе составных сплайнов
Создание loft-объектов на основе разомкнутых сплайнов
Примеры создания простейших loft-моделей
Незаточенный карандаш
Рамка
Заточенный карандаш
Ниспадающая складками ткань
Гайка
Фрагмент кованой мебельной ручки

Моделирование с использованием булевых операций. Урок 7


Теоретические основы булева моделирования
Моделирование при помощи булева объединения
Моделирование при помощи булева вычитания
Создание вложенных булевых объектов
Редактирование булева объекта
Примеры объектов, полученных с использованием булева моделирования
Пиала
Волчок
Ключ
Оконная рама
Кружка с ручкой
Головка для накидного гаечного ключа

3D Studio MAX: первые шаги. Урок 8. Работа с материалами


Редактор материалов
Создание материалов на основе базовых текстурных карт
Создание материалов путем настройки базовых параметров
Создание материалов на основе фотографий и обычных текстур
Более сложные варианты создания материалов
2
3D Studio MAX: первые шаги. Урок 9. Нестандартные материалы
Светлана Шляхтина
Материал Architectural
Материал Top/Bottom
Материал Double Sided
Материал Blend
Материал Multi/Sub-Object
Материал Composite
Материал Raytrace
Материал Matte/Shadow

3D Studio MAX: первые шаги. Урок 10. Применение текстурных карт


Типы карт
Diffuse Color
Bump
Куб, облицованный кафельной плиткой
Волокнистая деревянная поверхность
Opacity
Лист апельсина
Полупрозрачные сферы
Елочный шар с узором
Reflection
Светящиеся объекты
Отражение фонового изображения на чайнике
Зеркальное отражение рюмки и стакана
Стеклянный шар с отражением
Грязный стакан
Refraction
Стакан с карандашом и рюмка с кусочками льда
Self-Illumination
Гравированная надпись

3D Studio MAX: первые шаги. Урок 11. Основы проецирования


материалов
Параметрическое проецирование
Применение модификатора UVW Map
Проецирование на уровне объекта
Бутылка с этикеткой
Проецирование на уровне подобъектов
Флакон с крышкой и этикеткой
Плитка шоколада с гравировкой
Стена сложной конструкции
Головка для накидного гаечного ключа

3D Studio MAX: первые шаги. Урок 12. Основы освещения сцены


Теоретические аспекты

3
Источник света Omni
Источник света Free Directional
Источник света Target Spot
Источник света Free Spot
Практические примеры настройки освещения сцены
Разноцветные колонны
Объемный текст с текстурной тенью
Светильник на стене
Освещенный домик

3D Studio MAX: первые шаги. Урок 13. Введение в анимацию


Базовые инструменты управления анимацией
Технология создания анимации на базе ключевых кадров
Создаяие анимации в режиме автоматической установки ключевых кадров
Создание анимации в режиме ручной установки ключевых кадров
Редактирование ключей
Практические примеры создания простых анимаций
Мигающий елочный шар
Открывающийся ящик
Катящийся по прямой торус
Катящийся по кругу шар

3D Studio MAX: первые шаги. Урок 14. Камеры в сцене


Теоретические аспекты
Управление камерами
Параметры настройки камер
Создание и настройка камеры
Примеры настройки камеры в статичных сценах
Выбор удачной точки обзора сцены с учетом глубины резкости
Интеграция 3D-объектов в фон
Анимация камер
Перемещение по прямолинейной траектории
Осмотр сцены
Слежение за движущимся объектом
Облет по криволинейной траектории

3D Studio MAX: первые шаги. Урок 15. Атмосферные эффекты


Fog
Стандартный туман
Слоистый туман
Текст, окутанный туманом
Volume Fog
Пейзаж с небом и облаками
Volume Light
Светящаяся звезда
Солнечные лучи, проходящие сквозь стекло
Fire Effect
Горящий запальный шнур

3D Studio MAX: первые шаги. Урок 16. Системы частиц. Часть 1


4
Теоретические аспекты
Spray
Огни фейерверка
Разноцветное конфетти
Ливневый дождь
Snow
Снегопад
Кружащиеся кленовые листья
РАrrау
Взрыв геосферы
Движущийся косяк рыбы

3D Studio MAX: первые шаги. Урок 17. Системы частиц. Часть 2


Теоретические аспекты
Система частиц Blizzard
Система частиц Super Spray
Система частиц PCloud
Деформации частиц
Примеры
Клубящийся дым
Мыльные пузыри
Стакан с газировкой
Плывущее облако
Льющаяся из трубы вода

3D Studio MAX: первые шаги. Урок 18. Геометрические пространственные


деформации
Теоретические аспекты
FFD (Box) и FFD (Cyl)
Гриб
Падающая капля
Displace
Отпечаток на камне
Фантастический горный пейзаж с озером
Conform
Дорога среди холмов
Ползущая по дну морская звезда
Bomb
Взрывающийся текст

3D Studio MAX: первые шаги. Урок 19. Динамика в сцене


Имитация динамики твердых и мягких тел
Рассыпаем кубик Рубика
Разбиваем бильярдную пирамиду
Имитация ткани
Набрасываем покрывало
Вешаем полотенце
Вешаем шторы
Имитация гибких тел
Натягиваем сетку
Имитация воды
Отправим медузу в плавание
5
3D Studio MAX: первые шаги. Урок 20. Работа с модулем Particle Flow
Теоретические аспекты
Создание и настройка системы частиц
Воздействие на частицы физических сил и деформаций отражения
Настройка отображения частиц при визуализации
Примеры
Горящий костер
Праздничный фейерверк
Разбивающаяся ваза

3D Studio MAX: первые шаги. Урок 21. Иерархия и прямая кинематика


Теоретические аспекты
Понятие иерархии
Управление иерархическими цепочками
Примеры анимации иерархически связанных объектов
Кручение колеса
Вращение Земли вокруг Солнца
Слежение за движущимся объектом
Шевеление щупалец морского обитателя

3D Studio MAX: первые шаги. Урок 22. Инверсная кинематика


Теоретические аспекты
Понятие инверсной кинематики
Управление вращением и перемещением объектов
Настройка пределов ограничений
Назначение приоритетов
Блокирование IK-сетей
Анимация объектов при обратной кинематике
Примеры моделирования и анимации объектов с учетом инверсной кинематики
Крутящаяся булава
Свисающие бусы
Анимированная лампа
Поднимающийся кузов

3D Studio MAX: первые шаги. Урок 23. Построение иерархий с помощью


системы костей Bones
Теоретические аспекты
Понятие системы костей
Создание структуры костей
Связывание структуры костей с моделью
Анимирование модели
Примеры анимации объектов, имеющих кости
Плывущий осьминог
Анимированный семафор
Плывущий дельфин

3D Studio MAX: первые шаги. Урок 24. Персонажная анимация


средствами Character Studio
Построение скелета
Помещение скелета внутрь модели

6
Связывание скелета с моделью
Подключение готовой анимации и корректировка связей
Создание анимации по методу Footstep
Создание анимации по методу Freeform

3D Studio MAX: первые шаги. Урок 25. Визуализация в Mental Ray

Теоретические аспекты
Имитация каустики (Caustics)
Настройка глобального освещения (Global Illumination, GI)
Примеры визуализации сцен в Mental Ray
Топазовые бусы
Елочный шар
Солнечные лучи, проходящие сквозь стекло

3D Studio MAX: первые шаги. Урок 26. Использование модуля Video Post.
Часть 1
Теоретические аспекты
Примеры сцен с визуальными эффектами Video Post
Пешки в фокусе и вне фокуса камеры
Кружащиеся в вихре мерцающие частицы
Светящаяся на небе звезда
Сверкающая на небосклоне молния
Движущийся по контуру лазерный луч

3D Studio MAX: первые шаги. Урок 27. Использование модуля Video Post
(часть 2)
Теоретические аспекты
Примеры сцен с композитингом
Ткань с рисунком
Сцена с анимированным логотопом
Анимация с переключением камер
Ролик с заставкой

3D Studio MAX: первые шаги. Урок 28. Использование модуля Hair and
Fur
Теоретические аспекты
Создание волос на базе геометрической поверхности
Создание волос на базе набора сплайнов
Использование механизма Instance
Примеры сцен, полученных с использованием Hair/Fur-систем
Семейство актиний
Трава и кактусы
Верблюд в меховой шубе

3D Studio MAX: первые шаги. Урок 29. Визуализация средствами V-Ray.


Часть 1
Теоретические аспекты
Формирование отражений и преломлений
Имитация каустики (Caustics)

7
Настройка глобального освещения (Global Illumination, GI)
Примеры визуализации сцен в V-Ray
Елочный шар
Сверкающий кристалл

3D Studio MAX: первые шаги. Урок 30. Визуализация средствами V-Ray.


Часть 2

Использование карт смещения


Массив из высотных зданий
Полузатопленная саванна
Пролет деревянного забора
Создание меха
Свисающая с шара махровая ткань
Гриб в траве

8
3D STUDIO MAX: ПЕРВЫЕ ШАГИ
 Теоретические аспекты работы
 Создание и простейшее редактирование стандартных примитивов
 Создание стандартных примитивов
 Простые варианты выделения и редактирования стандартных примитивов
 Изучение навигационных возможностей
 Создание объектов на основе примитивов

Трехмерная графика и анимация, открывающие двери в захватывающий мир виртуальной


реальности, занимают особое место среди компьютерных технологий, а пакет 3D Studio
MAX компании Discreet является самым популярным среди приложений для трехмерного
моделирования, анимации и рендеринга. Он обладает всеми необходимыми средствами для
создания игровых миров и анимационных роликов и потому используется большинством
разработчиков компьютерных игр и незаменим в компьютерной мультипликации и
художественной анимации. Дизайнерам и инженерам 3D Studio MAX предоставляет
средства фотореалистической визуализации для анализа разрабатываемого проекта,
проведения презентаций и создания маркетинговых материалов. Широко применяется он в
архитектурном проектировании для создания дизайна интерьеров. Давно оценили данное
приложение и специалисты по телевизионным заставкам, клипам и спецэффектам в кино,
пакет широко применяется при подготовке рекламных и научно-популярных роликов для
телевидения.
Программа обладает интерактивным объектно-ориентированным интерфейсом, реализует
расширенные возможности создания и управления анимацией, хранит историю жизни
каждого объекта, предоставляет возможности для создания разнообразных световых
эффектов и имеет открытую архитектуру, что позволяет расширять возможности
приложения за счет подключаемых плагинов.
Пакет 3D Studio MAX достаточно сложен в освоении и имеет огромное число настроек,
инструментов, меню и т.п. Даже простое перечисление его инструментов займет немало
времени и вместе с тем не даст ни малейшего представления о нюансах работы. Поэтому
знакомиться с возможностями пакета мы будем последовательно и на конкретных примерах,
а на первом уроке просто попытаемся немного освоиться с интерфейсом программы,
экспериментируя с простыми геометрическими объектами.

ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ РАБОТЫ

Для работы в программе предназначено стандартное для Windows-программ главное


командное меню, а также панели инструментов, которые располагаются по краям рабочего
окна и обеспечивают быстрый доступ практически к любому элементу интерфейса и к
большинству команд главного меню. Основной панелью инструментов является Main
Toolbar (Главная панель инструментов, рис. 1) — она открывается по умолчанию и
содержит наиболее часто используемые кнопки инструментов. Следующей по рангу идет
командная панель Command Panel (рис. 2), объединяющая шесть панелей с элементами
управления, каждая из которых открывается щелчком по соответствующей кнопке:

 Create (Создать) — объединяет элементы управления для создания различных типов


объектов;

9
 Modify (Изменить) — содержит элементы управления для изменения и
редактирования объектов и применения к ним различных модификаторов;
 Hierarchy (Иерархия) — предназначена для управления связями;
 Motion (Движение) — объединяет элементы управления для настройки контроллеров
анимации и траекторий движения;
 Display (Отображение) — позволяет управлять отображением объектов сцены в окнах
проекций;
 Utilities (Утилиты) — содержит разнообразные вспомогательные программы,
большинство из которых являются подключаемыми плагинами.

Рис. 1. Панель инструментов Main Toolbar

Рис. 2. Командная панель Command Panel


Все создаваемые в программе элементы называются объектами, к ним относятся не только
любые геометрические тела, но и формы, камеры, источники света и др. Объектами можно
управлять, модифицируя их произвольным образом, объединяя в группы, связывая друг с
другом и пр., чтобы получить в конечном счете нужную сцену. Процесс создания объектов
называется моделированием. Моделирование осуществляется в окнах просмотра проекций,
которые занимают основную часть экрана и позволяют рассмотреть объекты с различных
позиций и в разных проекциях. По умолчанию на экране отображаются четыре одинаковых
прямоугольных окна, соответствующие проекциям: Top (Сверху), Front (Спереди), Left
(Слева) и Perspective (Перспектива) — рис. 3. Для просмотра объектов больше всего
подходит окно Perspective (Перспектива), однако для моделирования оно не очень удобно. В
реальности список проекций гораздо шире и включает дополнительно проекции: User
(Пользовательская), Right (Справа), Back (Сзади), Bottom (Снизу) и Camera (Камера). При
желании можно изменить вариант отображения проекций, отказавшись от каких-то
проекций и (или) заменив одни проекции на другие. В части проекций, таких как Top, Front,
Left, Bottom, Back и Right, объекты отображаются в виде каркасов, а в проекциях Perspective
и Camera — с раскрашенной поверхностью. Независимо от набора проекций и варианта их
отображения активное окно проекций всегда выделяется белым цветом.

10
Рис. 3. Изображение, представленное в проекциях по умолчанию
Все объекты делятся на категории, выбор которых осуществляется в палитре с помощью
соответствующих кнопок (рис. 4). Выделяют следующие категории объектов:

 Geometry (Геометрия) — объединяет объекты, имеющие визуализируемые


геометрические тела;
 Shapes (Формы) — предназначена для создания линий, NURBS-кривых и двумерных
форм, которые без специальных инструкций не визуализируются;
 Lights (Источники света) — данную категорию составляют объекты, освещающие
сцену и улучшающие ее реализм;
 Cameras (Камеры) — объединяет объекты-камеры, являющиеся дополнительными
при создании сцен;
 Helpers (Вспомогательные объекты) — при помощи объектов данной категории
значительно упрощается конструирование сложных сцен и настройка анимаций;
 Space Warps (Объемные деформации) — включает объекты, отвечающие за
различные виды искажений окружающего пространства;
 Systems (Системы) — объединяет объекты, контроллеры и иерархии,
предназначенные для создания геометрических тел, объединенных определенным
видом поведения.

Рис. 4. Выбор категории Geometry

11
В каждой категории существует целый список типов объектов, например в категорию
Geometry (Геометрия) входят типы: Standard Primitives (Стандартные примитивы),
Extended Primitives (Улучшенные примитивы) и др. Нужный тип выбирается из списка
(рис. 5).
Рис. 5. Выбор типа Standard Primitives для категории Geometry
Каждый тип, в свою очередь, объединяет множество разнообразных объектов, в частности
тип Standard Primitives позволяет создавать коробки (Box), сферы (Sphere), цилиндры
(Cylinder), торусы (Torus), чайники (Teapot), конусы (Cone), геосферы (GeoSphere), трубы
(Tube), пирамиды (Pyramid) и плоскости (Plane).
Каждый созданный объект имеет имя, цвет и обладает некоторыми параметрами. Под
параметрами объекта понимается набор свойств, описывающих объект в трехмерном
пространстве, например его координаты, длина, ширина и высота. Имя и цвет фиксируются
в поле Name and Color (Имя и цвет) и их можно изменить, параметры отображаются в
процессе создания объекта на панели Create (Создать), а в дальнейшем — на панели Modify
(Изменение), и их набор определяется типом объекта. Например, для чайника (рис. 6),
помимо его размеров, список параметров включает параметры Body (Тело), Handle (Ручка),
Spout (Носик) и Lid (Крышка), часть из которых при желании несложно отключить (рис. 7).

Рис. 6. Настройка параметров для объекта Рис. 7. Изменение внешнего вида объекта
Teapot по умолчанию Teapot при изменении его параметров —
большой чайник превратился в небольшую
сахарницу

СОЗДАНИЕ И ПРОСТЕЙШЕЕ РЕДАКТИРОВАНИЕ СТАНДАРТНЫХ ПРИМИТИВОВ

Создавать и редактировать объекты можно в любой проекции, но некоторые возможности


редактирования в разных проекциях отличаются. Принцип создания определяется самим
объектом. Для одних объектов, например чайников (Teapot) или сфер (Sphere), достаточно
щелкнуть мышью в левой верхней точке объекта, перетащить мышь и отпустить ее в правой
нижней точке. Для других типов объектов процесс может оказаться более длительным,
например при создании коробок (Box) или цилиндров (Cylinder) нужно будет указать еще и
глубину объекта, а значит, последовательность будет выглядеть так: щелкнуть => перетащить,
не отпуская кнопку мыши => отпустить кнопку мыши => перетащить => щелкнуть. Отметим,
что изменить параметры объекта можно в любой момент, так как в программе запоминаются
все этапы его создания и редактирования.

СОЗДАНИЕ СТАНДАРТНЫХ ПРИМИТИВОВ

Вначале поэкспериментируем с обычными сферами. Для создания объектов откройте


панель Create (Создать), щелкнув на соответствующей кнопке панели Command Panel, — по

12
умолчанию данная панель открывается автоматически. На панели Create выберите категорию
объектов Geometry (Геометрия), в списке типов объектов укажите тип Standard Primitives
(Стандартные примитивы), а затем в группе Object Type (Типы объектов) выберите
инструмент Sphere (Сфера).
Сразу обратите внимание, что на панели Create находятся несколько групп элементов:
Object Type (Типы объектов), Name and Color (Имя и цвет), Creation Method (Метод
создания) и др. Слева от названия групп можно увидеть либо знак «–», означающий, что
группа развернута (тогда видны все ее параметры), либо знак «+», когда группа свернута и
виден лишь ее заголовок. Для сворачивания/развертывания любой из групп достаточно
щелкнуть курсором по заголовку группы.
Теперь приступим к созданию объекта, что, как уже отмечалось, можно сделать в любом из
окон проекций. Для примера создадим сферу в окне проекции Top (Вид сверху). Для этого
просто щелкните мышью в любом месте окна Top, перетащите ее, а затем отпустите кнопку
мыши — в итоге сфера появится во всех четырех окнах проекций (рис. 8). Чтобы расширить
поле для экспериментов, аналогичным образом создайте еще несколько однотипных сфер,
например как показано на рис. 9.

Рис. 8. Появление созданной сферы Рис. 9. Результат создания нескольких


сфер
ПРОСТЫЕ ВАРИАНТЫ ВЫДЕЛЕНИЯ И РЕДАКТИРОВАНИЯ СТАНДАРТНЫХ ПРИМИТИВОВ

Самым простым инструментом для выделения объектов является Select Object (Выделить
объект), находящийся на главной панели инструментов Main Toolbar и выделяющий объект
при щелчке по нему. О выделении объекта свидетельствует изменение его цвета. Выделять
объекты можно и по-другому: щелкнув и перетащив по диагонали указатель мыши таким
образом, чтобы выделяемые объект или объекты попали внутрь очерченной области.
После выделения объекта с ним можно производить самые разные манипуляции:
перемещать и поворачивать, изменять имена и параметры, удалять и т.п. Для начала выделите
первый из созданных объектов, щелкнув по нему инструментом Select Object (Выделить
объект), и удалите его обычным образом, нажав клавишу Delete (Удалить). Затем выделите
второй объект и измените его имя, установив курсор в текстовом поле группы Name and
Color (Имя и цвет) и сменив имя Sphere02 на Sphere01 (рис. 10). Аналогичную операцию
проведите для всех остальных объектов. В этой же группе можно изменить и цвет объекта,
щелкнув на цветном квадратике Object Color (Цвет объекта) и выбрав в открывшейся
цветовой палитре подходящий цвет (рис. 11), — для примера попробуйте перекрасить все
объекты в другие цвета. А затем сохраните созданную сцену в файле при помощи стандартной
команды сохранения File=>Save (Файл=>Сохранить).

13
Рис. 11. Выбор цвета для объекта в окне
Рис. 10. Изменение имени объекта Object Color
Теперь разберемся с перемещением объектов. За перемещение отвечает инструмент Select
and Move (Выделить и передвинуть), находящийся на главной панели инструментов Main
Toolbar. Чтобы выбрать его, щелкните по соответствующей кнопке или выберите
одноименную команду из контекстного меню — стоит заметить, что в контекстном меню
продублирован и ряд других наиболее часто используемых команд. Инструмент Select and
Move (Выделить и передвинуть) позволяет передвигать объекты сцены в пространстве.
Технология его применения проста — достаточно щелкнуть на объекте и перетащить его
нужным образом. При этом совсем необязательно, чтобы предварительно объект был выделен,
так как выделение будет произведено автоматически. Попробуйте поперемещать ранее
созданные шары в окне Perspective и расположить их в конечном счете по какому-то
принципу, например как на рис. 12.

Рис. 12. Результат перемещения объектов


На панели Main Toolbar имеются специальные инструменты для масштабирования
объектов — Select and Scale (Выделить и масштабировать) и поворотов их в пространстве —
Select and Rotate (Выделить и повернуть). В реальности под инструментом Select and Scale
скрываются три различных инструмента масштабирования объектов — об этом
свидетельствует особая метка в нижнем правом углу кнопки с инструментом. В число
скрытых инструментов входят:

 Select and Uniform Scale (Выделить и равномерно масштабировать), предназначенный


для равномерного масштабирования объектов сцены;
 Select and Non-Uniform Scale (Выделить и неравномерно масштабировать),
отвечающий за неравномерное масштабирование;

14
 Select and Squash (Выделить и сжать), позволяющий сжимать объекты сцены вдоль
одного направления, при этом объект автоматически расширяется вдоль двух других
направлений.

Для выбора скрытых инструментов в 3D Studio MAX нужно щелкнуть мышью на кнопке с
инструментом и задержать на ней курсор мыши — это приведет к появлению скрытых
инструментов, а затем, не отпуская кнопку мыши, следует навести ее указатель на одну из
появившихся кнопок инструментов — и нужный вариант инструмента окажется выбранным.
Выберите инструмент Select and Uniform Scale и откорректируйте масштаб всех сфер так,
чтобы он постепенно уменьшался от первой сферы к каждой последующей, а затем сделайте
копию последней сферы при помощи команды Edit=>Clone=>Copy
(Редактировать=>Клонировать=>Копия), уменьшите ее масштаб, присвойте объекту имя
Sphere05 и разместите сферы, например, так, как показано на рис. 13.

Рис. 13. Изображение после масштабирования и очередного перемещения сфер


После этого выделите все объекты сцены инструментом Select Object (Выделить объект),
заключив их в своеобразный контейнер, и поэкспериментируйте с поворотом объектов в
пространстве при помощи инструмента Select and Rotate (Выделить и повернуть) (рис. 14).
Скорее всего, при повороте линия, вдоль которой мы ранее выстраивали сферы, нарушится.
Дело в том, что перемещением сфер мы занимались в окне Perspective — так было гораздо
нагляднее — и при этом не обращали никакого внимание на окна других проекций. В итоге
пространственное положение сфер оказалось совершенно случайным, что и проявилось при
повороте. Поэтому откажитесь от последнего действия командой Edit=>Undo
(Редактировать=>Откат), чтобы не нарушать иллюзию удачного расположения сфер.

Рис. 14. Процесс поворота всех объектов в пространстве

15
Теперь перейдем к изменению параметров объектов. Выделите объект Sphere01 и откройте
панель Modify (Изменение), на которой станет доступен целый перечень характерных для
данного объекта параметров, любой из которых можно изменить. Имейте в виду, что далеко
не всегда все параметры видны на панели Modify — многие объекты имеют большой список
параметров, который не умещается в предназначенной для этой цели области, и тогда
параметры приходится пролистывать по очереди или увеличивать размеры области
параметров. Догадаться о назначении многих параметров несложно, например изменение
параметра Radius (Радиус) приведет к увеличению или уменьшению объекта; параметр
Segments (Сегменты) отвечает за степень детализации объектов: при его увеличении
выпуклые объекты становятся более ровными, а при уменьшении — будут иметь более
неровную границу; параметр Smooth (Сглаживание) предназначен для настройки степени
сглаживания объекта и т.д. Поэкспериментируйте с размерами, а затем, корректируя значения
параметра Segments (Сегменты), попробуйте добиться формирования сфер с более четкими
краями, так как при настройках параметра Segments (Сегменты), устанавливаемых по
умолчанию, сферы получаются недостаточно гладкими. Затем аналогичные настройки
произведите для всех остальных шаров (рис. 15).

Рис. 15. Результат корректировки параметров на панели Modify

ИЗУЧЕНИЕ НАВИГАЦИОННЫХ ВОЗМОЖНОСТЕЙ

Навигацией называется перемещение по пространству сцены без изменения ее состояния —


при навигации изменяется только вид сцены, поскольку перемещается лишь точка обзора, из
которой наблюдают сцену, но не ее объекты. В отличие от двумерных графических пакетов, в
трехмерной графике навигации уделяется гораздо больше внимания, так как размер окон
проекций, предназначенных для обзора сцены, ограничен. Даже при самых лучших
параметрах оборудования он окажется недостаточным, и в процессе создания сцены ее не раз
придется оценивать с различных ракурсов, в разном масштабе и в нескольких проекциях. За
решение этой задачи отвечают инструменты навигации, которые находятся в нижнем правом
углу окна программы 3D Studio MAX (рис. 16).

Рис. 16. Навигационные инструменты


Осваивать навигационные возможности программы нужно на каком-то примере, поэтому
создадим новую пустую сцену командой File=>Reset (Файл=>Перезагрузить), сохранив при
желании сцену со сферами. На новой сцене нарисуйте произвольный объект из группы
стандартных примитивов.

16
Изменить масштаб активного окна проекций можно инструментом Zoom (Масштаб),
находящимся в правом нижнем углу окна программы. Выбрав данный инструмент, щелкните
мышью в одном из окон проекций и, не отпуская клавишу мыши, перетащите ее указатель
вверх — отображение сцены в данном окне увеличится (рис. 17 и 18). Аналогичная операция,
но с перемещением указателя мыши вниз приведет к уменьшению масштаба. Для изменения
масштаба сразу во всех окнах проекций предназначен инструмент Zoom All (Масштаб для
всех) — операция производится аналогичным образом.

Рис. 17. Исходный вид окон проекций Рис. 18. Результат увеличения масштаба в
окне Perspective
Добавьте к сцене еще пару объектов, сознательно создавая их так, чтобы они не были видны
в окне Perspective, активизируйте окно Perspective, а затем щелкните на инструменте
навигации Zoom Extents (Масштаб сцены). В результате программа автоматически установит
такой масштаб для активного окна, при котором в нем будут отображены все объекты сцены
(рис. 19). Обратите внимание, что под кнопкой Zoom Extents скрываются два инструмента:
Zoom Extents (Масштаб сцены), которым мы только что пользовались, и Zoom Extents
Selected (Масштаб выделенных объектов сцены), применяемый для автоматической установки
масштаба для активного окна проекции, при котором выделенный объект сцены будет
располагаться в центре и занимать основную часть окна проекции (рис. 20). При выделении
нескольких объектов изменение масштаба будет относиться ко всем выделенным объектам.
Инструменты Zoom Extents All (Масштаб сцены для всех окон) и Zoom Extents All Selected
(Масштаб выделенных объектов сцены для всех окон) по своему воздействию аналогичны
инструментам Zoom Extents и Zoom Extents Selected, за исключением того, что изменение
масштаба распространяется на все окна проекций сразу.

Рис. 19. Вид окна Perspective после Рис. 20. Вид окна Perspective после
автоматической корректировки масштаба автоматической корректировки масштаба
инструментом Zoom Extents инструментом Zoom Extents Selected для
выделенного объекта
17
Теперь обратите внимание на инструмент Field-of-View (Зона обзора), предназначенный для
изменения перспективы, и Region Zoom (Масштаб области), отвечающий за изменение
масштаба области. По умолчанию виден инструмент Field-of-View (Зона обзора), который
доступен в окнах проекций Perspective и Camera, а инструмент Region Zoom (Масштаб
области) скрыт под ним и предназначен для изменения масштаба во всех проекциях, кроме
Perspective и Camera. Чтобы сориентироваться, вначале выберите инструмент Field-of-View
(Зона обзора), активизируйте окно Perspective и, не отпуская кнопку мыши, переместите
указатель мыши вначале вверх, а потом вниз, что и приведет к изменению перспективы. После
этого выберите инструмент Region Zoom (Масштаб области), щелкните в любом другом окне,
кроме окна Perspective, и перетащите указатель мыши таким образом, чтобы заключить в
прямоугольную рамку тот участок сцены, который необходимо рассмотреть более детально.
После отпускания кнопки мыши очерченная область займет все пространство текущего окна.
Не менее важны инструмент Pan (Прокрутка) и группа инструментов Arc Rotate (Вращать
по дуге). Первый отвечает за перемещение сцены внутри окна, а второй позволяет вращать по
дуге точку обзора, благодаря чему можно изучить интересующие объекты сцены со всех
сторон, и объединяет следующие инструменты:

 Arc Rotate (Вращать по дуге) — предназначен для свободного вращения точки обзора
сцены вокруг центра обзора;
 Arc Rotate Selected (Вращать по дуге относительно выделенных объектов) —
позволяет вращать точку обзора сцены относительно выделенных объектов;
 Arc Rotate SubObject (Вращать по дуге относительно выделенных подобъектов) — с
его помощью можно вращать точку обзора сцены относительно выделенных
подобъектов.

Для примера попробуем воспользоваться самым простым инструментом из данной группы


— инструментом Arc Rotate (Вращать по дуге). Активизируйте окно Perspective и выберите
инструмент Arc Rotate — это приведет к появлению изображения вспомогательной
окружности с четырьмя небольшими квадратиками (рис. 21). Поперемещайте указатель мыши
внутри окна Perspective, не нажимая никаких кнопок, и обратите внимание на изменение
внешнего вида указателя: на вспомогательной окружности у него будет один вид, а при
попадании в квадратики — другой. Соответственно и результаты поворота будут напрямую
определяться тем, из какой точки и при каком виде указателя будет начат поворот. В отличие
от обычного поворота точки обзора сцены вокруг центра обзора, при повороте из квадратиков-
указателей одновременно с вращением будет производиться перемещение объектов
относительно центра обзора (рис. 22).

Рис. 21. Окно Perspective после выбора Рис. 22. Пример поворота объектов с их
инструмента Arc Rotate перемещением инструментом Arc Rotate

18
Последний из навигационных инструментов — Min/Max Toggle (Переключатель Min/Max)
— позволяет переключаться в режим одного окна: активное окно занимает всю область
просмотра, благодаря чему можно рассмотреть все детали сцены.

СОЗДАНИЕ ОБЪЕКТОВ НА ОСНОВЕ ПРИМИТИВОВ

Как несложно догадаться, множество окон проекций в программе 3D Studio MAX


предоставляется в распоряжение пользователя не просто так. Разбирая примеры, мы создавали
стандартные примитивы в тех проекциях, в которых просто захотелось это сделать; наблюдали
внешний вид сцены в окне Perspective и совершенно не обращали внимания на другие окна
проекций. Так было проще и понятнее разобраться с некоторыми начальными приемами
работы, однако в реальной работе данный путь неверен. Создавать тот или иной объект
следует с учетом его положения в каждой перспективе, иначе результата не добиться.
Попытаемся из нескольких примитивов смоделировать простейший трехмерный объект в
виде снеговика и добиться того, чтобы снеговик был действительно единым целым, а не
представлял собой просто набор разрозненных примитивов. Будем условно считать, что
снеговик состоит из двух сфер и одного конуса, который будет играть у него роль шляпы. В
этом случае в проекциях Front (Спереди) и Left (Слева) мы должны видеть все три
примитива, нарисованные друг на друге, а в проекции Top (Сверху) — все примитивы должны
быть наложены друг на друга.
Создайте новую сцену, инструментом Pan (Прокрутка) переместите сцену внутри окна
проекции Left вниз (рис. 23), возьмите инструмент Sphere (Сфера) из группы Standard
Primitives и нарисуйте в окне проекции Left два шара один поверх другого, при
необходимости подкорректируйте их положение друг относительно друга (рис. 24). Затем
активизируйте инструмент Cone (Конус) и постарайтесь создать конус, который станет
шляпой снеговика. Имейте в виду, что создавать конус гораздо удобнее в окне Perspective, по
крайней мере на стадии начального освоения программы. Возможно, что изначально конус у
вас будет выглядеть примерно так, как показано на рис. 25. Теперь необходимо передвинуть
конус на предназначенное ему место, причем отрегулировать положение конуса следует во
всех трех проекциях — Front (Спереди), Left (Слева) и Top (Сверху). Результат должен
напоминать рис. 26. Чтобы убедиться, что нужный результат достигнут, повращайте снеговика
по дуге инструментом Arc Rotate (Вращать по дуге), а также повращайте его в пространстве
инструментом Select and Rotate (Выделить и повернуть) — рис. 27. Напоследок
отрегулируйте цвета, и, возможно, окончательный результат будет напоминать рис. 28.

Рис. 23. Окно Left после перемещения сцены Рис. 24. Появление двух сфер

19
Рис. 25. Появление конуса Рис. 27. Вращение снеговика
инструментом Select and Rotate — видно,
что все составляющие элементы
находятся на своих местах, а значит,
задача выполнена

Рис. 26. Вид сцены после корректировки


положения конуса в трех проекциях

Рис. 28. Готовый снеговик


Попробуйте выполнить теперь более сложную задачу — создать по аналогии со снеговиком
овальный стол, также взяв за основу три стандартных примитива: конус с обрезанной верхней
частью в качестве столешницы стола и два одинаковых цилиндра, которые послужат для него
ножками.
Конус с обрезанной верхушкой создается при помощи инструмента Cone (Конус), как и
обычный конус, — разница заключается лишь в том, что для обычного конуса значение
параметра Radius 2 (Радиус 2) равно нулю, а для конуса с обрезанной верхушкой — какому-то
положительному числу. Причем значение параметра Radius 2 должно быть меньше параметра
Radius 1, если вершина конуса направлена вверх, и больше — в противном случае.
В данном примере разумнее создавать все три примитива в окне проекции Left (Слева), а
затем корректировать внешний вид изображения в других проекциях. Обратите внимание на
то, что ножки стола одинаковые (значит, вначале создается первая ножка, затем она
копируется командой Clone (Дублировать), которую можно выбрать из контекстного или
главного меню). Чтобы симметрично расположить ножки столешницы, обратите внимание на
координаты объекта, которые появляются в нижней части окна программы при выделении
объекта инструментом Select and Move (Выделить и передвинуть). Совсем необязательно
перемещать объект мышью — в ряде случаев (в частности, при перемещении ножек стола)
гораздо удобнее вручную ввести его координаты, и объект точно так же переместится. В

20
нашем примере у обеих ножек координаты по осям Y и Z должны быть одинаковы, поэтому
их гораздо проще ввести вручную (рис. 29). Кроме того, не забывайте, что довольно часто
гораздо удобнее определять нужные размеры примитивов не перемещением мыши, а на
панели Modify (Изменение) путем ручного ввода соответствующих параметров. Вполне
возможно, что полученный в итоге стол будет напоминать представленный на рис. 30.

Рис. 29. Ручной ввод координат для левой Рис. 30. Созданный стол в четырех
ножки стола проекциях

21
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 2. МОДЕЛИРОВАНИЕ
ОБЪЕКТОВ НА ОСНОВЕ ПРИМИТИВОВ
Создание расширенных примитивов
Создание и редактирование конструкций из примитивов
Выравнивание объектов
Объединение объектов в группы
Клонирование объектов
Зеркальное отражение объектов
Другие методы выделения объектов
Создание именованных наборов объектов
Комплексное использование различных вариантов выделения, выравнивания и
клонирования объектов при создании сцен

На первом уроке мы немного разобрались с интерфейсом программы 3D Studio Max,


экспериментируя со стандартными примитивами (Standard Primitives). А теперь сделаем
следующий шаг и попытаемся освоить чуть более сложный вид примитивов — Extended
Primitives (Расширенные примитивы) — и одновременно более подробно изучим допустимые
в их отношении операции. Сразу оговоримся, что все рассматриваемые ниже операции можно
применять к самым разным объектам 3D Studio Max. Однако поскольку мы пока осваиваем
только примитивы, то и операции будем отрабатывать именно на них.

СОЗДАНИЕ РАСШИРЕННЫХ ПРИМИТИВОВ

Набор стандартных примитивов дополняется группой расширенных примитивов (Extended


Primitives), часть из которых, например ChamferBox (Коробка с фаской) и ChamferCyl
(Цилиндр с фаской), на первый взгляд напоминают соответствующие примитивы из группы
Standard Primitives — Box (Коробка) или Cylinder (Цилиндр). Однако при внимательном
рассмотрении параметров данных примитивов можно заметить, что у примитивов
ChamferBox (Коробка с фаской) и ChamferCyl (Цилиндр с Фаской) их больше — имеются
еще дополнительные параметры, позволяющие оформлять фаску и избавляться тем самым от
острых кромок, которые отсутствуют у любых объектов в реальном мире.
Для примера создайте произвольный объект на основе примитива ChamferBox с длиной и
шириной в 25 пикселов и высотой в 50 пикселов. Для лучшего обзора перейдите в режим
отображения единственной проекции Perspective, щелкнув на кнопке Min/Max Toggle
(Переключатель Min/Max) (рис. 1).

Рис. 1. Появление объекта ChamferBox — фаска пока отсутствует


22
Выделите объект, активируйте панель Modify (Редактировать) и обратите внимание на
дополнительные параметры Fillet (Фаска) и Fillet Segs (Число сегментов фаски). По
умолчанию первый из них равен нулю, а значит, фаска отсутствует. Начните постепенно
увеличивать значение параметра Fillet (Фаска) и внимательно следите за изменением объекта,
кромки граней которого начинают постепенно стачиваться. Затем, также путем перебора,
подберите оптимальное, на ваш взгляд, значение параметра Fillet Segs (Число сегментов
фаски) — рис. 2 и 3. Увидеть все сегменты фаски можно, временно отключив флажок Smooth
(Сглаживание). Поэкспериментируйте немного с примитивами ChamferBox (Коробка с
фаской) и ChamferCyl (Цилиндр с фаской) и с их параметрами, чтобы получить примерно
такую же картинку, как показана на рис. 4.

Рис. 2. Результат добавления фаски к


объекту ChamferBox

Рис. 3. Вид панели Modify после добавления


фаски к объекту

Рис. 4. Результат создания серии объектов ChamferBox и ChamferCyl

23
Ознакомимся теперь в общих чертах с другими примитивами данной группы, в которую
также входят:

 Hedra (Многогранник) — граненый примитив, позволяющий имитировать природные


кристаллы;
 Oil Tank (Цистерна) — цилиндр, форма оснований которого может варьироваться от
практически плоской до сферической;
 Spindle (Веретено) — цилиндр, форма оснований которого может варьироваться от
практически плоской до конической;
 Gengon (Граненая призма) — призма, к которой можно добавить фаски по ребрам
боковой поверхности;
 RingWave (Волнообразное кольцо) — примитив с круговой структурой, являющийся
вариацией стандартного примитива Tube (Труба) с фигурной внутренней частью;
 Prism (Призма) — треугольная призма, для которой возможно изменение угла наклона
основания к боковым граням.
 Torus Knot (Узловой тор) — примитив, предназначенный для имитации различных
узлов и закручивания;
 Capsule (Капсула) — цилиндр, основания которого представляют собой
полусферические поверхности;
 L-Ext (Выдавливание L-профиля) — примитив, позволяющий создавать объекты,
близкие к прокатному профилю «уголок»;
 C-Ext (Выдавливание С-профиля) — примитив, обеспечивающий получение объектов,
близких к прокатному профилю «швеллер»;
 Hose (Шланг) — примитив, предназначенный для имитации широкого спектра
вытянутых объектов, ограниченных двумя однотипными поверхностями.

Попробуйте поэкспериментировать с названными примитивами и создать, например,


несколько объектов на основании простых в настройке примитивов Hedra и Torus Knot (рис.
5 и 6).

Рис. 5. Группа кристаллов, созданная на


основе примитива Hedra
Рис. 6. Набор замысловатых узлов,
полученных на основе примитива Torus
Knot
Обратите внимание, что практически все примитивы из группы Extended Primitives имеют
довольно большое число используемых при их построении параметров, причем для каждого
типа примитивов своих. Попробуем разобраться с нюансами настройки объектов на основе
примитива Hose, отличающегося наиболее длинным списком параметров. Выберите примитив
Hose и создайте на его основе произвольный объект — изначально он будет напоминать
резьбу на болте (рис. 7).

24
Рис. 7. Исходный вид объекта на основе примитива Hose
Выделите объект, активируйте панель Modify (Редактировать) и обратите внимание на не
помещающийся на экране список параметров (рис. 8). Уменьшите значение параметра Cycles
(Циклы) до 1, и вместо резьбы болта вы увидите что-то наподобие заготовки для вазы (рис. 9).
Отрегулируйте значения параметров в блоке Common Hose Parameters (Общие параметры
шланга), как показано на рис. 10, переверните объект и для получения более гладкой
поверхности увеличьте значение параметра Sides (Стороны) в блоке Hose Shape (Форма
шланга) — перед вами появится изображение обычной гири, используемой для взвешивания
на ручных весах (рис. 11). Измените параметры в соответствии с рис. 12, и вы получите
заготовку для рюмки (рис. 13) и т.д.

25
Рис. 9. Заготовка для вазы

Рис. 10. Настройка параметров в блоке


Common Hose Parameters

Рис. 11. Гиря для взвешивания


Рис. 8. Окно параметров для примитива
Hose

26
Рис. 12. Настройка параметров для
создания рюмки

Рис. 13. Заготовка для рюмки

СОЗДАНИЕ И РЕДАКТИРОВАНИЕ КОНСТРУКЦИЙ ИЗ ПРИМИТИВОВ

ВЫРАВНИВАНИЕ ОБЪЕКТОВ

Для выравнивания объектов используется команда Align (Выровнять), вызываемая из


командного меню Tools (Инструменты), или набор кнопок на панели инструментов Main
Tools. Познакомимся с выравниванием на примере создания модели простого трехмерного
логотипа ювелирной компании на основе примитивов Hedra и Torus Knot. Естественно, после
создания объекты из примитивов нужно выровнять и откорректировать положение объектов
во всех трех проекциях, так как изначально их размещение вряд ли будет идеальным (рис. 14).
В данном случае нам нужно выровнять три ограненных кристалла в левой части логотипа. Для
этого выделите данные объекты, заключив их в прямоугольный контейнер инструментом
Select Object (Выделить объекты), и вызовите команду Tools=>Align
(Инструменты=>Выровнять). Обратите внимание, что после вызова данной команды внешний
вид маркера мыши изменится, а в нижней части экрана появится приглашение выделить
объект, по которому следует произвести выравнивание. Поэтому щелкните на задающем центр
выравнивания объекте (в данном случае был выбран объект Hedra3, соответствующий
среднему кристаллу). В результате откроется диалоговое окно Align Selection (Выровнять
выделенные объекты), где необходимо задать параметры выравнивания (рис. 15). Возможно,
результат будет напоминать рис. 16. Сохраните созданный логотип.

27
Рис. 15. Настройка параметров
выравнивания

Рис. 14. Исходный вид логотипа

Рис. 16. Вид логотипа после выравнивания


кристаллов

ОБЪЕДИНЕНИЕ ОБЪЕКТОВ В ГРУППЫ

Любая сцена состоит из огромного числа объектов, и для удобства работы с ними
используют различные варианты их объединения. Самое простое — объединить объекты в
группы, что позволит в дальнейшем выполнять ряд действий, таких как выбор, клонирование,
присвоение материалов, трансформация и пр., одновременно в отношении всей группы
объектов. Обычно в группы объединяют составные элементы сложного объекта, а также
наиболее часто повторяющиеся наборы однотипных объектов и т.п. Группы могут быть как
одноуровневыми, так и иметь многоуровневую архитектуру.
Для работы с группами предназначено командное меню Group (Группировать),
группировка объектов осуществляется выбором одноименной команды из данного меню, а для
работы с определенными объектами группы используются команды:

 Open (Открыть) — позволяет частично снять группировку, что дает возможность


выбирать, модифицировать и трансформировать любой объект открытой группы;
 Close (Закрыть) — предназначена для восстановления частично снятой группировки;
 Ungroup (Разгруппировать) — удаляет один уровень группировки объектов;
 Explode (Полностью разгруппировать) — отвечает за полное удаление группировки
объектов независимо от уровня вложенности групп;
 Detach (Отсоединить) — позволяет исключить выбранный объект из состава
предварительно открытой при помощи команды Open (Открыть) группы;
28
 Attach (Присоединить) — предназначена для включения выбранных объектов в группу.

Создадим группу из объектов только что полученного логотипа. Выделите все объекты,
заключив их в прямоугольный контейнер инструментом Select Object (Выделить объекты),
вызовите команду Group=>Group (Группировать=>Группировать) и введите имя группы (рис.
17). После этого можно будет работать с группой как с единым целым — все объекты группы
будут выделяться щелчком на любом из них и их можно будет все вместе перемещать,
поворачивать, масштабировать, копировать и пр.

Рис. 17. Ввод имени группы объектов


А теперь исключите из группы ранее выровненные кристаллы. Для этого выделите и
откройте группу при помощи команды Group=>Open (Группировать=>Открыть). Выделите
первый исключаемый из группы кристалл и примените команду Group=>Detach
(Группировать=>Отсоединить), затем проведите аналогичную операцию для двух других
кристаллов и закройте группу командой Group=>Close (Группировать=>Закрыть). Щелкните
по любому элементу группы инструментом Select Object (Выделить объект), и вы увидите,
что исключенные объекты окажутся невыделенными, а значит, они больше не входят в
группу. А теперь проведите обратную операцию: сформируйте пару новых объектов и
добавьте их в ранее созданную группу. Выделите первый из созданных объектов, выберите из
меню Group (Группировать) команду Attach (Присоединить) и щелкните мышью на группе
(рис. 18) — объект окажется включенным в группу, в чем несложно убедиться, например, при
попытке одновременного перемещения всех объектов группы. Аналогичную операцию
проведите и в отношении второго включаемого в группу объекта.

Рис. 18. Указание группы в процессе включения в нее нового объекта

КЛОНИРОВАНИЕ ОБЪЕКТОВ

В 3D Studio Max существует несколько способов клонирования объектов. Наиболее часто


используемыми являются выделение копируемого объекта или группы объектов и применение
29
одной из команд трансформации: Move (Переместить), Rotate (Повернуть) или Scale
(Масштабировать) при нажатой клавише Shift. После завершения выполнения команды
происходит вызов окна Clone Options (Режимы клонирования) (рис. 19), где необходимо
указать тип создаваемого объекта или группы объектов и количество копий. Всего существует
три типа создаваемых при клонировании объектов:

 Copy (Копия) — новый объект, наследующий все свойства исходного: геометрию,


материалы, режимы отображения и пр., однако любые изменения, которые будут
произведены в дальнейшем с копией или с оригиналом, уникальны и будут
применяться только к модифицируемому объекту;
 Instance (Экземпляр) — новый объект является полной копией исходного, и между
ними создается двусторонняя логическая связь: любые изменения оригинала
отображаются во всех его клонах, и наоборот;
 Reference (Ссылка) — новый объект является полной копией исходного, но с
односторонней связью: изменения оригинала будут вызывать изменения его клонов.

Рис. 19. Определение параметров клонирования


Обратите внимание, что при создании более одного клона с трансформацией
промежуточные клоны имеют средние характеристики, вычисляемые программой
автоматически. Например, при создании пяти клонов с масштабированием при
масштабировании указывается размер максимального или минимального из клонов, а для всех
остальных клонов группы размер вычисляется автоматически.
Можно клонировать объекты непосредственно при помощи команды Clone (Клонировать)
из меню Edit (Редактировать) или из контекстного меню. Данный вариант создания клонов
объектов удобен, если клоны должны иметь те же координаты, что и исходное изображение.
Для освоения клонирования объектов попробуйте сделать два клона с масштабированием
для созданного ранее логотипа так, чтобы в итоге изображение напоминало рис. 20.

30
Рис. 20. Вид изображения после клонирования с масштабированием
А теперь проведем еще один эксперимент с клонированием и попробуем создать имитацию
резьбы на каменной поверхности. Вначале создайте исходные объекты: каменную плиту на
основе примитива ChamferBox и заготовку для резьбы на основе примитива RingWave (рис.
21 и 22). Не забудьте выровнять объекты по центру относительно осей X и Y при помощи
команды Align (Выровнять). Выделите объект RingWave01 и воспользуйтесь командой Scale
(Масштабировать) при нажатой клавише Shift, создавая два клона волнообразного кольца
(рис. 23). В итоге каменная плита преобразится и станет напоминать рис. 24. Конечно, для
полной имитации следовало бы подобрать подходящую текстуру, но к этой задаче мы еще
вернемся на одном из следующих уроков.

Рис. 22. Параметры настройки примитива


RingWave
Рис. 21. Исходный вид изображения —
плита и декоративная заготовка для
резьбы

31
Рис. 23. Изображение в процессе
масштабирования Рис. 24. Каменная плита с резьбой

ЗЕРКАЛЬНОЕ ОТРАЖЕНИЕ ОБЪЕКТОВ

Существует другой способ клонирования объектов — путем создания их зеркальных копий,


что можно осуществить при помощи команды Mirror (Зеркало) из меню Tools (Инструменты)
или щелчком на кнопке Mirror Selected Objects (Создать зеркальное отражение объектов) из
панели Main Toolbar. Данное действие приводит к открытию дополнительного диалогового
окна Mirror (Зеркало), где определяется ось копирования — X, Y или Z или плоскость
копирования — XY, YZ или ZX. При желании можно отказаться от создания копии
зеркального отражения, установив переключатель Clone Selection (Клонировать выделение) в
положение No Clone (Не клонировать).
Рассмотрим технологию получения зеркального отражения объектов на примере создания
разноцветной детской юлы. Предположим, что юла будет состоять из четырех разноцветных
конусов: два конуса в верхней ее части и два другие конуса, являющиеся зеркальными
отражениями первых двух. Создайте верхние два конуса и выровняйте их по отношению друг
друга (рис. 25, 26 и 27). Вызовите команду Tools=>Mirror (Инструменты=>Зеркало) и
настройте ее параметры, как показано на рис. 28. Возможно, результат будет напоминать рис.
29.

Рис. 25. Верхние два конуса юлы

32
Рис. 26. Параметры первого конуса

Рис. 27. Параметры второго конуса

Рис. 28. Настройка параметров зеркального отражения

33
Рис. 29. Разноцветная юла

СОЗДАНИЕ МАССИВОВ ОБЪЕКТОВ

Самый быстрый способ создания серии однотипных объектов, расположенных по тому или
иному закону, — использование массивов, что, по сути, представляет собой разновидность
клонирования. Для работы с массивами предназначена команда Array (Массив) из командного
меню Tools (Инструменты). Благодаря этой команде можно формировать одномерные,
двумерные и трехмерные массивы объектов, в которых следующие элементы массива
смещены относительно предыдущих на некоторую величину и (или) повернуты на некоторый
градус.
Попробуйте для начала сформировать одномерный массив на основе обычной сферы.
Создайте исходный примитив-сферу (рис. 30), выделите сферу, откройте команду
Tools=>Array (Инструменты=>Массив) и настройте параметры преобразования в
соответствии с рис. 31. В итоге из одной сферы вы получите семь вытянувшихся в один ряд по
оси X сфер (рис. 32). Обратите внимание, что тип массива — одномерный, двумерный или
трехмерный — определяется указанием соответствующих флажков: 1D, 2D или 3D, а закон
размещения объектов регулируется координатами X, Y и Z — в нашем случае сферы смещены
относительно друг друга по оси X на 20 единиц.

Рис. 30. Исходная сфера

34
Рис. 31. Настройка параметров окна Array для одномерного массива

Рис. 32. Одномерный массив сфер


Чуть усложним задачу и на основе другого примитива (в нашем случае конуса — рис. 33)
создадим двумерный массив, расположив объекты друг за другом ровными рядами. Выделите
созданный объект-конус и откройте команду Tools=>Array (Инструменты=>Массив). Для
варианта 1D все оставьте без изменения, исходя из предположения, что число конусов в ряду
будет равно числу сфер. Активизируйте флажок 2D и определите число рядов и смещение их
относительно друг друга (рис. 34 и 35).

35
Рис. 33. Появление конуса

Рис. 34. Настройка параметров окна Array для двумерного массива

Рис. 35. Появление двумерного массива конусов

36
А теперь воспользуемся командой Array (Массив) для создания имитации кубика-рубика,
исходя из того, что в самом простом случае кубик-рубик представляет собой куб, в котором на
каждой его плоскости помещается набор из 25 объединенных в квадрат разноцветных
кубиков. Создайте образец кубика из тех, которые нужно будет объединять в трехмерный
массив, — для этого лучше воспользоваться примитивом ChamferBox, чтобы за счет фаски
придать кубику более естественный вид и задать длину, ширину и высоту кубика вручную на
панели Modify (рис. 36 и 37). Выделите кубик и примените команду Tools=>Array
(Инструменты=>Массив) с параметрами, как показано на рис. 38. В результате получите
примерно такой же массив кубиков, как представлен на рис. 39. Осталось перекрасить
отдельные составляющие кубика-рубика в разные цвета, что можно сделать как по очереди
выделяя отдельные кубики и меняя их цвет, так и корректируя цвет для нескольких кубиков
одновременно. Во втором случае необходимо разобраться со способами выделения объектов
более тщательно, поэтому для начала просто сохраните созданный кубик-рубик в файле.

Рис. 36. Исходный кубик

Рис. 37. Настройка параметров кубика на панели Modify

37
Рис. 38. Настройка параметров окна Array для трехмерного массива

Рис. 39. Трехмерный массив кубиков

ДРУГИЕ МЕТОДЫ ВЫДЕЛЕНИЯ ОБЪЕКТОВ

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


объектов. Помимо самого простого варианта выделения щелчком мыши по объекту можно
выделять объекты по цвету при помощи команды Select By Color (Выбрать по цвету) или по
имени командой Select By Name (Выбрать по имени), а также выделять области определенной
формы, применяя команду Selection Region (Форма области выделения). Все команды
выделения доступны из командного меню Edit (Редактировать), кроме того, большинство из
них продублированы на панели Main Toolbar. Стоит отметить, что выделение по цвету и
имени очень удобно при большом количестве объектов, так как выделить нужные из них
обычным способом часто бывает непросто.
38
Попробуем выделить группу объектов по имени в созданном ранее кубике-рубике.
Щелкните на панели Main Toolbar по кнопке Select By Name (Выбрать по имени) — это
приведет к открытию диалогового окна Select Objects (Выбор объектов), где представлен
отсортированный список всех объектов (при желании принцип сортировки объектов в списке
несложно изменить). Выберите нужные объекты мышью, удерживая в нажатом состоянии
клавишу Shift (при выделении последовательно расположенных в списке объектов) или Ctrl
(при выделении объектов, не следующих в списке друг за другом). В нашем случае нужно
последовательно окрасить в разные цвета отдельные плоскости кубика. Это означает, что
вначале требуется выделить объекты с 1-го по 25-й, затем с 26-го по 50-й и т.д. Выделите при
нажатой клавише Shift первую группу объектов списка (рис. 40) и щелкните на кнопке Select
(Выделить) — нужные объекты окажутся выделенными. Измените их цвет, например, на
красный (рис. 41). Затем аналогичным образом выделите вторую группу объектов и измените
их цвет и т.д. — в конечном счете кубик будет напоминать представленный на рис. 42.

Рис. 40. Выделение объектов в окне Select Objects

39
Рис. 41. Результат изменения цвета у первой группы объектов

Рис. 42. Окончательный вид кубика-рубика


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

40
Щелкните на кнопке Select By Name (Выбрать по имени), в самом верхнем поле окна Select
Objects (Выбор объектов) введите имя в общем виде (рис. 43) и щелкните на кнопке Select
(Выделить). Измените цвет выделенных объектов (рис. 44). Обратите внимание на то, что
данный вариант выделения очень удобен для выделения всех объектов, имя которых
начинается с определенной комбинации букв, — например объектов, созданных на основе
того или иного примитива.

Рис. 43. Определение в окне Select Objects имени объектов в общем виде

41
Рис. 44. Результат смены цвета автоматически выделенных объектов
Очень удобно также выделение объектов по их цвету. Чтобы опробовать данный способ
выделения, вернитесь к нормальному разноцветному варианту кубика-рубика, отменив
последние действия. Из меню Edit (Редактировать) откройте команду Select By Color
(Выбрать по цвету) — обратите внимание, что данное действие приведет к изменению
внешнего вида указателя мыши. Щелкните на любом из объектов интересующего вас цвета —
в итоге все объекты сцены указанного цвета окажутся выделенными.
Кроме того, существует возможность выделения областей. Области могут иметь
прямоугольную форму (Rectangular) — данный вариант мы уже использовали на первом
уроке, заключая интересующие нас объекты в прямоугольный контейнер. Помимо
прямоугольной формы области также могут быть круглыми (Circular), иметь контур в виде
замкнутой ломаной (Fence) или произвольный контур (Lasso), который напоминает
простейший вариант «лассо», используемый в двумерных графических пакетах.
Соответствующие данным командам кнопки находятся на панели Mail Toolbar, при этом по
умолчанию видна кнопка Rectangular Selection Region (Прямоугольная форма области
выделения), а все остальные скрыты под ней и выбираются обычным для скрытых кнопок
образом. Стоит признать, что помимо ранее использовавшегося нами варианта выделения
прямоугольных областей все остальные больше подходят для выделения более сложных
объектов, чем объекты, созданные на основе примитивов. Поэтому на данном этапе освоения
программы просто поэкспериментируйте и попробуйте выделить отдельные группы кубиков
кубика-рубика при помощи каждого из названных инструментов.

СОЗДАНИЕ ИМЕНОВАННЫХ НАБОРОВ ОБЪЕКТОВ

С учетом того, что общее количество объектов в любой сцене очень велико, для упрощения
управлением объектов очень удобно объединять их в именованные наборы. В этом случае в
дальнейшем можно будет производить ряд операций не над отдельными объектами, а сразу
над их наборами — получится гораздо быстрее и удобнее.
Создадим на основе кубика-рубика пять наборов объектов в соответствии с цветовым
признаком. Для этого выделите все красные кубики командой Select By Color (Выбрать по
42
цвету), а затем объедините их в набор Set1, введя имя набора в текстовом поле списка имен на
панели Main Toolbar (рис. 45). Точно так же выделите все зеленые кубики и объедините их в
набор Set2, а затем проведите аналогичные операции в отношении кубиков всех остальных
цветов. В итоге будет сформировано пять именованных наборов объектов: Set1, Set2, Set3,
Set4 и Set5 (рис. 46).

Рис. 45. Ввод имени именованного набора

Рис. 46. Список сформированных именованных наборов объектов


Для работы с именованными наборами объектов служит команда Named Selection Sets
(Именованные наборы), которую можно вызвать из меню Edit (Редактировать) или щелчком
по соответствующей кнопке на панели Main Toolbar. Это приведет к открытию окна Named
Selection Set (рис. 47), позволяющего применить в отношении целых наборов или отдельных
входящих в них объектов следующие действия:

 создать новый набор;


 удалить весь набор или только выбранный из него объект;
 дополнительно добавить к набору объект, выбранный в любом из окон проекций;
 удалить из набора объект, выбранный в любом из окон проекций;
 выделить объекты, которые входят в указанный в диалоговом окне набор;
 выбрать объекты по их имени с помощью дополнительно открываемого диалогового
окна Select Objects.

43
Рис. 47. Окно Named Selection Set
Попробуйте применить команду Named Selection Sets (Именованные наборы) для быстрого
выделения набора объектов, чтобы в дальнейшем осуществить перекрашивание входящих в
него объектов. Для этого выделите нужный набор в окне Named Selection Sets и щелкните на
кнопке Select Objects In Set (Выделение объектов в наборе — рис. 48) — все объекты набора
окажутся выделенными. Затем измените цвет объектов (обратите внимание: данную операцию
можно осуществить даже не закрывая окна Named Selection Sets).

Рис. 48. Выделение всех объектов набора


44
КОМПЛЕКСНОЕ ИСПОЛЬЗОВАНИЕ РАЗЛИЧНЫХ ВАРИАНТОВ ВЫДЕЛЕНИЯ, ВЫРАВНИВАНИЯ И
КЛОНИРОВАНИЯ ОБЪЕКТОВ ПРИ СОЗДАНИИ СЦЕН

Для закрепления материала рассмотрим задачу создания набора разноцветных кубиков на


некоторой поверхности (рис. 49). Исходным материалом для данной конструкции станет
кубик, построенный на основе примитива ChamferBox (рис. 50). На первом этапе необходимо
создать на его основе двумерный массив кубиков размером 5x5 — выделите кубик и
примените команду Tools=>Array (Инструменты=>Массив), настроив ее параметры в
соответствии с рис. 51. Результат данной операции представлен на рис. 52.

Рис. 49. Кубики на поверхности

Рис. 50. Исходный кубик

45
Рис. 51. Настройка параметров окна Array для первого массива кубиков

Рис. 52. Вид изображения после создания первого одномерного массива кубиков
Выделите кубик, указанный на рис. 53, и создайте его копию путем зеркального отражения,
применив команду Tools=>Mirror (Инструменты=>Зеркало) с параметрами, показанными на
рис. 54. Вновь обратитесь к команде Tools=>Array (Инструменты=>Массив), создав массив
объектов на основе только что полученной зеркальной копии кубика (рис. 55 и 56). Выделите
во втором массиве центральный кубик и создайте его копию в виде зеркального отражения,
указав для команды Tools=>Mirror (Инструменты=>Зеркало) те же параметры, что и в
предыдущем случае. Щелкните на кнопке Select By Name (Выбрать по имени), выберите по
именам кубики в средней плоскости (это будут объекты с номерами от 26 по 34) и измените их
цвет на какой-нибудь другой. По окончании смените цвет и у самого верхнего кубика (рис.
57). Объедините все кубики в группу — так удобнее для дальнейшей корректировки их
положения на плоскости.

46
Рис. 53. Выделенный кубик для создания первой копии

Рис. 54. Настройка параметров зеркального отражения

Рис. 55. Настройка параметров окна Array для второго массива кубиков

47
Рис. 56. Вид изображения после создания второго одномерного массива кубиков

Рис. 57. Набор разноцветных кубиков


Дополните изображение плоской поверхностью, на которой по замыслу и должны быть
расположены кубики. Такую поверхность можно смоделировать также на основе примитива
ChamferBox. Скорее всего, изначальное положение кубиков и плоскости не будет
оптимальным, например кубики могут оказаться утопленными в плоскость, как на рис. 58. Да
и без выравнивания объектов по отношению друг к другу тоже не обойдется. Выделите группу
кубиков, щелкнув на любом из объектов группы инструментом Select Object (Выделить
объект), — здесь сразу будет заметно преимущество группы (если бы кубики не были
объединены в группу, то выделять их при наличии плоскости было бы менее удобно).
Активизируйте проекцию Front и добейтесь того, чтобы набор кубиков был выровнен по осям
X и Y — для этого удобнее всего просто ввести нулевые значения в соответствующих полях в
нижней части экрана (рис. 59). Аналогичную операцию проведите для проекции Left. Затем
вновь вернитесь в проекцию Front и отрегулируйте значение координаты Z таким образом,
чтобы кубики находились точно на поверхности, а не внутри нее, как это было изначально.
Проверьте и при необходимости подкорректируйте положение плоскости. Конечный вид
изображения в четырех проекциях представлен на рис. 60.

48
Рис. 58. Неудачный вариант положения плоскости и кубиков

49
Рис. 59. Корректировка положения кубиков по осям X и Y в проекции Front

Рис. 60. Окончательный вид кубиков на плоскости в разных проекциях

50
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 3. ОСНОВЫ
СЕТОЧНОГО МОДЕЛИРОВАНИЯ
Теоретические аспекты
Типы подобъектов и принцип их редактирования
Моделирование при помощи вершин
Моделирование при помощи ребер
Сеточное моделирование на конкретных примерах
Яйцо из шара
Гантель из цилиндра
Морской еж из геосферы
Кубик Рубика из куба
Ограненные кристаллы из геосферы
Футбольный мяч из геосферы
Шахматная пешка из цилиндра

3D Studio MAX поддерживает много различных вариантов создания моделей (то есть
моделирования). В их числе и сеточное моделирование, представляющее собой
моделирование на уровне подобъектов: вершин, ребер, граней и полигонов. Подобъекты
можно вытягивать, масштабировать, вращать, деформировать, удалять, объединять, добавлять;
можно применять к ним множество других операций, изменяя таким образом исходный
объект до полной неузнаваемости. Результатом подобных манипуляций могут быть
совершенно разные трехмерные тела — от абстрактных объектов до полностью реальных
моделей. Данный прием моделирования может быть применен к разным объектам 3D Studio
MAX, однако пока мы знакомы лишь с примитивами, поэтому и приемы сеточного
моделирования будем осваивать именно на них. Сразу отметим, что возможности сеточного
моделирования гораздо шире, чем удастся рассмотреть в данном уроке. К этой теме мы в
дальнейшем будем неоднократно возвращаться, но на более высоком уровне.

ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ

Любой параметрический трехмерный объект, созданный на основе примитива, может быть


преобразован в объект типа Editable Mesh (Редактируемая сетка) или Editable Poly
(Редактируемая полисетка). Такой объект перестает быть параметрическим и в дальнейшем
будет модифицироваться как сетка, то есть на уровне вершин, ребер, граней и полигонов.
К объектам типа Editable Mesh относятся геометрические модели трехмерных тел,
представленных оболочками в виде сеток с треугольными ячейками. Объекты типа Editable
Poly отличаются от редактируемых сеток тем, что их оболочки состоят не из треугольных
граней, а из полигонов. Полигоны представляют собой многоугольники, у которых имеются
как минимум четыре вершины, и заменяют совокупность двух или более смежных
треугольных граней, лежащих в одной плоскости. Поэтому и сетку, составленную из
полигонов, в отличие от сетки, составленной из треугольных граней, называют полигональной
сеткой, или полисеткой.
Многие возможности редактирования объектов Editable Poly и Editable Mesh аналогичны,
однако имеются и различия. Редактирование объектов типа Editable Mesh возможно на
уровне вершин, ребер, граней, полигонов и элементов, а тип Editable Poly позволяет работать
с вершинами, ребрами, полигонами, элементами и границами. Многие операции на первый
взгляд совершенно аналогичны для обоих типов объектов, например операции Extrude и
Bevel, но требуют разной настройки и зачастую приводят к различным результатам. Кроме
того, полигональные сетки, в сравнении с обычными сетками Editable Mesh, обладают рядом
дополнительных свойств, в частности допускают сглаживание без использования таких
специальных модификаторов, как MeshSmooth (Сглаживание сетки). Напомним, что

51
модификаторы предназначены для модификации объектов и становятся доступными после
активизации панели Modify (Изменение).

ТИПЫ ПОДОБЪЕКТОВ И ПРИНЦИП ИХ РЕДАКТИРОВАНИЯ

Как уже было сказано, значительная часть объектов 3D Studio MAX может быть
представлена в виде сеток, состоящих из однотипных элементов или подобъектов, к числу
которых относятся вершины, ребра, грани и полигоны (рис. 1). Предназначенные для работы с
ними средства скомпонованы по уровням: Vertex, Edge, Face, Polygon, Element и Border
(рис. 2 и 3).

Рис. 1. Подобъекты

Рис. 2. Уровни Editable Mesh

Рис. 3. Уровни Editable Poly


Вершины — это точки, в которых сходится и соединяется друг с другом любое число ребер.
Для работы с вершинами предназначен уровень Vertex (Вершина).
Ребра — это линии границы грани. Ребра могут быть видимыми, если соседние грани не
лежат в одной плоскости (тогда они отображаются сплошными линиями), или невидимыми;
по запросу пользователя невидимые ребра могут отображаться пунктирной линией. За
управление видимостью и положением ребер отвечает уровень Edge (Ребро).
Грани — это участки плоскости треугольной формы, представляющие собой элементарные
ячейки сетки. В одной плоскости объекта может находиться множество граней, которые

52
внешне будут совершенно неразличимы. Для работы с гранями предназначен уровень Face
(Грань).
Смежные грани, лежащие в одной плоскости, могут быть объединены в многоугольники-
полигоны. В случае преобразования объекта к типу Editable Poly процесс формирования
полигонов из граней осуществляется автоматически. В обычной сетке полигон — это просто
подобъект, позволяющий выделить сразу все смежные грани, лежащие в одной плоскости. У
полигональной сетки нет таких подобъектов, как грани, и вся она состоит только из
полигонов, причем некоторые полигоны могут быть и треугольными. За работу с полигонами
отвечает уровень Polygon (Многоугольник).
Кроме того, сеточные объекты могут редактироваться на уровне Element (Элемент),
который используется для работы с группами граней, объединенными в элемент каркаса, а
объекты типа Editable Poly — и на уровне Border (Граница), что удобно, например, при
вдавливании границ.
Редактирование сетчатых объектов можно производить как на уровне объекта в целом, так и
на уровне подобъектов: граней, ребер или вершин. Чтобы объект стал редактируемым на
уровне подобъектов и превратился в редактируемую сетку, необходимо выделить его и
выбрать из контекстного меню команду Convert to=>Convert to Editable Mesh
(Конвертировать=>Конвертировать в режим редактирования сетки); можно также применить к
объекту модификатор Edit Mesh (Редактирование сетки). Для преобразования объекта к типу
Editable Poly из контекстного меню выбирается команда Convert to=>Convert to Editable
Poly (Конвертировать=>Конвертировать в режим редактирования полисетки). В обоих случаях
это приведет к появлению на панели Modify целой серии свитков:

 Selection (Выделение) — отвечает за включение нужного подобъектного уровня и


управление режимами выбора подобъектов;
 Soft Selection (Мягкое выделение) — предназначен для расширения возможностей
выделения подобъектов и определяет закон распространения трансформаций по объему
редактируемого каркаса;
 Edit Geometry (Редактировать геометрию) — содержит основные инструменты
изменения геометрии подобъектов. Некоторые инструменты одинаковы для всех
уровней и для обоих типов сеток, а другие являются особыми для каждого уровня
(и/или сетки). В перечень общих инструментов входят, в частности, следующие:

- Attach (Присоединить) — позволяет добавлять к редактируемой модели новые


каркасные объекты, при этом все грани присоединяемого объекта оказываются
объединенными в новый элемент,
- Detach (Отсоединить) — отвечает за отделение выбранного подобъекта в
отдельный элемент или новый объект,
- Remove Isolated Vertices (Удалить изолированные вершины) — позволяет удалять
отдельно расположенные вершины объекта,
- View Align и Grid Align (Ориентировать по текущему виду/Ориентировать по
сетке) — осуществляет соответствующее изменение ориентации выбранных
подобъектов,
- Make Planar (Привести к плоскости) — устанавливает плоскостную ориентацию
для выбранных подобъектов,
- Collapse (Свести в точку) — выполняет коллапс (сжатие) и объединение всех
вершин выбранных подобъектов в одну, располагая ее в геометрическом центре
выделенной области;

 Surface Properties (Свойства поверхности) — объединяет такие инструменты


настройки свойств поверхности, которые предназначены для каждого уровня.

Выбор нужного уровня подобъектов осуществляется либо подсвечиванием уровня в списках


подобъектов Editable Mesh или Editable Poly, либо щелчком по соответствующей кнопке в

53
свитке Selection панели Modify. Для выбора самих подобъектов используются обычные
инструменты выделения: Select Object (Выделить объект), Select and Move (Выделить и
передвинуть), Select and Scale (Выделить и масштабировать), Select and Rotate (Выделить и
повернуть) и Selection Region (Форма области выделения). Чтобы последовательно выделить
несколько объектов, при выделении удерживают клавишу Ctrl.
Для того чтобы вернуться от редактирования объекта на уровне подобъектов к обычному
редактированию, нужно подсветить в списке подобъектов уровень Editable Mesh или Editable
Poly.

МОДЕЛИРОВАНИЕ ПРИ ПОМОЩИ ВЕРШИН

Вершины являются основным элементом редактирования сетки — достаточно нескольких


манипуляций с вершинами, чтобы превратить стандартный примитив в совершенно другой
объект.
Для примера создайте примитив Box (Коробка), установив для него длину (Length) и
ширину (Width) равными 30, а высоту (Height) равной 40 (рис. 4), и сохраните объект в файле.
Не снимая выделения, установите режим, в котором возможно редактирование вершины,
выбрав из контекстного меню команду Convert to=>Convert to Editable Mesh
(Конвертировать=>Конвертировать в режим редактирования сетки). Чтобы получить
возможность манипуляции вершинами, щелкните в свитке Selection на кнопке Vertex (рис. 5).

Рис. 4. Исходный объект

54
Рис. 5. Исходный объект в режиме Editable Mesh — выделены вершины
Активизируйте инструмент Select and Move (Выделить и переместить) и последовательно
перетащите вершины его основания так, чтобы параллелепипед превратился в усеченную
пирамиду. Обратите внимание, что лучше всего начать перемещение вершин в окне проекций
Perspective, так как во всех остальных проекциях вершины нижнего основания у
параллелепипеда скрыты под верхними вершинами. А затем перейдите в окно проекции Top,
что позволит обеспечить более точное положение вершин (рис. 6). Не забывайте, что для
более точного перемещения вершин, равно как и объектов, можно напрямую указывать
координаты их нового положения в нижней части окна программы. При желании можно
перемещать одновременно сразу несколько вершин — в этом случае после выделения
вершины довольно часто блокируют, щелкнув на кнопке Selection Lock Toggle
(Переключатель блокировки выделения), которая тут же окрасится в желтый цвет. Блокировка
сохраняет выделенную область при любых манипуляциях в программе, а разблокировка
происходит в результате повторного щелчка по этой же кнопке.

55
Рис. 6. Результат перемещения вершин основания
Вершины можно не только перемещать, но и поворачивать инструментом Select and Rotate
(рис. 7) или масштабировать инструментом Select and Uniform Scale (рис. 8). А можно свести
выделенные вершины в одну точку, щелкнув на кнопке Collapse (Свести в точку) на панели
Modify в свитке Edit Geometry (рис. 9).

Рис. 7. Поворот вершин верхнего основания усеченной пирамиды

56
Рис. 8. Масштабирование вершин верхнего основания усеченной пирамиды

Рис. 9. Результат сведения вершин в одну точку

МОДЕЛИРОВАНИЕ ПРИ ПОМОЩИ РЕБЕР

Чтобы поэкспериментировать, воспользуйтесь ранее созданным и сохраненным


параллелепипедом и установите для него режим редактирования ребер — Edge, щелкнув на
соответствующей кнопке в свитке Selection. Как и вершины, ребра можно перемещать,
поворачивать и масштабировать примерно таким же способом, хотя есть и некоторые отличия.
Для поворота ребер можно воспользоваться инструментом Select and Rotate (Выделить и
повернуть), а можно активировать возможности свитка Edit Geometry (Редактировать
геометрию) панели Modify, где для поворота предназначена кнопка Turn (Развернуть).
Активируйте данную кнопку и кликните на любом ребре параллелепипеда — это приведет к
повороту соответствующего ребра, что продемонстрировано на рис. 10 и 11.

57
Рис. 10. Поворот ребра (стрелкой показано ребро, по которому щелкнули мышью)

Рис. 11. Объект после поворота ребра

МОДЕЛИРОВАНИЕ ПРИ ПОМОЩИ ПОЛИГОНОВ

Переключитесь в режим редактирования полигонов, щелкнув на кнопке Polygon


(Многоугольник) в свитке Selection. Многоугольники при желании можно перемещать,
поворачивать и масштабировать обычным способом. Кроме того, здесь возможно множество
других интересных преобразований, доступных из свитка Edit Geometry панели Modify.
Рассмотрим операцию Extrude (Выдавливание), при помощи которой можно создавать
выпуклые элементы объекта. Щелкните на кнопке Extrude, затем кликните на любом
многоугольнике редактируемого объекта (при этом многоугольник выделится, а внешний вид
указателя мыши изменится) и переместите его — в зависимости от направления перемещения
выбранных граней на их основе будет создан выпуклый (рис. 12) или вогнутый фрагмент
объекта.

58
Рис. 12. Выдавливание многоугольника
Можно добавить к выбранным граням прямую фаску, что осуществляется путем вставки
плоскостей вместо общих ребер выделенных граней и совершенно необходимо при
сглаживании формы модели. Для добавления фаски щелкните на кнопке Bevel (Фаска),
выделите полигон и перемещением мыши подберите подходящий вариант фаски (рис. 13).

Рис. 13. Результат добавления к полигону прямой фаски


Данными операциями можно воспользоваться и на более сложных примитивах, например на
геосфере, предварительно преобразованной в объект типа Editable Poly (рис. 14) при помощи
команды Convert to=>Convert to Editable Poly (Конвертировать=>Конвертировать в режим
редактирования полисетки) и переведенной в режим редактирования полигонов. Результат
наложения на один выбранный полигон геосферы операции Extrude со значением параметра
Extrusion Hight (Высота выдавливания) равным 50 представлен на рис. 15. Разнообразные
преобразования, в частности Extrude, можно применить как к одному полигону, так и к группе
полигонов, выделив их при нажатой клавише Ctrl (рис. 16), или сразу ко всем полигонам
одновременно (рис. 17 и 18).

59
Рис. 14. Геосфера с выделенным полигоном

Рис. 15. Результат наложения операции Editable к одному полигону

60
Рис. 16. Применение операции Editable к группе полигонов

Рис. 17. Применение операции Editable ко всем полигонам

61
Рис. 18. Результат наложения операции Editable на все полигоны
Особо стоит сказать о сглаживании подобъектов. Как уже было отмечено, объекты,
представленные в виде полигональных сеток, могут сглаживаться без применения
модификатора MeshSmooth (Сглаживание сетки) — довольно часто его с успехом может
заменить операция MSmooth (Сглаживание) из свитка Edit Geometry (Редактировать
геометрию). Попробуйте применить ее, например, к ранее модифицированной геосфере,
установив коэффициент сглаживания равным 10 (рис. 19).

Рис. 19. Сглаживание модифицированной геосферы

62
СЕТОЧНОЕ МОДЕЛИРОВАНИЕ НА КОНКРЕТНЫХ ПРИМЕРАХ

ЯЙЦО ИЗ ШАРА

Создайте произвольный шар (рис. 20). Преобразуйте объект к типу Editable Mesh, выбрав
из контекстного меню команду Convert to=>Convert to Editable Mesh
(Конвертировать=>Конвертировать в режим редактирования сетки), и перейдите в режим
редактирования вершин, щелкнув на кнопке Vertex. Чтобы обеспечить более плавное
деформирование шара, включите режим Soft Selection (Мягкое выделение) с примерно такими
параметрами, как на рис. 21, и выделите инструментом Select Object все вершины,
расположенные в центральной части и в верхней трети шара. Удобнее выделять вершины не
по одной с нажатой клавишей Ctrl, а заключить все выделяемые вершины в прямоугольный
контейнер. Немного переместите выделенные вершины вверх при помощи инструмента Select
and Move (Выделить и переместить), а затем слегка сузьте выделенную область инструментом
Select and Squash (Выделить и сжать). Вновь выделите вершины верхней части шара, но
уменьшите число сечений на одно снизу, а затем выполните в их отношении те же операции.
Точно такие же операции последовательно произведите еще несколько раз, каждый раз
уменьшая размер выделенной области на одно сечение и пытаясь придать объекту форму яйца
(рис. 22). Для сглаживания модели примените к объекту модификатор MeshSmooth (Сгладить
сетку), выбрав его из списка Modifier List (рис. 23) и настроив его параметры приблизительно
так, как на рис. 24, а в результате получите яйцо (рис. 25).

Рис. 20. Исходный объект — шар

Рис. 21. Выделение вершин для первой трансформации и параметры режима Soft Selection
63
Рис. 22. Объект после последней деформации — проекция Front

Рис. 23. Выбор модификатора MeshSmooth

64
Рис. 24. Настройка параметров модификатора MeshSmooth

Рис. 25. Яйцо

ГАНТЕЛЬ ИЗ ЦИЛИНДРА

Создайте произвольный цилиндр с 24 сторонами и 9 сегментами высоты (рис. 26).


Преобразуйте объект к типу Editable Mesh и перейдите в режим редактирования вершин,
щелкнув на кнопке Vertex. При помощи инструмента Lasso Selection Region (Выделение
лассо) нужно выделить вершины четырех средних поперечных сечений цилиндра (рис. 27) и
масштабировать их инструментом Select and Uniform Scale (Выделить и равномерно
масштабировать) в сторону уменьшения так, чтобы сформировать самую узкую область
гантели (рис. 28). Поскольку вершины расположены слишком близко, для того чтобы
выделение проходило удачно, следует увеличить масштаб изображения и перейти в режим
одного окна, щелкнув на кнопке Min/Max Togge (Переключатель Min/Max). Кроме того, при
определенном положении объекта не каждое сечение вам удастся выделить идеально (часть
вершин с обратной стороны объекта могут оказаться невыделенными), поэтому возможно, что
объект придется неоднократно поворачивать и переходить из проекции в проекцию.

65
Рис. 26. Исходный объект — цилиндр

Рис. 27. Выделение вершин в центральной части цилиндра

66
Рис. 28. Результат масштабирования средней части цилиндра
Одновременно выделите по два крайних сечения цилиндра (не забывая удерживать нажатой
клавишу Ctrl) и масштабируйте вершины так, чтобы расстояния между сечениями
увеличились (рис. 29). Выделите второе с левого края сечение и масштабируйте его таким
образом, чтобы расстояние между данным сечением и сечением слева от него стало примерно
равным расстоянию между данным сечением и сечением справа от него. Аналогичную
операцию проведите для второго с правого края сечения.

Рис. 29. Масштабирование крайних сечений цилиндра

67
Переключитесь в режим редактирования полигонов, щелкнув на кнопке Polygon, и создайте
фаски для крайних сечений. Для этого выделите инструментом Select Object крайний левый
полигон, щелкните на кнопке Bevel и определите параметры фаски мышью либо введите
нужные значения вручную (рис. 30). Второй вариант гораздо надежнее, особенно с учетом
того, что придется создавать точно такую же фаску с правой стороны. Создайте аналогичную
фаску с правой стороны. Полученная в итоге гантель представлена на рис. 31.

Рис. 30. Добавление фаски с левой стороны

Рис. 31. Гантель

МОРСКОЙ ЕЖ ИЗ ГЕОСФЕРЫ

Создайте примитив GeoSphere с параметрами, представленными на рис. 32, и преобразуйте


объект к типу Editable Poly. Перейдите в режим редактирования полигонов, выделите все
полигоны геосферы и примените к ним операцию Bevel, установив высоту скоса (Height)
равной 0 и обводку (Outline Amount) равной –1 (рис. 33). Не снимая выделения, повторите

68
данное преобразование еще три раза, каждый раз меняя параметры в соответствии с рис. 34, 35
и 36, — результат показан на рис. 37. Для сглаживания объекта примените к нему
модификатор MeshSmooth (Сгладить сетку), выбрав его из списка Modifier List. Настройте
параметры модификатора: в разделе Subdivision Method выберите вариант NURMS, а в
разделе Subdivision Amount установите значение Iterations (Итерации) равным 0, а
Smoothness (Гладкость выравнивания) — равным 1. Полученная в итоге модель напоминает
морского ежа (рис. 38).

Рис. 32. Исходный объект — геосфера

Рис. 33. Результат первого применения операции Bevel

69
Рис. 34. Результат второго применения операции Bevel

Рис. 35. Результат третьего применения операции Bevel

70
Рис. 36. Результат четвертого применения операции Bevel

Рис. 37. Вид геосферы после многократной Bevel-деформации

71
Рис. 38. Морской еж

КУБИК РУБИКА ИЗ КУБА

Попробуем создать кубик Рубика не из набора отдельных кубиков, а на основе одного куба.
Создайте примитив Box (Коробка) с такими параметрами, как на рис. 39. Обратите внимание
на число сегментов по глубине, высоте и ширине, которое в точности соответствует
запланированному числу кубиков на каждой из сторон: выбрано три сегмента, а значит, будет
и три кубика. Преобразуйте объект к типу Editable Poly и установите режим редактирования
полигонов. Выделите все полигоны и примените к ним операцию Bevel (Фаска) при
параметрах: Bevel Type — By Poligon, Height — 5, Outline Amount — 0. А затем повторите
данную операцию в отношении полигонов, но уже при параметрах Height — 0 и Outline
Amount — 2. В итоге куб окажется разбитым на отдельные кубические фрагменты и будет
очень похож на настоящий кубик Рубика (рис. 40).

72
Рис. 39. Исходный объект — куб

Рис. 40. Кубик Рубика


При желании кубик можно сделать разноцветным, но для этого его придется
предварительно разбить на отдельные элементы. Выделите полигоны, расположенные на
одной стороне кубика (рис. 41), и щелкните в свитке Edit Geometry на кнопке Detach
(Отсоединить, рис. 42) — подобъекты окажутся отделенными. Чтобы выделить отделенный
объект, щелкните на кнопке Select By Name (Выделять по имени) и выберите имя объекта
(рис. 43), а потом перекрасьте его в другой цвет обычным образом (рис. 44). Вновь перейдите
к кубу, активизируйте режим редактирования полигонов и аналогичным образом выделите
полигоны на другой стороне кубика, превратите их в отдельный объект командой Detach
(Отсоединить), выделите созданный объект по имени и тоже перекрасьте. И так — для всех
остальных сторон. Для сглаживания всей модели целиком выделите все входящие в нее
объекты, щелкнув на кнопке Select By Name (Выделять по имени) и указав вариант All (Все),

73
и примените к ним модификатор MeshSmooth (Сгладить сетку) при параметрах как на рис. 45.
Полученный в конечном счете разноцветный кубик Рубика представлен на рис. 46.

Рис. 41. Выделение отделяемых полигонов

Рис. 42. Параметры операции Detach

74
Рис. 43. Выделение объекта Object01

Рис. 44. Кубик после перекраски одной из сторон

Рис. 45. Настройка параметров модификатора MeshSmooth

75
Рис. 46. Разноцветный кубик Рубика

ОГРАНЕННЫЕ КРИСТАЛЛЫ ИЗ ГЕОСФЕРЫ

Создайте примитив GeoSphere (рис. 47), конвертируйте его в тип Editable Mesh и
перейдите в режим редактирования вершин. Выделите все вершины выше центрального
сечения (рис. 48) и сведите их в одну плоскость, щелкнув в свитке Edit Geometry на кнопке
Make Planar (Привести к плоскости, рис. 49). Выделите все вершины, лежащие ниже
центрального сечения (рис. 50), и сведите их в одну точку, щелкнув на кнопке Collapse
(Свести в точку, рис. 51). По окончании избавьтесь от острых углов — для этого
переключитесь в режим редактирования ребер Edge, выделите все ребра и примените к ним
операцию Chamfer (Прямая фаска), установив величину скоса в 0,5 единиц. В итоге будет
получен кристалл, представленный на рис. 52 (конечно, чтобы созданный объект
действительно походил на кристалл, потребуется серьезная настройка текстуры, но это уже
иная тема).

76
Рис. 47. Исходный объект — геосфера

Рис. 48. Выделение вершин, сводимых в плоскость

Рис. 49. Результат сведения вершин в плоскость

Рис. 50. Выделение вершин, сводимых в точку

77
Рис. 51. Результат сведения вершин в точку

Рис. 52. Ограненный кристалл


При желании форму созданного кристалла можно изменять, масштабируя и перемещая
отдельные вершины. Однако предварительно стоит объединить сведенные воедино вершины в
одну точку. Дело в том, что при сведении вершин на плоскость или в точку они сохраняются
по отдельности, так что потом при моделировании на уровне вершин будут возникать
проблемы. Например, если часть вершин, лежащих в одной точке, выделилась, а другая — нет,
то соответственно при перемещении одни останутся на месте, а другие передвинутся со всеми
вытекающими из этого последствиями. Для объединения выбранных вершин в одну
предназначен свиток Weld (Объединить, рис. 53). При активизации кнопки Selected
(Выбранные) операция производится над всеми выделенными вершинами, попадающими в
Weld Threshold (Порог Объединения). Кнопка Target (Целевые) позволяет объединять
вершины, перемещая выбранную вершину к требуемой.

Рис. 53. Свиток Weld


Для примера изменим форму кристалла, чтобы он стал более плоским и широким.
Инструментом Lasso Selection Region (Выделение лассо) вначале выделите все вершины
плоскости (кристалл нужно предварительно повернуть таким образом, чтобы можно было
выделить только нужные вершины, рис. 54). Установите величину порога Weld Threshold
(Порог объединения) равной 1 и щелкните на кнопке Selected (Выбранные) — вершины
плоскости объединятся. Аналогичным способом выделите и объедините вершины основания,

78
которые были сведены в одну точку. После этого последовательно масштабируйте и
переместите нужные вершины (рис. 55).

Рис. 54. Выделение объединяемых вершин

Рис. 55. Преобразованный кристалл

ФУТБОЛЬНЫЙ МЯЧ ИЗ ГЕОСФЕРЫ

Создайте геосферу с параметрами, представленными на рис. 56. На параметры обратите


особое внимание, так как довольно сложно найти такие варианты, когда полигоны удается
точно объединить в шестиугольники, являющиеся элементами мяча. Преобразуйте объект к
типу Editable Poly и перейдите в режим редактирования полигонов. Начните последовательно
выделять полигоны геосферы при нажатой клавише Ctrl, формируя из них шестиугольники. В
конечном счете нужно обработать все полигоны, но выделять одновременно соседние
шестиугольники нельзя, так как применяемые к ним затем операции должны относиться
отдельно к каждой группе шестиугольников. Однако для ускорения процесса можно за один
прием выделять несколько не граничащих друг с другом шестиугольников — например как
показано на рис. 57. По окончании выделения партии шестиугольников примените к ним
79
операцию Extrude, установив в поле Extrusion Type вариант Group и присвоив параметру
Extrusion Hight значение 0,2. Затем выполните данное действие в отношении следующей
партии шестиугольников и т.д. Окончательный результат представлен на рис. 58.

Рис. 56. Исходный объект — геосфера

Рис. 57. Выделение отдельных шестиугольников мяча

80
Рис. 58. Результат применения преобразования Extrude ко всем шестиугольникам
После этого для каждого шестиугольника примените операцию Bevel при таких параметрах,
как на рис. 59, что приведет к очередному изменению геосферы (рис. 60). Для сглаживания
объекта примените к нему модификатор MeshSmooth (Сгладить сетку), настроив его
параметры в соответствии с рис. 61. Полученный в итоге футбольный мяч представлен на рис.
62.

Рис. 59. Применение операции Bevel к очередной партии шестиугольников

81
Рис. 60. Геосфера после выдавливания и наложения фасок

Рис. 61. Настройка параметров модификатора MeshSmooth

82
Рис. 62. Футбольный мяч

ШАХМАТНАЯ ПЕШКА ИЗ ЦИЛИНДРА

Создайте цилиндр с параметрами, показанными на рис. 63. Поскольку в объекте довольно


много сечений, для удобства, в зависимости от ситуации, мы будем их нумеровать в
направлении снизу вверх или в обратном направлении. Преобразуйте объект к типу Editable
Mesh и перейдите в режим редактирования вершин. Установив вариант выделения
прямоугольных областей (Restangular Selection Region), выделите вершины самого нижнего
сечения и немного перетащите их по оси Y вниз (рис. 64). Одновременно выделите все
вершины четырех нижних сечений и переместите их вниз на то же самое расстояние. Затем
выделите вершины 2-го и 3-го сечений снизу и масштабируйте их так, как показано на рис. 65.

Рис. 63. Исходный объект — цилиндр

83
Рис. 64. Перемещение вершин нижнего сечения

Рис. 65. Результат масштабирования вершин 2-го и 3-го сечений


Переключитесь в режим редактирования полигонов, щелкнув на кнопке Polygon. Выделите
полигон, объединяющий 2-е и 3-е сечения снизу, и примените к нему операцию Extrude,
установив для нее режим Local Normal и вручную введя значение штампа равное –5. Затем
выделите 2-е сечение снизу и масштабируйте полигон так, чтобы диаметры 1-го и 2-го
сечений были одинаковыми. Аналогичную операцию выполните в отношении 3-го сечения
(рис. 66).

84
Рис. 66. Объект после штамповки и повторного масштабирования сечений
Переключитесь в режим редактирования ребер, щелкнув на кнопке Edge, выделите 5-е, 6-е
и 7-е ребра снизу и масштабируйте их примерно так, как показано на рис. 67. Перейдите в
режим редактирования вершин, выделите все расположенные выше вершины и переместите
их вверх так, чтобы расстояние между 7-м и 8-м сечениями значительно увеличилось (рис. 68).

Рис. 67. Масштабирование 5-го, 6-го и 7-го ребер

85
Рис. 68. Одновременное масштабирование всех вершин верхней половины объекта
Вновь вернитесь в режим редактирования полигонов, выделите полигон между 6-м и 7-м
сечениями и примените к нему операцию Extrude (Выдавливание), установив для нее режим
Local Normal и вручную введя значение штампа равное –3,5 (рис. 69). Переключитесь в
режим редактирования вершин, выделите вершины 8-го сечения и инструментом Select and
Squash (Выделить и сжать) уменьшите диаметр данного сечения примерно так, как показано
на рис. 70. Выделите вершины 9-го и всех расположенных выше сечений и пропорционально
масштабируйте их инструментом Select and Uniform Scale (Выделить и равномерно
масштабировать, рис. 71).

Рис. 69. Объект после повторной штамповки


86
Рис. 70. Сжатие 8-го сечения

Рис. 71. Равномерное масштабирование вершин верхних сечений


Переключитесь в режим редактирования ребер, выделите 6-е и 7-е ребра сверху и
пропорционально уменьшите их размеры (рис. 72). Выделите самое верхнее ребро и
уменьшите его, создав фаску (рис. 73). Выделите 3-е и 4-е сверху ребра и увеличьте их
примерно так, как показано на рис. 74. Выделите 10-е сверху ребро и переместите его вверх
(рис. 75). Откорректируйте расстояния между 1-м и 2-м и между 3-м и 4-м сечениями. В
конечном счете будет получена шахматная фигура, представленная на рис. 76.

87
Рис. 72. Масштабирование 6-го и 7-го ребер

Рис. 73. Объект после масштабирования верхнего ребра

88
Рис. 74. Масштабирование 3-го и 4-го ребер сверху

Рис. 75. Перемещение 10-го ребра

89
Рис. 76. Шахматная пешка

90
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 4. ОСНОВЫ
РАБОТЫ СО СПЛАЙНАМИ
Что такое сплайны
Создание сплайнов
Геометрические фигуры
Текст
Линии
Составные сплайновые формы
Редактирование сплайнов
Редактирование на уровне вершин
Изменение типа подобъектов
Редактирование на уровне сегментов
Редактирование на уровне сплайнов

Как мы выяснили в предыдущих уроках, даже взятые за основу примитивы позволяют


путем ряда нехитрых манипуляций создавать разные трехмерные тела — от абстрактных
объектов до полностью реальных моделей. Еще большие перспективы открываются при
использовании в качестве исходных объектов форм (Shapes), которые представляют собой
набор двумерных или трехмерных кривых. Формы объединяют два типа объектов — Splines
(Сплайны) и NURBS Curves (Кривые NURBS). Рассмотрим в этом уроке сплайны, так как они
популярнее и чаще используются в моделировании. Однако мы изучим только самые простые
приемы работы со сплайнами, а вопросы сплайнового моделирования оставим для следующих
уроков.

ЧТО ТАКОЕ СПЛАЙНЫ

Сплайны (Spline — кусочно-полиномиальная функция) — это двумерные геометрические


объекты, которые совершенно самостоятельны и могут служить основой для построения более
сложных трехмерных тел. Внешне сплайны представляют собой разнообразные линии, форма
линии определяется типом вершин, через которые она проходит. Сплайнами могут быть как
простейшие геометрические фигуры: прямоугольники, звезды, эллипсы и пр., так и сложные
ломаные или кривые, а также контуры текстовых символов.
Основными элементами сплайнов являются вершины (Vertex) и сегменты (Segment).
Вершинами называют точки, расположенные на сплайне, при этом первая вершина,
обозначающая начало сплайна, отмечается квадратиком белого цвета. Под сегментом принято
понимать участок линии сплайна, ограниченный двумя соседними вершинами, — сегменты
могут быть как прямо-, так и криволинейными отрезками. Вершины сплайна различаются по
типу, от которого зависит степень кривизны прилегающих к данным вершинам сегментов
сплайна. Всего выделяют четыре типы вершин (рис. 1):

1. Corner (Угловая) — вершина, в которой сплайн имеет излом, а примыкающие к ней


сегменты лишены кривизны.
2. Smooth (Сглаженная) — вершина, через которую кривая сплайна проводится с
плавным изгибом, а кривизна прилегающих к вершине сегментов одинакова с обеих
сторон.
3. Bezier (Безье) — вершина, напоминающая сглаженную и отличающаяся от нее
возможностью управления степенью кривизны обоих сегментов. Последнее
осуществляется благодаря наличию в вершине касательных векторов, ограниченных на
концах маркерами в виде квадратиков зеленого цвета и называемых ручками Безье.
Перемещая ручки Безье, можно изменять направление, в соответствии с которым
сегменты сплайна входят в вершину и выходят из нее, а изменяя расстояние от
маркеров до вершины — регулировать степень кривизны сегментов сплайна. У вершин
91
данного типа ручки Безье связаны между собой, и перемещение одной из них
автоматически вызывает перемещение второй.
4. Bezier Corner (Безье угловая) — вершина, имеющая касательные векторы,
позволяющие управлять степенью кривизны сегментов, однако, в отличие от вершин
Bezier, у вершин Bezier Corner касательные векторы не связаны друг с другом и
перемещение одного из маркеров не зависит от перемещения другого.

Рис. 1. Типы вершин сплайнов


Сегменты также различаются по типу: Curve (Кривая) или Line (Линия). Выбрав типа Curve,
можно получить криволинейные сегменты, если вершины являются гладкими или имеют тип
Безье, в случае же угловых вершин даже при установке типа Curve сегмент останется
линейным. Выбор типа Line приводит к игнорированию типа вершин, в результате чего
сегмент данного типа всегда выглядит линейным.

СОЗДАНИЕ СПЛАЙНОВ

Вначале мы поэкспериментируем с простейшими сплайнами, представляющими собой


обычные геометрические фигуры. Активизируйте категорию объектов Shapes (Формы)
командной панели Create (Создание), в списке разновидностей объектов укажите тип Splines
(Сплайны). Это приведет к появлению на панели группы инструментов, соответствующих
типам сплайнов (рис. 2). Для построения стандартных сплайнов используются инструменты
Rectangle (Прямоугольник), Circle (Окружность), Ellipse (Эллипс), Arc (Дуга), Donut
(Кольцо), NGon (N-угольник), Star (Звезда), Text (Текст), Helix (Спираль) и Section (Сечение).
Их построение аналогично созданию примитивов, а расположение вершин и характер любого
из названных объектов устанавливаются параметрами в момент создания в панели Create
(Создание), а позже — в панели Modify (Изменение). Инструмент Line (Линия) предназначен
для создания сплайнов нестандартного вида и работает несколько иначе.

92
Рис. 2. Инструменты группы Splines

ГЕОМЕТРИЧЕСКИЕ ФИГУРЫ

Для примера попробуйте создать несколько стандартных сплайнов в виде геометрических


фигур, например многоугольник, звезду и спираль, как показано на рис. 3. Попробуйте
провести рендеринг, выбрав команду Rendering=>Renderer и щелкнув на кнопке Render.
Подробно с данным процессом мы познакомимся позднее, а пока просто поясним, что
рендеринг обычно проводится на заключительном этапе работы, он необходим для
визуализации созданной модели и его основная задача — сделать модель максимально
приближенной к действительности. Проведя рендеринг, никакого изображения в открывшемся
окне вы не увидите — дело в том, что по умолчанию сплайны не рендеризируются. Для того
чтобы сделать их видимыми во время рендеринга выделите первый сплайн, активизируйте
панель Modify (Изменение) и в свитке Rendring (Рендеринг) установите флажок Renderable
(Визуализируемый). Аналогичную операцию проведите в отношении двух других сплайнов и
вновь выполните рендеринг — сплайны станут видимыми (рис. 4).

Рис. 3. Исходный вид группы стандартных сплайнов

93
Рис. 4. Результат рендерннга
Пока все сплайны имеют одинаковую толщину, что несложно исправить, изменив у каждого
из них в свитке Rendring (Рендеринг) значение параметра Thickness (Толщина). Обратите
внимание на свиток Parameters (Параметры), в котором определяются основные параметры
каждого типа сплайнов: размеры, число вершин и пр. Для тренировки увеличьте толщину
каждого из сплайнов, измените число вершин у многоугольника и звезды и увеличьте
количество витков на спирали, например так, как показано на рис. 5, 6 и 7. Обратите
внимание, что в окнах проекций отразились все изменения, кроме увеличения толщины
сплайнов, которая осталась прежней, — ничего страшного, все так и должно быть, поскольку
по умолчанию опция Display Render Mesh (Показать визуализируемый каркас) отключена.
Убедиться в том, что толщина реально изменилась, можно проведя рендеринг (рис. 8) или
просто включив данный флажок. Поэкспериментируйте с прочими параметрами сплайнов,
поперемещайте их относительно друг друга и попытайтесь на их основе создать единую
композицию, например такую, как продемонстрирована на рис. 9.

94
Рис. 5. Панель Modify для звезды

Рис. 6. Панель Modify для спирали

Рис. 7. Панель Modify для многоугольника

95
Рис. 8. Вид сцены после рендерннга

Рис. 9. Композиция из сплайнов

ТЕКСТ

Для создания текста перезагрузите файл командой File=>Reset (Файл=>Сбросить), на


панели Create (Создание) вновь выберите тип Splines (Сплайны) и активизируйте инструмент
Text (Текст). В открывшемся свитке параметров создания сплайна введите нужный текст,
выберите шрифт и установите его параметры (рис. 10). Затем щелкните в одном из окон
проекций — это приведет к появлению фрагмента текста (рис. 11).
96
Рис. 10. Панель Create для текста

Рис. 11. Текст в окне проекции Perspective


Перед проведением рендеринга переместите текст так, чтобы он весь оказался в поле
зрения, активизируйте панель Modify (Изменение), в свитке Rendring (Рендеринг) установите
флажок Renderable (Визуализируемый) и увеличьте значение параметра Thickness (Толщина),
например до 10. Проведите рендеринг и убедитесь, что даже такие простые манипуляции
позволяют получить интересный вариант трехмерного текста (рис. 12).

97
Рис. 12. Текст после рендеринга

ЛИНИИ

Создавая предыдущие виды сплайнов, мы не обращали внимание на вершины и сегменты —


более того, даже не вспоминали про разные типы вершин. Со сплайнами-линиями все обстоит
иначе — в зависимости от особенностей построения кривой они будут дополняться
вершинами разного типа. Щелчки левой кнопкой в окне проекции при выбранном
инструменте Line (Линия) будут приводить к появлению новой угловой точки (Corner), а
перемещение мыши при нажатой левой кнопке — к появлению вершины Безье (Bezier).
Данный принцип создания вершин установлен по умолчанию, и при необходимости его
можно изменить в свитке Creation Method (Метод Создания) на панели Create (Изменение)
— рис. 13. Для этого достаточно сменить положение переключателей Initial Type (Тип
вершин при щелчке) и Drag Type (Тип вершин при перетаскивании). Отметим, что в
большинстве случаев не стоит менять методы создания вершин (чтобы не путаться) — гораздо
удобнее взять за основу устанавливаемый по умолчанию принцип и вначале создавать
контуры только с угловыми вершинами, а затем изменять тип у тех вершин, у которых это
необходимо сделать.

Рис. 13. Свиток Creation Method


Щелчок правой кнопкой приводит к завершению рисования сплайна из линий. При попытке
поставить вершину в месте нахождения начальной точки сплайна на экране появляется вопрос
«Close Spline?» («Закрыть сплайн?») — утвердительный ответ приведет к получению
замкнутого контура, в противном случае контур окажется разорванным и его граничные
вершины можно будет независимо перемещать.
Теоретически существует и второй метод создания сплайна из линий — режим Keyboard
Entry (Ввод с клавиатуры), который предполагает ввод координат (X, Y и Z) каждой из
вершин вручную с клавиатуры (рис. 14). Непосредственное добавление каждой новой
вершины осуществляется кнопкой Add Point (Добавить вершину), кнопка Finish (Закончить)

98
позволяет закончить создание сплайна, а кнопка Close (Замкнуть) создает сегмент,
соединяющий первую вершину с последней.

Рис. 14. Свиток Keyboard Entry


Чтобы закрепить навыки работы со сплайнами-линиями, попробуйте создать сплайн,
представленный на рис. 15, и сохраните его на диске — в дальнейшем мы превратим его в
рюмку. Обратите внимание, что данный сплайн содержит только угловые вершины. Удобнее
всего начинать создание контура с правой нижней вершины (на контуре она отмечена белым
квадратиком) и, учитывая, что большинство сегментов соединяются друг с другом под
прямым углом, удерживать нажатой при построении данных фрагментов контура клавишу
Shift (это обеспечит формирование идеальных углов).

Рис. 15. Заготовка для рюмки

СОСТАВНЫЕ СПЛАЙНОВЫЕ ФОРМЫ

Два типа стандартных сплайновых форм — Donut (Кольцо) и Text (Текст) —


принципиально отличаются от всех остальных типов сплайнов тем, что содержат более одного
сплайна в форме и потому относятся к составным формам. Кольцо содержит два круговых
сплайна. Число простых сплайнов, составляющих текстовый объект, как минимум совпадает с
числом входящих в него букв, а может быть и больше, если в тексте присутствуют буквы,
состоящие из нескольких сплайнов. Основным преимуществом составного сплайна по
сравнению с обычным сплайном является возможность выполнять операции сразу над всеми
частями сплайновой формы одновременно, что быстрее и удобнее. Но дело не только в этом
— к составным формам приходится прибегать и в других случаях, например при
необходимости проведения в отношении сплайнов булевой операции.
Для превращения простого сплайна в составной необходимо убрать флажок рядом с
кнопкой Start New Shape (Начать новую форму) — рис. 16. После этого любой новый сплайн

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

Рис. 16. Установка запрета на создание новой формы


Попробуем создать имитацию простой решетки в виде составного сплайна — такие решетки
сплошь и рядом используют при создании разнообразных ограждений. Для начала создайте
сплайн типа Rectangle (рис. 17), а затем перейдите в режим создания составной формы,
отключив флажок Start New Shape (Начать новую форму). Добавьте к прямоугольнику дугу
инструментом Arc (рис. 18). Обратите внимание, что для совмещения концов дуги с контуром
прямоугольника удобнее воспользоваться ручным изменением параметров From (От) и To
(В), определяющих начальную и конечную точки дуги. Не включая флажка Start New Shape,
дополните форму серией линий примерно как на рис. 19.

Рис. 17. Исходный прямоугольник

100
Рис. 18. Появление дуги

Рис. 19. Появление группы линий


Щелкните на свободной части любого окна проекций, чтобы снять выделение с решетки, а
затем выделите ее инструментом Select Object (Выделение объекта) — решетка выделится вся
целиком, что говорит о ее единстве. Это позволит настроить параметры сразу для всех
входящих в форму сплайнов, что очень удобно. Активируйте панель Modify (Изменение), в
свитке Rendring (Рендеринг) установите флажок Renderable (Визуализируемый) и увеличьте
значение параметра Thickness (Толщина). Проведите рендеринг — возможно, полученная
решетка будет иметь примерно такой вид, как на рис. 20. Однако решетка получилась
неидеальной, поскольку разбить дугу на одинаковое число сегментов на глаз проблематично.
Для подобных целей лучше использовать возможности автоматического разбиения сегментов
на заданное число равных частей, но это предполагает редактирование формы на уровне
подобъектов, поэтому к вопросу создания решетки мы еще вернемся.
Кроме того, не совсем удачно выбран принцип установки толщины — в реальной решетке
ее прямоугольное основание, как правило, имеет гораздо большую толщину, чем отдельные
прутья. Чтобы учесть данный аспект, необходимо создавать решетку из отдельных сплайнов
или редактировать ее потом на уровне сегментов.

101
Рис. 20. Решетка

РЕДАКТИРОВАНИЕ СПЛАЙНОВ

Сплайны могут редактироваться на двух уровнях — на уровне параметрической формы и на


уровне подобъектов: вершин, сегментов, а также сплайнов, если речь идет о составном
сплайне.
Редактирование на уровне параметрической формы, или объекта, осуществляется обычным
образом при активировании панели Modify (Изменение) и позволяет присоединять к сплайну
другие сплайны и изменять ряд параметров сплайна, заданных при его создании (рис. 21).

Рис. 21. Панель Modify — редактирование на уровне объекта


Редактирование сплайнов на уровне подобъектов позволяет превратить даже самый простой
сплайн в сложный объект практически любой конфигурации, так как число доступных
преобразований не идет ни в какое сравнение с перечнем возможностей при редактировании
на уровне объекта в целом (рис. 22). Чтобы сплайн можно было редактировать на уровне
102
подобъектов, он должен быть преобразован в объект типа Editable Spline (Редактируемый
сплайн) при помощи команды Convert To=>Convert to Editable Spline (Конвертировать
в=>Конвертировать в редактируемый сплайн). Такой объект перестает быть параметрическим
— его уже нельзя будет редактировать на уровне параметров, изменяя ширину, высоту, радиус
и пр., но зато он может модифицироваться на уровне вершин и сегментов.

Рис. 22. Панель Modify — редактирование на уровне подобъектов


Выбор нужного уровня подобъектов осуществляется щелчком по соответствующей кнопке в
свитке Selection панели Modify. Для выбора самих подобъектов используются обычные
инструменты выделения: Select Object (Выделить объект), Select and Move (Выделить и
передвинуть), Select and Scale (Выделить и масштабировать), Select and Rotate (Выделить и
повернуть) и Selection Region (Форма области выделения) для выделения областей
определенной формы. При необходимости последовательного выделения нескольких объектов
при выделении удерживают нажатой клавишу Ctrl.

103
Основные инструменты изменения геометрии подобъектов: вершин (Vertex), сегментов
(Segment) и сплайнов в целом (Spline) — находятся в свитке Geometry (Редактировать
геометрию), который становится доступным при активировании панели Modify (Изменение).
Управление типом подобъектов осуществляется через контекстное меню.

ИЗМЕНЕНИЕ ТИПА ПОДОБЪЕКТОВ

На практике чаще всего приходится менять типы вершин, выбирая нужный тип из четырех
возможных: Corner (Угловая), Smooth (Сглаженная), Bezier (Безье) и Bezier Corner (Безье
угловая). Гораздо реже требуется изменять типы сегментов или сплайнов — здесь есть всего
два варианта: Curve (Кривая) и Line (Линия). Смена типа производится через контекстное
меню, вызываемое при нажатии правой кнопки на выделенных объектах, при этом текущий
тип всегда отмечен галочкой, а для его изменения достаточно выбрать любой другой тип
подобъекта.
Для примера инструментом Line (Линия) создайте ломаную из двух отрезков (рис. 23),
прощелкав левой кнопкой мыши все три ее вершины, — обратите внимание, что в обычном
режиме вершины ломаной не выделены специальными значками. Перейдите в режим
редактирования вершин — это приведет к отображению на ломаной трех ее вершин: точка
начала окажется отмеченной белым квадратиком, а две другие точки — крестиками (рис. 24).
Щелкните на средней вершине правой кнопкой мыши и увидите в открывшемся контекстном
меню галочку у слова Corner (рис. 25) — это доказывает, что вершина действительно угловая.
Измените тип данной вершины на Bezier (Безье) — вид контура тут же изменится (рис. 26).

Рис. 23. Исходная ломаная — все вершины угловые

104
Рис. 24. Ломаная в режиме редактирования вершин

105
Рис. 25. Вид контекстного меню для средней вершины

Рис. 26. Ломаная — центральная вершина превратилась в вершину Безье

РЕДАКТИРОВАНИЕ НА УРОВНЕ ВЕРШИН

При редактировании на уровне вершин наибольший интерес в свитке Geometry


(Редактировать геометрию) представляют следующие операции:

 Refine (Уточнить) — позволяет добавлять дополнительные вершины без изменения


контура сплайна, что может потребоваться для последующего разрыва сплайна в
данной точке;
 Break (Разбить) — позволяет разорвать контур в любой выделенной вершине, при этом
образуются две совпадающие, но все же раздельные вершины;

106
 Insert (Вставить) — дает возможность вставить вершину в любой точке сплайна, сразу
же переместить ее и продолжить добавление новых вершин;
 Delete (Удалить) — используется для удаления выделенных вершин;
 Weld (Слить) — отвечает за объединение двух выделенных концевых или
совпадающих вершин в одну с учетом значения параметра Weld Threshold (Порог
слияния), задающего расстояние, при котором совпадающие вершины будут
объединяться;
 Fuse (Приблизить) — позволяет приблизить выделенные точки друг к другу,
применение данной операции полезно перед свариванием вершин при помощи
операции Weld;
 Connect (Соединить) — осуществляет соединение двух вершин на концах
разомкнутого сплайна отрезком прямой;
 Fillet (Скруглить) — позволяет скруглять любые углы;
 Chamfer (Фаска) — отвечает за снятие прямой фаски с любого угла.

Для примера создайте сплайн в виде звезды (рис. 27). Чтобы получить доступ к
редактированию вершин, превратите его в редактируемый сплайн, щелкнув правой кнопкой
мыши на сплайне и выбрав команду Convert To=>Convert to Editable Spline (Конвертировать
в=>Конвертировать в редактируемый сплайн). Последовательно при нажатой клавише Ctrl
выделите все внешние вершины звезды, а затем щелкните на кнопке Fillet и скруглите
вершины так, чтобы звезда превратилась в цветок (рис. 28). Выделите все внутренние
вершины и сведите их в одну точку, щелкнув на кнопке Fuse, а затем объедините при помощи
операции Weld (рис. 29). И напоследок попробуйте сделать лепестки более округлыми при
помощи операции Fillet (рис. 30). Полученный результат показан на рис. 31.

Рис. 27. Исходная звезда

107
Рис. 28. Результат скругления внутренних вершин

Рис. 29. Сведение внутренних вершин

Рис. 30. Скругление лепестков

108
Рис. 31. Цветок
А теперь более сложное задание: откройте ранее созданный файл с заготовкой для рюмки.
Перейдите в режим редактирования вершин, активизировав панель Modify (Изменение) и
щелкнув на кнопке Vertex (Вершины). Масштабируйте изображение, а затем проверьте, все ли
вершины находятся на своих местах, и при необходимости переместите ту или иную вершину
инструментом Select and Move (Выделить и переместить) так, чтобы все сегменты находились
относительно друг друга под нужными углами.
Выделите указанную на рис. 32 вершину и измените ее тип на Bezier Corner (Безье угловая),
указав его в контекстном меню. Измените степень кривизны прилегающего к данной вершине
сегмента примерно так, как показано на рис. 33. Выделите указанную на рис. 34 вершину и
скруглите соответствующий угол, щелкнув на кнопке Fillet (Скруглить) и постепенно изменяя
значение параметра в поле соответствующего счетчика или перемещая вершину мышью (рис.
35). Аналогичным образом скруглите угол при вышерасположенной вершине (рис. 36).
Превратите указанную на рис. 37 вершину в вершину типа Bezier Corner (Безье угловая), а
затем измените кривизну прилегающих к вершине сегментов в соответствии с рис. 38.

Рис. 32. Превращение обычной угловой вершины в угловую вершину Безье

109
Рис. 33. Результат изменения кривизны сегмента, прилегающего к угловой вершине Безье

Рис. 34. Вершина, угол размещения которой нужно скруглить

Рис. 35. Скругление первого угла

110
Рис. 36. Скругление второго угла

Рис. 37. Вершина, которую нужно превратить в угловую вершину Безье

Рис. 38. Результат изменения кривизны сегментов, прилегающих к угловой вершине Безье

111
Добавьте к контуру дополнительную вершину, нажав в свитке Geometry (Геометрия) на
кнопке Refine (Уточнить) и щелкнув в том месте контура, где должна появиться новая
вершина (рис. 39). Обратите внимание, что в режиме добавления точек к контуру при
попадании мыши на контур вид курсора меняется — в это время и следует щелкать. Щелкните
еще раз на кнопке Refine для перехода в обычный режим редактирования. Превратите
указанную на рис. 40 точку в угловую Безье, а затем измените кривизну прилегающего к точке
сегмента (рис. 41).

Рис. 39. Добавление новой вершины

Рис. 40. Вершина, которую нужно превратить в угловую вершину Безье

112
Рис. 41. Результат изменения кривизны сегмента, прилегающего к угловой вершине Безье
Попробуем на основе данного сплайна создать тело вращения, то есть модель, имеющую
центральную осевую симметрию. В следующих уроках мы познакомимся с самыми разными
примерами превращения сплайновых форм в трехмерные модели, а пока ограничимся телом
вращения как самым простым способом моделирования. Создаются такие модели путем
вращения сплайна вокруг произвольной оси, а для проведения данной операции используется
модификатор Lathe (Вращение).
Примените к построенному сплайну модификатор Lathe (Вращение), для чего выполните из
главного меню команду Modifiers=>Patch/Spline Editing=>Lathe
(Модификаторы=>Редактирование патчей/сплайнов=>Вращение). Обратите внимание, что
список Modifier List пополнился строкой Lathe. Для настройки варианта вращения в группе
Align (Выравнивание) свитка Parameters (Параметры) щелкните на кнопке Max (Максимум),
в группе Output (Вывод) выберите вариант Patch (Патч), в группе Direction (Направление
оси) выберите вариант Y (рис. 42). Перейдите в проекцию Perspective и, не снимая выделения
с объекта в свитке Parameters (Параметры), включите флажок Flip Normals (Нормальный
поворот) — вы увидите примерно такую же рюмку, как показана на рис. 43.

Рис. 42. Применение модификатора Lathe

113
Рис. 43. Рюмка

РЕДАКТИРОВАНИЕ НА УРОВНЕ СЕГМЕНТОВ

Редактирование сплайнов на уровне сегментов позволяет:

 разбивать сплайн на отдельные части — операция Break (Разбить);


 добавлять новые вершины к существующим сегментам — операция Refine (Уточнить);
 отделять сегменты, преобразуя их в самостоятельные формы, — Detach (Отделить);
 удалять сегменты — операция Delete (Удалить);
 добавлять указанное количество вершин на выделенном сегменте, разбивая его при
этом на равные части, — операция Divide (Разделить).

Чтобы потренироваться в редактировании на уровне сегментов, вернемся к решетке и


попробуем смоделировать ее снова — с учетом выявленных ошибок. Для этого вновь создайте
сплайн-прямоугольник и дополните его дугой (рис. 44). Перейдите в режим редактирования
сегментов, выделите показанный на рис. 45 сегмент. Затем щелкните на кнопке Divide
(Разделить), предварительно указав в находящемся рядом с кнопкой поле число добавляемых
вершин (рис. 46). Аналогичную операцию выполните в отношении левой стороны
прямоугольника и для каждого из сегментов дуги (рис. 47).

114
Рис. 44. Заготовка для решетки

Рис. 45. Выделение разбиваемого на части сегмента

Рис. 46. Результат разбиения сегмента на части

115
Рис. 47. Изображение после окончательного разбиения сегментов
Включите привязку к вершинам — это обеспечит в дальнейшем идеальное совпадение
вершин при добавлении новых сплайнов. Для этого щелкните в основной панели
инструментов правой кнопкой на инструменте Snaps Toggle (Переключатель привязки), на
вкладке Snaps (Привязки) включите флажок Vertex (Вершины), а затем левой кнопкой вновь
щелкните на Snaps Toggle для активации режима. Перейдите в режим редактирования вершин
и включите опцию добавления линий, щелкнув на кнопке Greate Line (Создать линию).
Отличие данного инструмента от инструмента Line (Линия) состоит в том, что новые линии
будут автоматически добавляться к редактируемому сплайну. Начинайте создавать нужные
линии. Обратите внимание, что при приближении к вершине маркер мыши превращается в
голубой крестик (рис. 48). Готовая решетка представлена на рис. 49 — расстояние между
прутьями решетки теперь одинаковое, а вершины совпадают с границами решетки. Чтобы
основание решетки было толще, чем отдельные прутья, разбейте форму на два отдельных
сплайна: рамку и прутья решетки. Перейдите в режим редактирования сегментов, выделите
сегменты рамки и щелкните на кнопке Detach (Отделить) — выделенные сегменты
превратятся в самостоятельные объекты. Затем выделите рамку и установите для нее одну
толщину, а для прутьев — другую, проведите рендеринг. Полученная в итоге решетка
показана на рис. 50.

116
Рис. 48. Добавление линий в режиме привязки к вершинам

Рис. 49. Вид решетки после добавления линий

117
Рис. 50. Решетка

РЕДАКТИРОВАНИЕ НА УРОВНЕ СПЛАЙНОВ

Редактирование на уровне сплайнов позволяет:

 объединять сплайны — операция Attach (Присоединить);


 создавать вдоль сплайнов контуры указанной ширины — операция Outline (Контур);
 зеркально отражать сплайны по вертикали, горизонтали или по диагонали — операция
Mirror (Отражение);
 менять местами у сплайнов начальную и конечную точки — операция Reverse
(Перевернуть);
 применять к сплайнам различные модификаторы, выполнять над сплайнами булевы
операции — операция Boolean (Булевые) и пр.

Чтобы разобраться в нюансах редактирования форм на уровне сплайнов, попробуем создать


модель оконной рамы. Для начала создайте сплайн-прямоугольник, конвертируйте его в
редактируемый сплайн (команда Convert To=>Convert to Editable Spline — Конвертировать
в=>Конвертировать в редактируемый сплайн). Перейдите в режим редактирования сплайнов и
для имитации толщины рамы создайте вокруг контура обводку, щелкнув на кнопке Outline
(Контур), с параметрами смещения порядка 5-10 (рис. 51). Внутренние перегородки окна
создайте в виде сплайнов-линий и дополните их точно такими же контурами (рис. 52).
Обратите внимание, что фрагменты рамы находят друг на друга — это необходимое условие
для проведения булевых операций (подробно мы рассмотрим их в одном из следующих
уроков, а пока ограничимся одним экспериментом). Проведите рендеринг, включив
необходимые параметры, и увидите, что пока рама выглядит совсем не так, как хотелось бы,
— все наезжающие друг на друга контуры видны (рис. 53).

118
Рис. 51. Заготовка для оконной рамы

Рис. 52. Оконная рама с внутренними перегородками

119
Рис. 53. Вид рамы после рендеринга
Теперь нужно объединить отдельные сплайны в единую форму. Выделите саму раму,
перейдите в режим редактирования сплайнов, щелкните на кнопке Attach (Присоединить), а
затем сначала на одной внутренней перекладине, а затем на второй — форма станет единой. В
режиме редактирования сплайнов выделите внутреннюю часть рамы (рис. 54), активизируйте
кнопку Subtraction (Исключение), щелкните на кнопке Boolean (Булевые), а затем по
горизонтальной перемычке. Это приведет к объединению рамы с горизонтальной
перекладиной (рис. 55). Вновь выделите внутреннюю часть рамы и выполните те же самые
действия, указав вместо горизонтальной перегородки вертикальную, проведите рендеринг и
получите уже единый оконный блок (рис. 56).

Рис. 54. Выделение рамы перед булевой операцией

120
Рис. 55. Результат первой булевой операции

Рис. 56. Оконная рама


И напоследок попробуем создать заготовку для трехмерного логотипа Windows.
Инструментом Arc создайте дугу (рис. 57), сделайте копию дуги и разместите ее чуть выше
(рис. 58). Конвертируйте любую из дуг в редактируемый сплайн и перейдите в режим
редактирования вершин. Активируйте кнопку Attach (Присоединить) и укажите в качестве
присоединяемой вторую дугу — в результате дуги станут отдельными сплайнами единой
формы (рис. 59). Соедините начальные и конечные точки обеих дуг. Для этого в режиме
редактирования вершин щелкните на кнопке Connect (Соединить), установите мышь на
первую вершину, нажмите левую кнопку и, не отпуская ее, протяните отрезок ко второй
вершине. Затем ту же самую операцию проведите для двух других вершин (рис. 60).

121
Рис. 57. Исходная дуга

Рис. 58. Появление копии дуги

Рис. 59. Результат объединения дуг в форму

122
Рис. 60. Соединение вершин на концах сплайнов отрезками прямых
Примените ко всей форме модификатор Extrude (Выдавливание), выбрав из главного меню
команду Modifiers=>Mesh Editing=>Extrude (Модификаторы=>Редактирование
сеток=>Выдавливание) и экспериментальным путем подобрав нужное значение параметра
Amount. Результатом станет объемная выпуклая поверхность, как на рис. 61. Обратите
внимание, что список Modifier List пополнился строкой Extrude. Сделайте копию данной
формы и разместите обе формы как показано на рис. 62. Попеременно работая инструментами
Select and Move (Выделить и передвинуть) и Select and Rotate (Выделить и повернуть),
измените положение клонированной поверхности в соответствии с рис. 63. Сделайте копию
обеих поверхностей и расположите все четыре поверхности так, как они размещаются на
логотипе Windows. По окончании подберите цвета — результат показан на рис. 64.

123
Рис. 61. Объемная выпуклая поверхность

Рис. 62. Появление копии формы

124
Рис. 63. Результат изменения положения клонированной формы

Рис. 64. Объемный логотип Windows

125
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 5. СОЗДАНИЕ
МОДЕЛЕЙ МЕТОДОМ ЛОФТИНГА
Лофтинг и loft-объекты
Создание loft-объектов
Редактирование loft-объектов
Добавление в loft-объект новых сечений
Удаление сечений
Замена сечения в loft-объекте
Редактирование сплайнов пути и сечений на уровне параметрической формы
Изменение контуров пути и сечений на уровне подобъектов
Проблема скручивания
Создание loft-объектов на основе составных сплайнов
Создание loft-объектов на основе разомкнутых сплайнов
Примеры создания простейших loft-моделей
Незаточенный карандаш
Рамка
Заточенный карандаш
Ниспадающая складками ткань
Гайка
Фрагмент кованой мебельной ручки

Одним из широко используемых способов моделирования объектов в 3D Studio MAX


является метод формования, или лофтинга (lofting), позволяющий преобразовывать сплайны в
трехмерные тела самых разных форм — начиная от абстрактных объектов (например,
изученных ранее примитивов) и заканчивая совершенно реалистичными моделями. Довольно
часто лофтинг оказывается самым быстрым способом создания той или иной модели методом
моделирования. Например, сложный объект, на моделирование которого посредством
полигонов понадобилось бы не меньше часа, можно смоделировать при помощи лофтинга за
10-15 минут.
Тема лофтинга необычайно обширна, но в этом уроке мы остановимся лишь на основных
понятиях lofting -моделирования.

ЛОФТИНГ И LOFT-ОБЪЕКТЫ

Термин «лофтинг» пришел из старинной практики кораблестроения, когда при


формировании корпуса судна последующие поперечные сечения шпангоута как бы
поднимались (lift off) по отношению к предыдущему поперечному сечению. Наверное,
поэтому при объяснении данного понятия сегодня в качестве аналогии довольно часто
прибегают к описанию строительства корпуса судна.
Loft-объекты строятся путем формирования оболочки по опорным сечениям,
расставляемым вдоль некоторой заданной траектории. Оболочка как бы натягивается на
сечения вдоль указанного пути, а в результате получается трехмерная модель. Данный метод
моделирования прекрасно подходит для тех моделей, форма которых может быть
охарактеризована некоторым набором поперечных сечений. В основе любого подобного
объекта всегда лежат траектория (путь) и одно или более сечений (форм). Путь задает
основную линию loft-объекта и может иметь форму прямой, окружности, спирали,
произвольной кривой и т.п., а сечения определяют его форму и тоже могут быть самыми
разнообразными (рис. 1). При использовании нескольких сечений они размещаются вдоль
пути по указанному пользователем принципу, а в случае одного сечения данная форма
размещается на обоих концах пути.

126
Рис. 1. Пример loft-объекта с отображением пути и одного поперечного сечения
Оба типа структурных элементов — путь и сечения — представлены обычными сплайнами.
Форма пути может содержать только один сплайн, так как программа отказывается принимать
любую форму, содержащую в качестве пути более одного сплайна. И если при попытке
создания loft-объекта кнопка выбора пути не активизируется, то это значит, что выделенная
форма содержит более одного сплайна.
Сплайны форм поперечных сечений могут иметь любое количество сплайнов, но число
сплайнов во всех задействованных в данном loft-объекте сечений должно быть одинаково.
Кроме того, если сечение представлено составными формами из нескольких сплайнов, то
данные формы должны иметь одинаковый порядок вложения. Это означает, что если первое
сечение содержит внутри одного сплайна два других сплайна, то и все последующие сечения
должны быть сформированы по тому же принципу. А если в копии данной составной формы
переместить два внутренних сплайна вне исходного, то ее уже нельзя будет указать в качестве
второго сечения (рис. 2). Правда, при желании в ряде случаев данное ограничение можно
обойти, превратив обычные замкнутые сплайны в разомкнутые (рис. 3).

Рис. 2. Пример двух сечений, которые не могут входить в состав одного и того же loft-
объекта (в верхнем сечении два сплайна находятся внутри третьего, а в нижнем — рядом с
ним)

127
Рис. 3. Пример двух сечений, которые могут входить в состав одного и того же loft-объекта
(в выделенных вершинах оба сплайна искусственно разомкнуты)
Форма loft-объекта определяется не только за счет пути и определенного набора сечений —
не менее важны положение внутренних сечений вдоль пути и согласование первых вершин
каждой формы поперечного сечения. От размещения сечений вдоль пути зависит то, как и в
какой момент будет смоделирован переход от одного сечения к другому, а согласование
вершин позволяет избежать перекручивания моделей при переходе от сечения к сечению или,
наоборот, при необходимости искусственно скручивать объекты.
При работе с loft-объектами массу вопросов вызывают обычные трансформации,
осуществляемые инструментами Select and Move (Выделить и передвинуть), Select and Scale
(Выделить и масштабировать) и Select and Rotate (Выделить и повернуть), поскольку попытка
воспользоваться ими для преобразования пути или сечения никак не сказывается на loft-
объекте (рис. 4). Дело в том, что трансформации, применяемые к исходным объектам
лофтинга (к пути и сечениям), игнорируются — такова особенность работы 3D Studio MAX.
Однако не стоит думать, что редактировать loft-объект невозможно и что нужно изначально
создавать его на основе идеально подобранных пути и сечений. Возможностей редактирования
предостаточно, и мы с ними ознакомимся.

Рис. 4. Неудачная попытка масштабирования формы сечения (размер сечения был уменьшен,
а loft-объект остался прежним)

128
СОЗДАНИЕ LOFT-ОБЪЕКТОВ

Исходные формы для loft-объектов (путь и сечения) можно создавать в любом окне
проекций, поэтому при выборе окна проекций стоит исходить из удобства моделирования,
отдавая предпочтение тому окну проекций, которое в наибольшей степени согласуется с
видом объекта сверху или спереди.
Loft-объекты относятся к составным объектам (Compound Objects, рис. 5) категории
Geometry (Геометрия), и для их построения предназначена кнопка Loft (Лофтинговый),
которая становится доступной при выделении одной из исходных форм и активизации типа
Compound Objects категории Geometry. Можно пойти и другим путем — выбрать из главного
меню команду Create=>Compound=>Loft, что тоже приведет к открытию панели с
настройками loft-объекта.

Рис. 5. Тип Compound Objects с входящими в него вариантами составных объектов


Создавать простые loft-объекты можно двумя способами: указывая либо путь — для этого
варианта предназначена кнопка Get Path (Указать путь, рис. 6) из свитка Creation Method
(Метод создания), либо форму-сечение при помощи кнопки Get Shape (Указать форму). Оба
варианта равнозначны, но различаются расположением в пространстве получаемого
лофтингового объекта, которое определяется на основании предварительно выделенного
объекта: сечения — в первом случае и пути — во втором. Кроме названных кнопок, в свитке
Creation Method (Метод создания) имеется важный переключатель, имеющий три положения:

 Move (Переместить) — форма-сечение, указанная после щелчка на кнопке Get Shape


(Указать форму) или Get Path (Указать путь), будет помещена в создаваемый loft-
объект и перестанет существовать как независимый объект;
 Copy (Копировать) — в составе создаваемого loft-объекта будет использована
независимая копия исходной формы-сечения;
 Instance (Образец) — будет применен образец формы-сечения, который установлен по
умолчанию и используется чаще всего, так как любое последующее допустимое
изменение формы будет отражаться на loft-объекте. Правда, в этом случае сцена
постепенно загромождается лишними объектами, поэтому обычно после окончания
моделирования loft-объекта ненужные формы скрываются или вообще удаляются со
сцены.

129
Рис. 6. Кнопка Get Path из свитка Creation Method
При создании любого loft-объекта следует обратить внимание на следующие моменты:

 если нет ни одного выделенного объекта, то кнопка Loft (Лофтинговый) будет


недоступной;
 если предварительно выделенная форма состоит более чем из одного сплайна, то
кнопка Get Shape (Указать форму) в свитке Creation Method (Метод создания)
окажется недоступной.

Довольно часто построение лофтинговой модели начинают с создания базового объекта с


одним-единственным сечением, который создается на начальном этапе формирования модели.
Для примера активизируйте категорию объектов Shapes (Формы) командной панели Create
(Создание), в списке разновидностей объектов укажите тип Splines (Сплайны) и постройте два
сплайна: звезду (Star) в качестве сечения loft-объекта и линию (Line) в качестве его пути (рис.
7). Выделите звезду, щелкните на кнопке Geometry (Геометрия) командной панели Create
(Создать) и выберите в раскрывающемся списке разновидностей объектов вариант Compound
Objects (Составные объекты). В свитке Object Type (Тип объекта) сначала щелкните на
кнопке Loft (Лофтинговый), потом на кнопке Get Path (Указать путь) — выбранная кнопка
подсвечивается желтым цветом, а затем укажите мышью предварительно созданный сплайн
пути. В результате получится фигура, образованная движением звезды по линии. Проведя
рендеринг, вы увидите примерно такой объект, как показан на рис. 8.

130
Рис. 7. Исходные формы для первого loft-объекта

Рис. 8. Первый loft-объект


Создайте другую форму пути в виде эллипса (рис. 9) и вновь сформируйте лофтинговый
объект, но теперь уже на основе звезды и эллипса; результат рендеринга показан на рис. 10.
Затем попробуйте получить loft-объект, взяв в качестве пути криволинейный сплайн.
Последний нужно предварительно создать из линейных сплайнов, затем перейти в режим
редактирования сплайна на уровне вершин, превратить каждую вершину в сглаженную и
откорректировать положение вершин для достижения задуманной кривизны (рис. 11 и 12).
Сохраните данный базовый объект, так как он потребуется нам в дальнейшем.

131
Рис. 9. Исходные формы для второго loft-объекта

Рис. 10. Второй loft-объект

Рис. 11. Исходные формы для третьего loft-объекта

132
Рис. 12. Третий loft-объект
Кроме пути и сечения, на внешний вид loft-объекта влияют и другие параметры,
устанавливаемые в свитках Surface Parameters (Параметры поверхности) и Skin Parameters
(Параметры оболочки). Первый свиток содержит опции для управления способами
визуализации поверхности лофтинга; с его помощью, например, можно управлять степенью
сглаживания оболочки вдоль и поперек пути (рис. 13 и 14). Второй свиток содержит
множество опций, влияющих не только на отображение оболочки лофтинга, но и на плотность
каркаса и используемые методы интерполяции; с его помощью можно, в частности,
регулировать детальность создаваемой модели (рис. 15 и 16).

Рис. 13. Спираль с включением обоих вариантов сглаживания

133
Рис. 14. Спираль с отключением сглаживания по длине

Рис. 15. Спираль с обычной плотностью каркаса

134
Рис. 16. Спираль с уменьшенной плотностью каркаса

РЕДАКТИРОВАНИЕ LOFT-ОБЪЕКТОВ

Под редактированием loft-объекта понимаются различные операции:

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


интересные модели, чем на основе одного сечения;
 удаление сечений;
 замена одного сечения loft-объекта на другое, что бывает необходимо, если выбор
сечения оказался неудачным, а изменить сечение слишком долго или вообще
невозможно;
 редактирование сплайнов пути и сечений на уровне параметрической формы. Таким
способом можно выполнить только самые простые преобразования, например
увеличить или уменьшить радиус сечения, изменить число вершин в случае
многоугольника и звезды и т.п.;
 изменение контуров пути и сечений на уровне подобъектов: вершин, сегментов, что
позволяет изменять объект до полной неузнаваемости. Данная возможность
обязательно предполагает предварительное (то есть до проведения лофтинга)
конвертирование соответствующих сплайнов из обычных в редактируемые при
помощи команды Convert To=>Convert to Editable Spline (Конвертировать
в=>Конвертировать в редактируемый сплайн). При этом редактируемые сплайны
перестают быть параметрическими объектами, и их уже нельзя будет редактировать на
уровне параметров, изменяя ширину, высоту, радиус и пр.

ДОБАВЛЕНИЕ В LOFT-ОБЪЕКТ НОВЫХ СЕЧЕНИЙ

После создания базового loft-объекта в него можно добавлять дополнительные сечения, что
позволяет превращать простые объекты в гораздо более сложные и интересные. Добавлять
новые сечения можно как в режиме создания loft-формы (панель Create — Создание), так и в
режиме ее редактирования (панель Modify — Изменение).
Возьмите за основу уже созданный и сохраненный нами лофтинговый объект на основе
звезды и криволинейного сплайна и для удобства дальнейшего обзора немного развернем его
(рис. 17). Затем создайте дополнительно еще один сплайн в виде окружности, затем выделите
loft-объект и активизируйте панель Modify. Теперь нужно указать местоположение нового
сечения на пути — для этого предназначено поле Path (Путь) в свитке Path Parameters

135
(Параметры пути), где устанавливается так называемый уровень пути (по умолчанию он равен
нулю). Уровень может вводиться либо в процентах длины пути — в данном случае должен
быть установлен флажок Percentage (Процент), либо как абсолютное расстояние вдоль пути в
случае активизации флажка Distance (Расстояние). В нашем примере удобнее воспользоваться
процентами и добавить новое сечение, например, в конце пути. Для этого в поле Path (Путь)
при включенном флажке Percentage (Процент) введите число 100. Далее щелкните на кнопке
Get Shape (Указать форму) и укажите созданную окружность — loft-объект изменится и
станет напоминать представленный на рис. 18. Ради интереса можно добавить в середине пути
еще одно сечение в виде окружности, которую лучше сделать немного побольше диаметром.
Для этого создайте окружность, выделите loft-объект, активизируйте панель Modify, в поле
Path (Путь) введите число 50, щелкните на кнопке Get Shape (Указать форму) и укажите
вторую окружность (рис. 19).

Рис. 17. Исходный loft-объект

Рис. 18. Loft-объект после добавления второго сечения

Рис. 19. Loft-объект после добавления третьего сечения

136
Если вы строите модели с несколькими сечениями, то имейте в виду, что хотя теоретически
разные сечения могут иметь различное число вершин, но на практике для получения
сглаженной формы лучше, чтобы количество вершин у всех сплайнов-сечений было
одинаковым. В противном случае, особенно при сильно различающемся количестве вершин,
возможно непредсказуемое перекручивание и растягивание loft-модели. Чтобы уравнять число
вершин, в сечения в режиме редактирования сплайнов на уровне вершин следует добавить
недостающие вершины. Последнее можно сделать как вручную, проставляя вершины при
помощи кнопки Refine (Уточнить), так и с помощью операции Divide (Разделить), которая
позволяет добавлять указанное количество вершин на выделенном сегменте сплайна, разбивая
его при этом на равные части.

УДАЛЕНИЕ СЕЧЕНИЙ

Для удаления сечения, неверно вставленного в loft-объект, нужно в режиме редактирования


loft-объекта выделить его. Активировав панель Modify, установить режим редактирования
сечений (Shape), в одном из окон проекций выделить удаляемое сечение и щелкнуть на
кнопке Delete (рис. 20) в свитке Shape Commands или нажать клавишу Del.

Рис. 20. Удаление сечения из loft-объекта

ЗАМЕНА СЕЧЕНИЯ В LOFT-ОБЪЕКТЕ

У кнопки Get Shape (Ввести форму) имеются две функции: она отвечает за добавление
сечения в loft-объект и помогает заменить в уже созданном объекте одно сечение на другое.
Опробуем данную операцию на созданном ранее и сохраненном базовом рабочем объекте.
Выделите его, в поле Path (Путь) введите число 100, щелкните на кнопке Get Shape (Указать
форму) и укажите вместо окружности, ранее использовавшейся в качестве последнего сечения
пути, ту же самую звезду, что применяется в начале пути. Loft-объект тут же изменится (рис.
21).
137
Рис. 21. Loft-объект после замены последнего сечения
Обратите внимание, что для перехода от сечения к сечению совсем не обязательно вручную
указывать соответствующий ей уровень пути в поле Path (Путь) — можно воспользоваться
двумя кнопками свитка Path Parameters (Параметры пути): Next Shape (Следующая форма),
которая отвечает за перемещение вдоль пути вперед к уровню следующей формы, и Previons
Shape (Предыдущая форма), которая позволяет переместиться на уровень предыдущей
формы.
Поменять можно не только сечение, но и сам путь, для чего нужно, выделив loft-объект,
щелкнуть на кнопке Get Path (Указать путь) и в качестве нового пути указать другой сплайн.
То, что получилось при замене пути в рабочем объекте с криволинейного сплайна на спираль,
представлено на рис. 22.

Рис. 22. Loft-объект после замены сплайна пути

РЕДАКТИРОВАНИЕ СПЛАЙНОВ ПУТИ И СЕЧЕНИЙ НА УРОВНЕ ПАРАМЕТРИЧЕСКОЙ


ФОРМЫ

Данный вид редактирования возможен только в том случае, если задействованные в loft-
объекте сплайны не были конвертированы в редактируемый сплайн, и подразумевает
изменение параметрических характеристик пути или сечения. Для примера возьмите наш
рабочий объект, выделите сечение-звезду, активизируйте панель Modify и уменьшите
количество вершин с 11 до 5 (рис. 23). Loft-объект сразу же изменится (рис. 24).

138
Рис. 23. Изменение количества вершин сечения-звезды

Рис. 24. Измененный Loft-объект

ИЗМЕНЕНИЕ КОНТУРОВ ПУТИ И СЕЧЕНИЙ НА УРОВНЕ ПОДОБЪЕКТОВ

Как уже было сказано, для того чтобы получить возможность редактирования, нужно
предварительно превратить сплайны из обычных в редактируемые. В нашем рабочем примере
это сделано не было, поэтому придется создать новый loft-объект, на котором мы и будем
проводить свои эксперименты. Поэтому сначала выделите сечение-звезду и конвертируйте ее
в редактируемый сплайн командой Convert To=>Convert to Editable Spline (Конвертировать
в=>Конвертировать в редактируемый сплайн), а потом создайте новый сплайн обычным
139
образом (рис. 25). Выделите звезду, перейдите в режим редактирования вершин и измените
форму сплайна произвольным образом, например удалив часть вершин (рис. 26). В результате
правый loft-объект тут же изменится (рис. 27).

Рис. 25. Исходные loft-объекты: правый может редактироваться на уровне подобъектов, а


левый не может

Рис. 26. Выделение части вершин сечения для их последующего удаления

140
Рис. 27. Loft-объект после изменения сечения на уровне вершин

ПРОБЛЕМА СКРУЧИВАНИЯ

Неприятным моментом при создании loft-моделей с несколькими сечениями является


скручивание объекта от сечения к сечению, если первые вершины сечений не находятся на
одной прямой. В некоторых объектах это может не слишком бросаться в глаза, но если
количество вершин разных сечений различается, то это может оказаться очень заметным. Для
примера создайте лофт на основе сплайнов (рис. 28), указав линию в качестве пути, а
окружность, квадрат и звезду — в качестве сечений. Окружность установите на уровне 0,
квадрат — на уровне 50, а звезду — на уровне 100. Результат лофтинга представлен на рис. 29.

Рис. 28. Исходные сплайны для loft-объекта

141
Рис. 29. Исходный loft-объект: перекосы видны очень сильно
Для ликвидации скручивания необходимо выровнять первые вершины всех входящих в loft-
объект сечений (данные вершины в режиме редактирования вершин выделяются
квадратиками). Суть процесса выравнивания состоит в том, чтобы установить все первые
вершины на одной прямой. Сделать это можно двумя путями. Можно последовательно
перебрать все сечения в режиме редактирования вершин и установить в них первые вершины
там, где это необходимо, каждый раз выделяя вершину и щелкая на кнопке Make First
(Сделать первой). Очевидно, что данный вариант возможен лишь в том случае, если все
сечения loft-объекта были превращены в редактируемые сплайны до проведения лофтинга.
Можно пойти и другим путем: выделить loft-объект, перейти в режим редактирования
подобъектов модификатора Loft на уровне редактирования сечений (Shape, рис. 30) и
щелкнуть на кнопке Compare (Сравнить). Это приведет к открытию пустого окна Compare,
куда нужно загрузить все нужные сечения. Для этого щелкните на кнопке Pick Shape (в
стадии активности она будет желтого цвета) и последовательно укажите в одном из окон
проекций все сечения (в момент попадания указателя мыши на сечение внешний вид указателя
меняется на знак «+»). В результате окно Compare станет выглядеть примерно так, как на рис.
31. С помощью инструмента Select and Rotate (Выделить и повернуть) поверните каждое из
сечений таким образом, чтобы все первые вершины оказались на одной прямой (рис. 32).
Данную операцию выполняют в любом из окон проекций, а окно Compare служит для
контроля за положением начальной точки поворачиваемого сечения. Результатом
выравнивания первых вершин будет исчезновение скручивания (рис. 33).

142
Рис. 30. Выбор режима редактирования Shape для loft-объекта

Рис. 31. Окно Compare после добавления сечений


143
Рис. 32. Окно Compare после выравнивания первых вершин

Рис. 33. Loft-объект после выравнивания вершин

СОЗДАНИЕ LOFT-ОБЪЕКТОВ НА ОСНОВЕ СОСТАВНЫХ СПЛАЙНОВ

Как уже было отмечено, в качестве сечений могут выступать не только одиночные, но и
составные сплайны, что существенно расширяет возможности лофтинг-моделирования. При
этом даже объедение двух элементарных фигур (например, квадрата и окружности), в
144
зависимости от их расположения по отношению друг к другу, позволяет генерировать самые
разные модели — как полые, так и представляющие собой объединение двух объемных тел,
что достигается без использования булевых операций.
Для примера создайте произвольную кривую в качестве пути, а квадрат и окружность — в
качестве сечения. При этом сплайны сечения нужно конвертировать в редактируемые и
объединить в составной сплайн, воспользовавшись кнопкой Attach (Присоединить; рис. 34).
Проведите лофтинг и получите объект, показанный на рис. 35. Выделите сечение, перейдите в
режим редактирования сплайна на уровне Spline и переместите окружность внутрь квадрата
— loft-объект изменится и станет полым (рис. 36). Затем перетащите окружность вне квадрата
— loft-объект окажется представленным двумя отдельными телами (рис. 37).

Рис. 34. Исходный составной сплайн и сплайн-путь

Рис. 35. Первый loft-объект

145
Рис. 36. Второй loft-объект

Рис. 37. Третий loft-объект

СОЗДАНИЕ LOFT-ОБЪЕКТОВ НА ОСНОВЕ РАЗОМКНУТЫХ СПЛАЙНОВ

Комбинации замкнутых и разомкнутых сплайнов позволяют создавать разнообразные


поверхности с разрезами и разрывами. Задействованные в них разомкнутые сплайны часто
создаются на основе замкнутых, в которых выделяются вершины в местах разрыва, а затем к
ним применяется команда Break (Разорвать). Стоит отметить, что в такого рода loft-объектах
согласование первых вершин приобретает еще большее значение, поскольку такие
поверхности сильнее подвержены скручиванию.
В качестве примера формирования простейшего объекта данного типа создайте обычную
окружность, конвертируйте ее в редактируемый сплайн, выделите все четыре сегмента
окружности и добавьте в каждый из них по четыре дополнительных вершины, щелкнув на
кнопке Divide (Разделить) — рис. 38. Сделайте копию окружности и разорвите данный сплайн
в указанной на рис. 39 точке, активировав кнопку Break (Разорвать) и щелкнув в
соответствующей вершине. Скопируйте уже разорванный сплайн и измените положение
граничных вершин — например так, как показано на рис. 40. Согласуйте первые вершины — в
146
данном случае проще всего это сделать вручную, назначив первую вершину для окружности,
щелкнув на кнопке Make First (Сделать первой) и указав нужную вершину. Проведите
лофтинг, указав вначале первый слева сплайн, затем на уровне пути 30 — второй, на уровне 50
— третий, 70 — второй и 100 — первый. Loft-объект с разрывом представлен на рис. 41.

Рис. 38. Исходная окружность

Рис. 39. Разрыв второго сплайна в указанной точке

Рис. 40. Редактирование третьего сплайна

Рис. 41. Loft-объект с разрывом


А теперь рассмотрим моделирование loft-объекта с использованием разомкнутых сплайнов,
которые на первый взгляд кажутся замкнутыми. Создайте примерно такие сплайновые
объекты, как показаны на рис. 42. Обратите внимание, что две верхние окружности (большая и
маленькая) относятся к первому составному сплайну и будут играть роль одного сечения, а
147
нижние — второго сечения. Линия, как обычно, будет использоваться в качестве пути.
Соответствующие окружности нужно будет объединить в составные сплайны в режиме
редактирования Spline. Напрямую такие составные сплайны в качестве разных сечений одного
и того же сплайна указать не удастся, так они имеют разную структуру. Однако мы применим
один хитрый прием: в режиме редактирования сплайнов при помощи кнопки Break
(Разорвать) разорвем первую большую окружность в двух противоположных точках (они
выделены на рис. 43), затем аналогичную операцию проведем в отношении нижнего
составного сплайна. После этого выделим линию и создадим loft-объект, указав вначале
нижний сплайн, затем на уровне 20 — верхний, а на уровне 60 — опять нижний. В итоге
получим объект (рис. 44), который впоследствии вполне можно будет превратить в обычную
кружку.

Рис. 42. Исходные формы для loft-объекта

Рис. 43. Разрыв верхнего составного сплайна в указанных точках

148
Рис. 44. Заготовка для кружки

ПРИМЕРЫ СОЗДАНИЯ ПРОСТЕЙШИХ LOFT-МОДЕЛЕЙ

НЕЗАТОЧЕННЫЙ КАРАНДАШ

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


представляющий собой лофтинг шестиугольника по линейному пути. Для его формирования
создайте шестиугольник и линию (рис. 45), выделите линию, щелкните на кнопке Geometry
(Геометрия), выберите в раскрывающемся списке разновидностей объектов вариант
Compound Objects (Составные объекты), щелкните на кнопке Loft (Лофтинговый), а затем на
кнопке Get Shape (Указать форму) и укажите в качестве сечения шестиугольник. Результат
представлен на рис. 46. Сохраните объект в файле, так как чуть позже мы к нему вернемся.

Рис. 45. Исходные формы для loft-объекта

149
Рис. 46. Незаточенный карандаш

РАМКА

Попробуем воспользоваться лофтинговым моделированием для создания рамки.


Активизируйте инструмент Line и создайте им линейный сплайн в виде замкнутой ломаной
(рис. 47). Преобразуйте сплайн в редактируемый при помощи команды Convert To=>Convert
to Editable Spline (Конвертировать в=>Конвертировать в редактируемый сплайн), перейдите в
режим редактирования вершин и превратите указанные на рис. 48 вершины в сглаженные,
выделив их и в контекстном меню выбрав тип Smooth (Сглаженная). Создайте второй сплайн
в виде большого прямоугольника, который в данном случае будет играть роль пути. Выделите
прямоугольник и создайте на его основе loft-объект, указав криволинейный контур в качестве
сечения. Полученная рамка представлена на рис. 49.

Рис. 47. Исходный линейный сплайн

Рис. 48. Изменение типа вершин

150
Рис. 49. Рамка

ЗАТОЧЕННЫЙ КАРАНДАШ

Попытаемся изменить созданную выше loft-модель карандаша таким образом, чтобы он стал
заточенным. Для этого придется добавить в нужных точках пути дополнительные сечения.
Вначале создайте маленькую окружность и добавьте ее на конце пути — для этого выделите
loft-объект, перейдите в режим его редактирования, в поле Path (Путь) введите число 100,
щелкните на кнопке Get Shape (Указать форму) и укажите данную окружность (рис. 50). В
принципе, заостренный конец карандаша выглядит вполне приемлемо, но уменьшение
диаметра должно производиться только в самом конце карандаша, а не на всем его
протяжении, поэтому придется заблокировать стачивание дополнительным сечением. Самое
простое — указать в качестве такого сечения тот же самый многоугольник, что был
использован при создании базовой модели карандаша. Поэтому выделите loft-модель,
перейдите в режим ее редактирования, в поле Path (Путь) введите число 75, щелкните на
кнопке Get Shape (Указать форму) и укажите многоугольник. Полученный в итоге объект
теперь действительно похож на карандаш (рис. 51).

151
Рис. 50. Loft-объект после добавления первого сечения

Рис. 51. Заточенный карандаш

НИСПАДАЮЩАЯ СКЛАДКАМИ ТКАНЬ

Изобразить ниспадающую складками ткань при помощи лофтинга совсем несложно. Для
этого достаточно создать два сечения в виде криволинейных контуров с большим числом
узлов и задать направление лофтинга (рис. 52). Затем следует указать верхнюю кривую в

152
качестве первого сечения на уровне 0, а вторую — в качестве второго сечения на уровне 100.
Результат будет неплохо смотреться даже без наложения материала (рис. 53).

Рис. 52. Исходные элементы для loft-объекта

Рис. 53. Ниспадающая складками ткань

ГАЙКА

А теперь попробуем создать гайку, причем добавлять новые сечения для разнообразия мы
будем не в ходе редактирования, а сразу же в процессе создания модели. Конечно, в
153
большинстве случаев ограничиться простыми сплайнами в качестве сечений не удается, так
что придется создавать из них более сложные составные сплайны. В случае гайки роль
сечения будет играть сплайн, включающий в свой состав шестиугольник (в качестве наружной
границы) и окружность (в качестве внутренней). Если же вспомнить про резьбу гайки, то
получится, что радиус окружности — величина переменная, которая будет принимать то одно,
то другое значение.
Для начала постройте два отдельных сплайна: многоугольник и окружность (рис. 54),
разместите окружность внутри многоугольника. На панели Modify отрегулируйте значения
радиусов обоих сплайнов: в нашем случае радиус многоугольника — 35, а окружности — 25.
Выделите оба объекта, сделайте копию и для удобства работы разместите ее рядом. Увеличьте
радиус скопированной окружности примерно на две единицы. Превратите первую группу из
многоугольника и окружности в составной сплайн — для этого выделите многоугольник,
переведите его в редактируемый сплайн, перейдите в режим редактирования Spline, щелкните
на кнопке Attach (Присоединить) и в качестве добавляемого объекта укажите окружность.
Оба объекта станут составными частями одного и того же сплайна, и теперь их можно будет
использовать как сечение. Аналогичную операцию выполните в отношении второй группы
объектов. Нарисуйте линию, которая потребуется в качестве пути (рис. 55).

Рис. 54. Многоугольник и окружность

Рис. 55. Исходные элементы loft-объекта


Выделите линию, перейдите в режим создания лофтинга, щелкните на кнопке Get Shape
(Указать форму) и укажите в качестве первого сечения первый составной объект. В результате
будет создана loft-модель гайки без резьбы (рис. 56). После этого сразу же в поле Path (Путь) в
свитке Path Parameters (Параметры пути) установите значение 13,5 — это уровень пути для
второго сечения. Укажите в качестве второго сечения второй составной объект. Введите в
поле Path (Путь) значение 25 и укажите первый составной объект и т.д. в соответствии с
таблицей. Разумеется, при ином варианте резьбы гайки закон чередования сечений будет
другим. Полученная по завершении операции подключения сечений гайка показана на рис. 57.

154
Уровень пути Сечение
0 Первый составной объект
13,3 Второй составной объект
25 Первый составной объект
38,5 Второй составной объект
50 Первый составной объект
63,5 Второй составной объект
75 Первый составной объект
88,5 Второй составной объект
100 Первый составной объект
Уровень пути для сечений гайки

Рис. 56. Гайка без резьбы

Рис. 57. Гайка с резьбой

ФРАГМЕНТ КОВАНОЙ МЕБЕЛЬНОЙ РУЧКИ

Мы уже говорили о том, что путь, состоящий из нескольких сплайнов, 3D Studio MAX не
принимает. Однако немалая часть моделей предполагает формирование достаточно сложных
путей, которые удобнее создавать на базе нескольких сплайнов. Объединение сплайнов в
155
составной здесь не поможет, поскольку программа по-прежнему не позволяет указать такой
сплайн в качестве пути. Выйти из положения можно, если превратить составной сплайн в
простой путем сварки вершин отдельных сплайнов в местах их соединения. Рассмотрим это на
примере создания фрагмента навесной кованой мебельной ручки.
За основу возьмите спираль, созданную инструментом Helix (Спираль), — из нее будем
моделировать путь для лофтинга и ромб с четырьмя вершинами как сечение (рис. 58).
Создайте копию спирали, зеркально ее отобразите, а затем разместите обе спирали нужным
образом. Превратите одну из спиралей в редактируемый сплайн, перейдите в режим
редактирования вершин, щелкните на кнопке Attach (Присоединить) и в качестве
добавляемого объекта укажите вторую спираль. В результате две отдельные спирали хотя и
превратятся в составной объект, но пока еще будут отдельными сплайнами, в чем несложно
убедиться по наличию в объекте двух первых вершин (рис. 59). Выделите указанные на рис. 60
вершины и щелкните на кнопке Fuse (Приблизить), чтобы приблизить вершины двух сплайнов
друг к другу. Затем щелкните на кнопке Weld (Слить) для объединения двух выделенных
концевых вершин в одну. Не забудьте при этом предварительно установить нужное значение
параметра Weld Threshold (Порог слияния), задающего расстояние, при котором
совпадающие вершины будут объединяться. Две спирали станут единым сплайном — об этом
будет свидетельствовать единственная начальная точки (рис. 61). Далее изменяйте сплайн по
своему желанию, чтобы он стал напоминать фигурный контур навесной мебельной ручки;
один из возможных вариантов такого контура показан на рис. 62. Это и будет путь для
лофтинга. Создайте на основе данного пути и подготовленного ранее сечения-ромба loft-
объект (рис. 63).

Рис. 58. Исходные элементы

Рис. 59. Составной сплайн

156
Рис. 60. Выделение свариваемых вершин

Рис. 61. Результат сваривания вершин

Рис. 62. Путь для loft-объекта

157
Рис. 63. Фрагмент мебельной ручки

158
МОДЕЛИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ БУЛЕВЫХ
ОПЕРАЦИЙ. УРОК 7
Теоретические основы булева моделирования
Моделирование при помощи булева объединения
Моделирование при помощи булева вычитания
Создание вложенных булевых объектов
Редактирование булева объекта
Примеры объектов, полученных с использованием булева моделирования
Пиала
Волчок
Ключ
Оконная рама
Кружка с ручкой
Головка для накидного гаечного ключа

Термин «булева операция» в математике используется для обозначения операций сравнения


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

ТЕОРЕТИЧЕСКИЕ ОСНОВЫ БУЛЕВА МОДЕЛИРОВАНИЯ

В 3D Studio MAX предусмотрены пять типов булевых операций (рис. 1):

 Union (Объединение) — результатом операции является объект, который получается


вследствие объединения двух исходных объектов; при этом части объектов,
оказавшиеся внутри общего внешнего объема, удаляются;
 Intersection (Пересечение) — полученный объект является результатом пересечения
двух исходных объектов; при этом части объектов, оказавшиеся вне общего
внутреннего объема, удаляются;
 Subtraction (A-B)/Subtraction (B-A) (Вычитание (A-B)/Вычитание (B-A)) —
результатом является объект, полученный посредством вычитания одного объекта из
второго, все части которого отсекаются объемом первого и удаляются;
 Cut (Вырезание) — полученный объект является результатом вырезания на
поверхности первого объекта в местах пересечения со вторым объектом
соответствующих отверстий и проемов.

159
Рис. 1. Примеры применения разных типов булевых операций
Булевы объекты являются разновидностью составных объектов и поэтому принадлежат к
группе Compound Objects (Составные Объекты) из категории Geometry (Геометрия) на
панели Create (Создать). Технология создания булева объекта состоит из двух этапов —
предварительной подготовки исходных объектов и последующего применения к ним
требуемой булевой операции, причем перед применением последней один из исходных
объектов обязательно должен быть выделен, иначе операция Boolean окажется недоступной.
Существует несколько методов создания булевых объектов:

 Copy (Копия) — при создании булева объекта сохраняется оригинал операнда В;


 Move (Перенос) — при создании булева объекта оригинал операнда В не сохраняется;
 Instance (Образец) — создается Boolean-объект и одновременно сохраняется копия
операнда В; при изменении копии булев объект будет изменяться, а при изменении
булева объекта будет меняться копия;
 Reference (Ссылка) — создается Boolean-объект и одновременно сохраняется копия В-
операнда; если при этом изменять оригинал, то Boolean-объект тоже изменится; если
же изменять Boolean-объект, то оригинал при этом изменяться не будет.
 Результат булевой операции не всегда оказывается удачным, поэтому следует
соблюдать ряд условий:
 исходные объекты должны пересекаться в некоторой области пространства, причем
характер пересечения нужно тщательно отрегулировать в окнах проекций;

160
 исходные объекты должны иметь достаточное количество сегментов и быть
сглаженными, иначе результат окажется слишком грубым или совсем не
соответствующим задуманному;
 каркасы должны быть построены правильно — грани, совместно использующие ребро,
должны совместно использовать и две вершины, а ребро может совместно
использоваться только двумя гранями. Для редактируемых сеток может потребоваться
объединение совпадающих вершин вручную в режиме Edit Mesh.

Для примера попробуйте создать булеву операцию вычитания на примере трех


перекрывающихся сфер (рис. 2). Выделите центральную сферу, на панели Create установите
категорию объектов Geometry, в списке типов объектов укажите тип Compound Objects
(Составные Объекты), щелкните по кнопке Boolean и установите операцию Subtraction (A-B).
Обратите внимание, что в начальный момент оказывается определенным лишь операнд A
(рис. 3), поэтому для указания операнда B щелкните по кнопке Pick Operand B (Выбрать
операнд B), а затем укажите мышью самую большую из сфер. В итоге в сфере,
использованной в качестве операнда A, появится выемка (рис. 4). Если операнд B был задан
неправильно, не следует сразу же вновь щелкать по кнопке Pick Operand B и указывать
другой объект (хотя программа это позволяет), поскольку объект, неудачно выбранный как
операнд B, не восстановится (рис. 5). В таких ситуациях нужно сначала отменить предыдущий
выбор операнда B командой Undo и только потом сделать новый выбор.

Рис. 2. Исходные сферы

161
Рис. 3. Вид свитка Pick Boolean на начальной стадии создания булева объекта

Рис. 4. Результат первой булевой операции

162
Рис. 5. Неудачный результат второй булевой операции: был повторно задан операнд B без
отмены предыдущего выбора

МОДЕЛИРОВАНИЕ ПРИ ПОМОЩИ БУЛЕВА ОБЪЕДИНЕНИЯ

Как правило, булево объединение используется в отношении объектов, которые должны


выглядеть сплошными, то есть их поверхность всегда закрыта, а внутренняя структура для
сцены неактуальна. Булево объединение позволяет избавиться от видимости соединения
объектов между собой и полезно в тех случаях, когда пересечение видимо. Если же
пересечение двух объектов скрыто, то в применении булевой операции объединения нет
необходимости.
Для примера попробуем последовательно объединить три стандартных примитива — две
сферы и цилиндр — в форму гантели. Создайте исходные объекты и разместите их по
отношению друг к другу нужным образом (рис. 6 и 7). Выделите цилиндр, активируйте булеву
операцию Union, для определения операнда B щелкните по кнопке Pick Operand B (Выбрать
операнд B), а затем укажите мышью одну из сфер. В итоге цилиндр и сфера станут единым
объектом. Выделите объединенный объект, активизируйте режим создания булевых объектов,
щелкните по кнопке Pick Operand B (Выбрать операнд B) и укажите вторую сферу.
Результатом станет получение одного единственного булева объекта (рис. 8).

163
Рис. 6. Исходные объекты

Рис. 7. Рендеринг исходных объектов

164
Рис. 8. Гантель

МОДЕЛИРОВАНИЕ ПРИ ПОМОЩИ БУЛЕВА ВЫЧИТАНИЯ

Булевы операции вычитания наиболее широко используются при моделировании. Чаще


всего они применяются для создания закруглений и углублений на первом из исходных
объектов, а также выемок и сквозных отверстий в нем, и потому второй объект условно можно
считать своеобразной стамеской или фрезой, которая создает желобок на первом объекте или
выбирает какую-то его часть. В качестве «режущих инструментов» могут быть задействованы
самые разные объекты, в частности объекты, полученные из криволинейных сплайнов путем
лофтинга или вращения.
На первом этапе воспользуемся булевой операцией вычитания для формирования
цилиндрического отверстия внутри шара. Создайте исходные объекты в виде шара и цилиндра
(радиус сечения цилиндра должен быть меньше радиуса шара, а его длина — больше радиуса
шара) и выровняйте их друг в отношении друга по осям X, Y и Z, применив операцию Align
(Выровнять) (рис. 9). Проведите рендеринг и сразу же скорректируйте параметры объектов
так, чтобы они оказались достаточно гладкими, особенно в области пересечения; если этого не
сделать, то созданный булев объект тоже не будет иметь надлежащей гладкости. В данном
случае видно (рис. 10), что степень гладкости требуется увеличить — это достигается путем
повышения плотности объектов: увеличения количества сегментов и сторон сегментов и
уменьшения размера сегментов (рис. 11). В то же время при работе со сложными моделями
для ускорения процесса моделирования в ряде случаев лучше увеличивать плотность
объектов, задействованных в качестве операндов, не перед созданием булевой операции, а
после — в ходе редактирования операндов на уровне объектов.

Рис. 9. Шар и цилиндр

165
Рис. 10. Рендеринг исходных объектов

Рис. 11. Рендеринг объектов и их параметры после корректировки гладкости


Выделите цилиндр, установите режим создания булевых объектов, установите операцию
Subtraction (B-A) (Вычитание B-A), для указания операнда B щелкните по кнопке Pick
Operand B (Выбрать операнд B) и укажите сферу. Это приведет к удалению внутренней части
166
сферы точно по размеру исходного цилиндра таким образом, что в сфере появится сквозное
отверстие (рис. 12).

Рис. 12. Сфера с отверстием


Формируемые при помощи булева вычитания отверстия могут иметь самую разную форму,
а результат зависит не только от размеров и формы объектов, но и от положения их в
отношении друг друга, а также от того, какой из объектов был указан первым. Возьмите в
качестве исходных объектов куб и шар и разместите их показанным на рис. 13 образом.
Выделите куб, установите в режиме создания булевых объектов операцию Subtraction (A-B) и
в качестве операнда B укажите сферу — результатом станет появление в ней
соответствующего углубления (рис. 14), а потом сохраните результат (он нам позже
потребуется). Отмените созданную булеву операцию и примените к исходным объектам
булево вычитание Subtraction (A-B), но в качестве первого операнда укажите сферу — и
вместо куба с углублением итогом операции окажется шар, в котором как бы вырезана одна из
его четвертей (рис. 15). Стоит отметить, что для получения того же самого результата совсем
не обязательно было менять местами операнды: с таким же успехом можно было вместо
операции Subtraction (A-B) выбрать операцию Subtraction (B-A). Подобная взаимозамена
операций Subtraction (A-B) и Subtraction (B-A) очень удобна, так как при неверном выборе
операнда A не потребуется отменять операцию, а достаточно лишь переключиться с одной
операции вычитания на другую.

167
Рис. 13. Куб и шар

Рис. 14. Углубление в кубе

168
Рис. 15. Выемка фрагмента шара
Как было отмечено, форма получающейся выемки определяется вторым операндом.
Попробуйте вместо шара создавать выемки и углубления другими объектами. Например, при
применении объекта Hose (Шланг) (рис. 16) может быть получена резьбообразная выемка
(рис. 17). Если же взять в качестве операнда B граненую призму Gengon (рис. 18), то выемка
окажется многогранной (рис. 19), а при использовании веретена Spindle — скошенной (рис. 20
и 21) и т.п.

169
Рис. 16. Исходные объекты

Рис. 17. Куб с резьбовидной выемкой

Рис. 18. Куб и шланг

170
Рис. 19. Куб с граненой выемкой

Рис. 20. Куб и веретено

171
Рис. 21. Куб со скошенной выемкой
Булева операция Intersection (Пересечение) является обратной к булевым операциям
Subtraction (A-B)/Subtraction (B-A) (Вычитание (А-В)/Вычитание (В-А), так как получаемые
с ее помощью булевы объекты представляют собой фрагменты операндов A и B, которые
удаляются при операции булева вычитания, если ее провести в отношении тех же самых
объектов. Возьмите в качестве исходных рассмотренные выше куб и шар, выберите куб в
качестве операнда A, а затем проведите булеву операцию Intersection (Пересечение) —
результатом будет получение четверти шара, которая ранее оказывалась вырезанной в ходе
операции Subtraction (B-A) (рис. 22).
Рис. 22. Исходные объекты и булевы объекты при операциях Intersection и Subtraction (В-А)
Более интересные варианты поверхностей создаются при использовании в качестве
операнда B скрученных объектов. Можно попробовать получить подобный объект на основе
примитива Torus, в исходном состоянии имеющего такой вид, как на рис. 23, а после
скручивания (параметр Twist) на 360° — как на рис. 24. Дополнительно создайте цилиндр,
разместите объекты, как показано на рис. 25, и при выполнении булевой операции Subtraction
(A-B) укажите цилиндр как операнд A — результат представлен на рис. 26.

172
Рис. 23. Исходный торус

Рис. 24. Торус после скручивания

173
Рис. 25. Цилиндр и скрученный торус

Рис. 26. Цилиндр с резьбой

СОЗДАНИЕ ВЛОЖЕННЫХ БУЛЕВЫХ ОБЪЕКТОВ

Теоретически для одного и того же объекта (который используется в качестве операнда A в


булевой операции) можно выполнить любое число булевых операций, причем каждая
операция создает собственный набор операндов, вложенных друг в друга. В таких случаях
одним из исходных объектов новой булевой операции будет являться булев объект,
полученный в ходе предыдущей булевой операции.
Для примера возьмите ранее созданный и сохраненный булев объект (рис. 27), создайте еще
один цилиндр и разместите его так, как показано на рис. 28. Выделите исходный булев объект
(для этого придется выйти из списка Compound Objects (Составные объекты) путем выбора
геометрии другого типа), активируйте булеву операцию вычитания Subtraction (A-B) и
вторым операндом укажите отдельный цилиндр — в кубе появится еще одна выемка (рис. 29).
Полученный булев объект можно использовать для новой булевой операции, например
вырезав в нем пирамидой треугольную выемку (рис. 30 и 31).

Рис. 27. Исходный булев объект

174
Рис. 28. Объекты первой вложенной булевой операции

Рис. 29. Результат первой вложенной булевой операции

175
Рис. 30. Объекты для двукратно вложенной булевой операции

Рис. 31. Результат двукратно вложенной булевой операции

РЕДАКТИРОВАНИЕ БУЛЕВА ОБЪЕКТА

У созданного булева объекта можно изменить цвет; объект можно перемещать,


масштабировать и поворачивать обычным образом. При необходимости в области параметров
на панели Modify можно откорректировать имена операндов, установить способ отображения
булева объекта и определить особенности его обновления при редактировании. Работая со
176
сложными моделями, которые долго перерисовываются, иногда лучше отказаться от
автоматического режима обновления в пользу ручного режима Manually (Вручную) — тогда
для перерисовки модели нужно будет щелкать по кнопке Update (Обновить).
Здесь же можно установить опцию Hidden Ops, которая позволяет при просмотре
результата видеть в виде сетки операнд, исчезающий при выполнении булевой операции (рис.
32). Данная опция служит для информации о точном местонахождении операнда и о его
влиянии на булеву операцию и часто используется при создании анимации.

Рис. 32. Вид булева объекта при включенной опции Hidden Ops
Кроме того, булев объект можно редактировать на уровне операндов. Рассмотрим это на
примере изучения взаимосвязи между положением операндов по отношению друг к другу и
внешним видом булева объекта. Создайте в качестве исходных объектов два цилиндра и
разместите их так, как показано на рис. 33. Выделите меньший из объектов, установите булеву
операцию вычитания Subtraction (B-A) и вторым операндом укажите другой цилиндр,
вследствие чего в большем цилиндре появится отверстие (рис. 34). Данное отверстие не будет
сквозным, что обусловлено исходным положением цилиндров.

177
Рис. 33. Два цилиндра

Рис. 34. Отверстие в цилиндре


Полученный результат можно изменить, причем для этого даже не потребуется отменять
булеву операцию, поскольку операнды булева объекта в определенной степени редактируемы,
причем независимо друг от друга: их можно выделять, перемещать, масштабировать и
поворачивать по отношению друг к другу, меняя таким образом сам булев объект.
Редактирование операндов осуществляется в режиме Sub-Object, для перехода в который
нужно при выделенном булевом объекте раскрыть свиток Boolean панели Modify, подсветить

178
строку Operands, а затем указать редактируемый операнд (рис. 35) и произвести над ним
нужные манипуляции. При перемещении операнда или любой другой манипуляции над ним в
проекции Perspective будет сразу же отображаться обновленный булев результат. Для
примера переместите в окне проекции Left операнд A влево — по мере перемещения глубина
отверстия будет увеличиваться (рис. 36), а при обратном перемещении — уменьшаться (рис.
37). Если продолжить перемещение операнда A влево, то в конце концов отверстие станет
сквозным (рис. 38), а при обратном движении превратится в едва заметную выемку (рис. 39).

Рис. 35. Установлен режим Sub-Object, а для редактирования выбран операнд A

Рис. 36. Увеличение глубины отверстия в цилиндре

179
Рис. 37. Уменьшение глубины отверстия в цилиндре

Рис. 38. Цилиндр со сквозным отверстием

Рис. 39. Цилиндр с небольшой выемкой

180
Аналогичным способом можно не только перемещать и поворачивать операнды, но и
менять их размеры. Попробуйте для операнда A провести масштабирование инструментом
Select and Uniform Scale —— таким способом можно менять размеры выемки, например
сделать ее очень большой по диаметру (рис. 40) или, наоборот, очень маленькой. Для того
чтобы вернуться из режима редактирования операндов в режим редактирования булева
объекта, нужно подсветить в палитре Modify строку Boolean — после этого операции
масштабирования, перемещения и поворота будут относиться ко всему булеву объекту в
целом.

Рис. 40. Цилиндр с большой по диаметру выемкой


Операнды можно редактировать и на уровне объектов: менять длину, ширину, высоту,
число сегментов и т.п. Чтобы перевести булев объект в режим редактирования на уровне
объекта, на палитре Modify следует активировать строку Operands, выбрать нужный операнд,
а затем в списке Boolean щелкнуть на строке под строкой Operands, где, например, в случае
использования примитивов будет фигурировать имя примитива в общем виде (рис. 41).

181
Рис. 41. Редактирование операнда A булева объекта на уровне объекта

ПРИМЕРЫ ОБЪЕКТОВ, ПОЛУЧЕННЫХ С ИСПОЛЬЗОВАНИЕМ БУЛЕВА


МОДЕЛИРОВАНИЯ

ПИАЛА

Создайте в качестве исходных объектов шар и параллелепипед (Box) и разместите их так,


как показано на рис. 42. Шар в окне Perspective не виден, так как его верхняя часть находится
внутри параллелепипеда, а нижняя оказалась скрыта. Выделите параллелепипед и примените к
нему булеву операцию вычитания Subtraction (B-A), указав шар вторым операндом, — в
итоге останется только нижняя половина шара (рис. 43). Выделите созданный булев объект,
конвертируйте его в редактируемую сетку, выбрав из контекстного меню команду Convert
To=>Convert to Editable Mesh (Конвертировать в => Конвертировать в редактируемую
сетку), и перейдите в режим редактирования полигонов. Поскольку работа предстоит
довольно кропотливая, перейдите в режим отображения одной проекции, щелкнув на кнопке
Min/Max Toggle (рис. 44).

182
Рис. 42. Шар и параллелепипед

Рис. 43. Нижняя половина шара

183
Рис. 44. Булев объект с выделенными полигонами
Теперь потребуется последовательное применение операций Bevel, масштабирования и
Extrude (Вытеснение). Вначале сделайте фаску, установив значение справа от Bevel (Фаска)
равным примерно –1 (рис. 45). Затем примените операцию масштабирования и уменьшите
выделенную часть объекта, а потом удалите самый верхний фрагмент половины шара
посредством операции Extrude (рис. 46). Нанесите небольшую фаску для скашивания
удаляемой поверхности, еще раз проведите масштабирование и примените операцию Extrude
— и действуйте так до тех пор, пока заготовка не станет напоминать грубую чашу (рис. 47).
Для сглаживания поверхности примените модификатор MeshSmooth (Сглаживание сетки) —
возможно, в итоге пиала станет напоминать представленную на рис. 48.

184
Рис. 45. Первое нанесение фаски

Рис. 46. Рендеринг заготовки для пиалы на начальной стадии обработки

185
Рис. 47. Грубый вариант пиалы

Рис. 48. Пиала


Примерно такую же пиалу можно получить и более быстрым способом, но тоже с
применением булевых операций. Возьмите в качестве основы полученную выше в ходе булева
вычитания нижнюю половину сферы (рис. 49), создайте ее копию, потом немого уменьшите ее
в размерах инструментом Select and Uniform Scale, выровняйте по осям X, Y и Z, щелкнув по
кнопке Align (рис. 50), а затем слегка переместите вверх. Выделите меньшую полусферу и
создайте новый булев объект с помощью булева вычитания Subtraction (B-A), указав в
качестве операнда B большую полусферу (рис. 51). Полученная после сглаживания пиала
представлена на рис. 52.

186
Рис. 49. Половина сферы

Рис. 50. Уменьшение копии полусферы

187
Рис. 51. Грубый вариант пиалы

Рис. 52. Пиала

ВОЛЧОК

Создайте конус (Cone) (рис. 53). Сформируйте объект Box (Коробка) и выровняйте его
командой Align по конусу по осям X, Y и Z (рис. 54). Сделайте копию второго объекта, а затем
разместите объекты, как показано на рис. 55. Выделите конус, установите в режиме создания
булевых объектов операцию Subtraction (A-B) и в качестве операнда B укажите объект Box01
(рис. 56). Затем повторите данную операцию, но операндом A в этом случае станет созданный
перед этим булев объект, а операндом B — объект Box02 (рис. 57). Создайте новый конус с
параметрами, указанными на рис. 58, а затем выровняйте его по булеву объекту по осям X, Y и
Z (рис. 59).

188
Рис. 53. Исходный конус

Рис. 54. Конус и коробка

189
Рис. 55. Исходные объекты

Рис. 56. Результат первого булева вычитания

190
Рис. 57. Результат второго булева вычитания

Рис. 58. Добавление второго конуса

191
Рис. 59. Вид после выравнивания второго конуса
Выделите булев объект и сделайте его зеркальное отображение по оси Z с формированием
копии, щелкнув по кнопке Mirror Selected Object (Зеркальное отображение выделенного
объекта), и настройте параметры зеркального отображения (рис. 60). Точно таким же образом
сделайте зеркальную копию конуса — получится волчок (рис. 61).

Рис. 60. Определение параметров зеркального отображения

192
Рис. 61. Волчок

КЛЮЧ

Попытаемся создать имитацию ключа, предварительно сформировав все его детали путем
лофтинга, а затем объединив их при помощи булевой операции. Создайте серию сплайнов
примерно такого вида, как на рис. 62: прямоугольник предназначен для использования в
качестве сечения loft-объекта, а все остальные сплайны будут играть роль пути. Обратите
внимание, что при создании лофт-объектов в данном случае нужно выбрать метод указания
сечения, а не пути — иначе после их получения придется потратить много времени на
размещение loft-объектов нужным образом. Выделите первую окружность, щелкните по
кнопке Geometry (Геометрия) командной панели Create (Создать) и выберите в
раскрывающемся списке разновидностей объектов вариант Compound Objects (Составные
объекты). В свитке Object Type (Тип объекта) щелкните на кнопке Loft (Лофтинговый), затем
по кнопке Get Shape (Указать путь), и укажите мышью прямоугольник. Выделите вторую
окружность и вновь создайте лофтинговый объект, указав в качестве сечения тот же самый
прямоугольник. Точно таким же способом создайте лофтинговые объекты для всех остальных
сплайнов (рис. 63).

193
Рис. 62. Исходные сплайны

Рис. 63. Результат лофтинга


Теперь нужно превратить отдельные фрагменты ключа в единый объект, что проще всего
сделать с помощью создания вложенного булева объекта. Выделите первый loft-объект,
активизируйте булеву операцию Union, щелкните на кнопке Pick Operand B и укажите второй
194
loft-объект. Создайте новый булев объект, задействовав полученный булев объект как операнд
A, а один из loft-объектов — как операнд B и продолжайте до тех пор, пока не объедините все
фрагменты ключа. Окончательный результат показан на рис. 64.

Рис. 64. Ключ

ОКОННАЯ РАМА

Комбинируя операции лофтинга и булева объединения (как в примере с ключом), можно


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

Рис. 65. Исходные сплайны

195
Рис. 66. Оконная рама

КРУЖКА С РУЧКОЙ

Для основы кружки создайте цилиндр (рис. 67) и конвертируйте его в редактируемую сетку,
выбрав из контекстного меню команду Convert to=>Convert to Editable Mesh
(Конвертировать => Конвертировать в режим редактирования сетки). Активируйте режим
редактирования вершин Vertex и выделите внутренние вершины только верхнего сечения
(рис. 68) — проще всего выделить все внутренние вершины (верхнего и нижнего сечений) на
проекции Top, а затем при нажатой клавише Alt исключить вершины нижнего сечения на
проекции Front. Перетащите на проекции Front выделенные вершины инструментом Select
and Move вниз таким образом, чтобы сформировалась внутренняя пустая полость кружки
(рис. 69). Не снимая выделения, активируйте инструмент Select and Uniform Scale и
отмасштабируйте выделенную область так, чтобы внутренние вершины совпали в вершинами
промежуточного яруса (рис. 70), а внутренняя полость кружки стала одинаковой по диаметру
как в верхней части кружки, так и в нижней.

196
Рис. 67. Цилиндр

Рис. 68. Выделение вершин верхнего сечения

197
Рис. 69. Результат перемещения выделенных вершин

Рис. 70. Результат масштабирования выделенных вершин


На проекции Top выделите внутренние вершины верхнего и среднего сечений (рис. 71) —
это удобнее осуществить, вначале выделив все внутренние вершины с областью выделения
Circular Selection Region, а затем исключив вершины нижнего сечения при нажатой клавише
Alt областью выделения Rectangular Selection Region. Отмасштабируйте их на проекции Top
так, чтобы радиус, на котором они расположены, приблизился к внешнему радиусу, а толщина
стенки кружки уменьшилась (рис. 72). На проекции Front выделите оказавшиеся в ходе
198
масштабирования за пределами объекта вершины верхнего сечения (рис. 73) и переместите их
вниз (рис. 74). Аналогичную операцию проведите в отношении внутренних вершин нижнего
сечения (рис. 75).

Рис. 71. Выделение внутренних вершин

Рис. 72. Результат масштабирования выделенных вершин

199
Рис. 73. Выделение внутренних вершин верхнего сечения

Рис. 74. Перемещение внутренних вершин верхнего сечения

Рис. 75. Перемещение внутренних вершин нижнего сечения


Для создания ручки к кружке активизируйте категорию объектов Shapes (Формы)
командной панели Create (Создание), в списке разновидностей объектов укажите тип Splines
(Сплайны) и инструментом Line (Линия) постройте криволинейный сплайн (рис. 76), который
будет использован как путь при построении лофтингового объекта. Создайте эллипс для
использования в качестве сечения loft-объекта. Выделите эллипс, щелкните по кнопке
Geometry (Геометрия) командной панели Create (Создать) и выберите в раскрывающемся
списке разновидностей объектов вариант Compound Objects (Составные объекты). В свитке
Object Type (Тип объекта) щелкните по кнопке Loft (Лофтинговый), потом по кнопке Get
Path (Указать путь) и укажите мышью предварительно созданный сплайн пути. Поместите
созданную ручку на ее место, отрегулировав ее положение на всех проекциях (рис. 77).
Рассмотрев объект со всех сторон, вы увидите, что некоторые фрагменты ручки выступают в
полости кружки, а потому их стоит удалить. Для этого конвертируйте ручку в режим
редактируемой сетки, выделите лишние вершины (рис. 78) и нажмите клавишу Del.

200
Рис. 76. Сплайн пути

Рис. 77. Определение положения ручки

201
Рис. 78. Выделение ненужных вершин ручки
Чтобы кружка и ручка стали единым целым, нужно объединить их при помощи булевой
операции. Выделите кружку, установите выполнение операции Union, щелкните по кнопке
Pick Operand B, а затем по ручке — объекты объединятся. При этом на панели Modify будет
видно, что исходными элементами булевой операции является объект типа Editable Mesh
(Редактируемая сетка) и loft-объект (рис. 79). Подберите для булева объекта нужные
параметры сглаживания и проведите рендеринг — линия соединения ручки с кружкой станет
практически незаметной (рис. 80).

Рис. 79. Панель Modify булева объекта

202
Рис. 80. Кружка с ручкой

ГОЛОВКА ДЛЯ НАКИДНОГО ГАЕЧНОГО КЛЮЧА

Заготовкой для данного объекта будут два цилиндра разного диаметра, состыкованных
между собой в ходе булевой операции объединения. Внутри полученного на их основе
объекта требуется вырезать несколько разных по сечению полостей, что возможно путем
многократных булевых вычитаний. Первую вырезаемую полость получим из лофтингового
объекта, сформированного движением звезды с большим числом лучей по прямой, а
остальные — с помощью примитивов.
Создайте два цилиндра и соедините их между собой булевой операцией объединения (рис.
81). Затем создайте два сплайна — звезду и линию (рис. 82), выровняйте звезду относительно
большего цилиндра по осям X, Y и Z (рис. 83). Создайте loft-объект, указав линию в качестве
пути, отрегулируйте его положение относительно объекта из цилиндров (рис. 84). Вырежьте
соответствующую полость из большого цилиндра, выделив многогранный лофтинговый
объект, активировав булеву операцию вычитания Subtraction (A-B) и указав цилиндры в
качестве операнда B, в результате чего внутри большого цилиндра появится многогранная
полость (рис. 85).

Рис. 81. Объединенные цилиндры

203
Рис. 82. Исходные объекты

Рис. 83. Определение положения звезды

204
Рис. 84. Коррекция положения loft-объекта

Рис. 85. Цилиндр с многогранной полостью


Создайте параллелепипед, ширина и высота которого одинаковы и по размеру немного
меньше диаметра вырезанной полости. Поместите его внутрь большего цилиндра и
выровняйте по осям X и Z (рис. 86). На основе уже созданного булева объекта и
параллелепипеда сформируйте вложенный булев объект, вырезав параллелепипедом
соответствующую полость внутри большого цилиндра (рис. 87). Затем создайте цилиндр с
меньшим радиусом, чем радиус меньшего из уже имеющихся цилиндров, поместите его
внутрь меньшего цилиндра и выровняйте по осям X и Z (рис. 88). Вырежьте данным
цилиндром полость внутри меньшего из цилиндров вложенного булева объекта при помощи
операции булева вычитания и получите деталь, представленную на рис. 89, которая будет
иметь примерно такой же вид, как головка для накидного гаечного ключа.

205
Рис. 86. Добавление параллелепипеда

Рис. 87. Промежуточный рендеринг детали

206
Рис. 88. Добавление третьего цилиндра

Рис. 89. Головка для накидного гаечного ключа

207
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 8. РАБОТА С
МАТЕРИАЛАМИ
Редактор материалов
Создание материалов на основе базовых текстурных карт
Создание материалов путем настройки базовых параметров
Создание материалов на основе фотографий и обычных текстур
Более сложные варианты создания материалов

Все окружающие нас предметы созданы из разнообразных материалов: металла, стекла,


пластмассы, резины и т.п., которые, наряду с формой объекта, определяют его внешний вид. В
3D Studio Max под материалом понимают набор характеристик, которые в разной степени
влияют на отображение поверхности объекта в процессе визуализации сцены; от степени
удачности подбора материала зависит и естественность финального вида моделируемой
сцены.
Создание материалов — тема необъятная, поскольку слишком велик список свойств и
зависимостей всех параметров, влияющих на внешний вид получаемого материала, и
рассмотреть все нюансы в рамках одной статьи просто невозможно. Поэтому мы ограничимся
лишь основными приемами и правилами работы с материалами; эти способы позволят
получить общее представление о применении материалов и начать собственные
эксперименты.
Как правило, материалы сначала именуют, затем настраивают, и только после этого
присваивают объектам. Все эти операции проводятся в редакторе материалов Material Editor,
который можно вызвать при помощи команды Rendering=>Material Editor
(Рендеринг=>Редактор материалов), либо нажатием клавиши M. Редактор позволяет
непосредственно использовать входящие в поставку базовые материалы, применять
материалы из дополнительно установленных библиотек, видоизменять параметры базовых
материалов по своему желанию или создавать новые материалы на их основе. Созданные или
видоизмененные материалы можно сохранять в библиотеке для дальнейшего использования.

РЕДАКТОР МАТЕРИАЛОВ

Откройте редактор материалов, нажав клавишу M, — изначально окно редактора будет


иметь такой же вид, что и на рис. 1. В верхней части окна находятся ячейки образцов (слоты),
предназначенных для просмотра визуализированных образцов материалов. По умолчанию
видно шесть слотов, в каждом из которых отображается шар; при желании можно изменить
как количество отображаемых ячеек (нажимая клавишу X), так и тип содержимого (щелкнув
на кнопке Sample Type), если это удобнее для просмотра создаваемого материала. Активный
слот имеет белую рамку по периметру (рис. 2), а у слота с материалом, который назначен хотя
бы одному объекту в сцене, уголки будут срезанными (рис. 3).

208
Рис. 1. Исходный вид окна Material Editor

Рис. 2. Активный слот

Рис. 3. Слот с назначенным объекту материалом


209
Справа от слотов находятся кнопки, отвечающие за управление видом отображения,
которые позволяют изменять режимы просмотра слотов с образцами материалов так, чтобы
они лучше соответствовали конкретным условиям моделируемой сцены:

 Sample Type — определяет тип образца, отображаемого в слоте: сфера, куб или
цилиндр;
 Backlight — добавляет к слоту освещенность. Включение данного режима наиболее
заметно при предварительном просмотре в виде сферы и актуальнее всего при создании
металлических материалов;
 Background — добавляет к слоту задний фон. Это полезно, когда требуется увидеть
результат влияния прозрачности и непрозрачности;
 Sample UV Tiling — регулирует число повторений копии образца на поверхности
слота при создании сложного материала;
 Video Color Check — включает материал объекта для цветов, которые находятся вне
NTSC- или PAL-порога и имеют тенденцию меняться при передаче на видео;
 Make Preview, Play Preview, Save Preview — данные кнопки позволяют создать,
проиграть и сохранить в AVI-файле анимацию материала в слоте в реальном масштабе
времени;
 Options — определяет настройки редактора материалов;
 Select By Material — осуществляет выбор объектов в сцене (исключение — скрытые
объекты, которые таким способом не выделяются) на основе материала в активном
слоте.

Непосредственно под слотами находятся кнопки инструментов управления материалами, с


помощью которых можно совершать с материалами разные манипуляции. Самыми важными
из них (на начальной стадии изучения темы) являются следующие:

 Get Material — позволяет выбрать и назначить материал;


 Assign Material to Selection — назначает материал слота выделенному в сцене объекту;
 Reset Map/Mtl to Default — очищает слот;
 Put to Library — помещает материал с активного слота в библиотеку;
 Show Map In Viewport — отображает карту сложного материала на поверхности
объекта на видовых экранах;
 Go To Parent — позволяет переместиться на уровень вверх — от подчиненного
материала к родительскому;
 Go Forward to Subling — осуществляет перемещение между материалами,
находящимися на одном уровне подчинения родительскому материалу;
 Pick Material From Object — позволяет взять материал с объекта и поместить его в
выделенный слот.

Нижнюю часть окна Material Editor занимает группа свитков, непосредственной


настройкой параметров в которых и осуществляется создание материала. Состав свитков
зависит от выбранного типа базового материала: Standard (обычный), Multi/Sub-Object
(составной), Raytraced (трассируемый) и др., а также от установленной модели тонирования.
Чаще всего в качестве базового типа выбирается устанавливаемый по умолчанию тип
Standard и модель тонирования Blinn. Для выбора другого типа материала предназначена
кнопка Type (тип) — рис. 4, а модель тонирования определяется в свитке Shader Basic
Parameters (базовые параметры тонирования).

Рис. 4. Кнопка выбора типа базового материала

210
Условно можно выделить три способа создания материалов: новые материалы можно
получить в результате настройки базовых (а при необходимости и расширенных) параметров,
либо путем назначения материалу входящих в поставку текстурных карт или обычных
текстур, либо сочетая оба варианта. На первый взгляд, самое быстрое и простое —
воспользоваться базовыми текстурными картами, среди которых имеются образцы для
имитации разных поверхностей, поэтому начнем эксперименты именно с этого. Однако это
только кажется простым — применение текстурных карт в действительности предполагает
проецирование на поверхность объекта (иначе объект не будет выглядеть естественно), что
уже совсем не просто. При создании материалов путем настройки базовых параметров
существуют определенные нюансы: число влияющих на внешний вид материала параметров
просто огромно; в этом уроке мы ограничимся лишь получением начального представления о
данных технологиях.

СОЗДАНИЕ МАТЕРИАЛОВ НА ОСНОВЕ БАЗОВЫХ ТЕКСТУРНЫХ КАРТ

Создайте произвольную группу объектов (рис. 5) и сохраните ее (так как на ней мы


рассмотрим достаточно много аспектов работы с материалами). Выделите сферу, откройте
редактор материалов и выделите первый слот. Присвойте материалу имя, щелкнув в текстовом
поле (где изначально будет написано «01 — Default») и напечатав имя материала (например,
«первый материал»). В дальнейшем стоит иметь в виду, что материалам удобнее присваивать
значимые имена: Gold Metal, Blue Plastic и т.п. Откройте свиток Maps (текстурные карты) —
он содержит список каналов оптических свойств материала, к любому из которых можно
назначить текстурную карту. Настройка любого из элементов списка производится путем
включения/выключения флажка состояния, установки значения счетчика влияния текстурной
карты и определения типа текстурной карты. Последнее осуществляется в результате щелчка
по кнопке None (рис. 6) и выбора нужной карты в окне Material/Map Browser (браузер
материалов/карт, рис. 7).

Рис. 5. Исходные объекты

211
Рис. 6. Щелчок по кнопке None

212
Рис. 7. Выбор текстурной карты в окне Material/Map Browser

Основными в списке каналов свитка Maps являются каналы Ambient Color (окружающий
цвет), Diffuse Color (рассеянный цвет) и Specular Color (зеркальный цвет) — использование
текстурных карт в этих каналах позволяет определять оттенки теневых и освещенных частей
объекта, а также оттенок блика. Применение текстурной карты на канале Opacity
(непрозрачность) обеспечивает управление степенью прозрачности объекта: чем белее цвет на
определенном участке текстуры, тем прозрачнее в этом месте будет объект. Использование
текстурных карт на канале Bump (рельеф) необходимо при формировании рельефных
поверхностей, на канале Reflection (отражение) — при создании зеркальных или частично
отражающих объектов, Refraction (преломление) — для добавления световых эффектов и
эффектов искажения прозрачным и полупрозрачным объектам (вода, стекло, жемчуг и т.п.).
Другие каналы используются значительно реже.
Для начала щелкните на кнопке None, находящейся справа от текстурной карты Diffuse
Color (рассеянный цвет) — эту карту можно считать самой главной, так как она определяет
текстуру для самого объекта. Откроется окно Material/Map Browser (браузер
материалов/карт) с перечнем доступных материалов; установите более удобный для просмотра
материалов режим, при котором будут отображаться и список материалов, и иконки — для
213
этого щелкните на кнопке View List + Icons. Выберите, например, материал Marble, и сфера в
первом слоте станет как будто «сделана из мрамора» (рис. 8). Чтобы применить данный
материал к созданной ранее сфере, нажмите кнопку Assign Material to Selection (назначить
материал к выделению), либо просто перетащите материал на сферу в видовом окне.
Естественно, что первый способ возможен только при наличии на сцене выделенного объекта
— если ни один из объектов не был выделен, то нужно выделить его в одном из окон
проекций (окно Material Editor для этого закрывать не нужно). Если посмотреть после
назначения материала в окно Perspective, то сфера (при настройках по умолчанию) станет
выглядеть просто серой — увидеть, что на сферу наложен материал, можно только после
рендеринга (рис. 9). Чтобы материал был виден и в тех окнах проекций, где включен режим
просмотра Smooth + Highlights, в частности в окне Perspective, требуется в окне редактора
материалов щелкнуть на кнопке Show Map in Viewport (показать карту в видовом окне).
Аналогичным образом попробуйте наложить разные материалы на другие объекты (рис. 10),
где второму объекту соответствует материал Wood, третьему — Perlin Marble, четвертому —
Swirl (рис. 11).

Рис. 8. Появление «мраморной сферы» в первом слоте

214
Рис. 9. Вид объектов после присвоения сфере материала

Рис. 10. Вид сцены после назначения всем объектам материалов

215
Рис. 11. Вид слотов после выбора материалов

Параметрами любого из созданных на основе текстуры материалов можно управлять — это


позволит на основе любой базовой текстурной карты создать бесконечное число вариаций.
Выделите цилиндр, и в качестве первого эксперимента в свитке Coordinates (координаты)
измените значения в раздел Tiling (черепица) с 1.0, например, на 2.0 (рис. 12) — полосы
станут расположены ближе друг к другу и их число увеличится (рис. 13). Измените цвета в
свитке Woods Parameters (рис. 14); это также приведет к соответствующему изменению
цветов у объекта (рис. 15).

Рис. 12. Корректировка параметра Tiling

216
Рис. 13. Объекты после изменения значений параметра Tiling

Рис. 14. Изменение цветов

Рис. 15. Цилиндр после смены цветов

СОЗДАНИЕ МАТЕРИАЛОВ ПУТЕМ НАСТРОЙКИ БАЗОВЫХ ПАРАМЕТРОВ

217
Создание материала не требуется начинать с наложения базовой текстуры — она может не
использоваться в принципе или может быть добавлена на каком-то этапе разработки
материала. Рассмотрим этот вариант подробнее. В окне редактора материалов активируйте
пятый слот, введите имя материала, в свитке Blinn Basic Parameters щелкните на цветном
прямоугольнике справа от параметра Diffuse (рассеянный) и выберите цвет. Установите
параметр Specular Level (интенсивность блика) равным 50, Glossiness (размер блика) равным
20, в группе Self-Illumination (самосвечение) установите в спиннере значение 50 и уменьшите
значение параметра Opacity (непрозрачность) до 80 (рис. 16). Назначьте материал сфере,
перегруппируйте объекты так, чтобы сфера оказалась на переднем плане и проведите
рендеринг (рис. 17).

Рис. 16. Параметры настройки материала

218
Рис. 17. Вид объектов после наложения нового материала

Как видно из вышеуказанного примера, базовые параметры материала настраиваются и


корректируются в специальном свитке. Мы экспериментировали на свитке Blinn Basic
Parameters, однако однозначно указать имя данного свитка невозможно, так как оно меняется
в зависимости от установленной модели тонирования (об этом поговорим чуть ниже). По
умолчанию установлена модель Blinn, и список соответственно имеет имя Blinn Basic
Parameters. Список параметров свитка также меняется в зависимости от модели, однако в
целом в свитке базовых параметров могут фигурировать следующие параметры:

 Ambient (подсветка) — определяет цвет участков поверхности объекта, не освещенных


прямыми лучами света, то есть цвет тени на поверхности объекта (рис. 18);
 Diffuse (диффузный цвет) — задает основной цветовой фон материала объекта,
который можно наблюдать, когда поверхность объекта освещена прямыми лучами
света;
 Specular (зеркальный цвет) — устанавливает цветовой тон световых бликов,
появляющихся на поверхности объекта;
 Self-Illumination (самосвечение) — определяет особенности самосвечения объекта
(кажется, что объект светится изнутри), на цветовой оттенок Specular самосвечение
влияния не оказывает и может задаваться двумя способами: либо цветом, либо
числовым значением;
 Opacity (непрозрачность) — задает степень прозрачности объекта;
 Specular Level (интенсивность блика) — используется только при наличии на
поверхности блика и определяет его интенсивность;
 Glossiness (размер блика) — указывает размер бликового пятна: как правило, для
матовых поверхностей устанавливается больший размер блика, а у блестящих —
меньший.

219
Рис. 18. Вид объекта с разграничением его отдельных областей, в которых превалирует
влияние параметров Ambient, Diffuse и Specular

Стоит заметить, что цвета Ambient и Diffuse или Diffuse и Specular могут быть
одинаковыми. Для этого необязательно устанавливать для них одни и те же цветовые
характеристики — проще блокировать их при помощи соответствующей кнопки Lock (по
умолчанию опция Lock включена для цветов Ambient и Diffuse — рис. 19), тогда изменение
одного из них будет автоматически приводить к изменению другого.

Рис. 19. Свиток Blinn Basic Parameters — цвета Ambient и Diffuse заблокированы

Выделите на созданной ранее сцене параллелепипед, переместите его на передний план и


выделите соответствующий его материалу слот в окне редактора материалов. Затем в свитке
Blinn Basic Parameters щелкните на цветном прямоугольнике в блоке Self_Illuminatinon
(самосвечение) и установите произвольный цвет (рис. 20) — в итоге изменение одного
базового цвета приведет к смене всех оттенков на материале и объекте (рис. 21). В этом же
блоке уменьшите значение параметра Opacity (непрозрачность), например до 55, — объект
станет полупрозрачным (рис. 22). Выделите конус вместе с относящимся к нему слотом в
редакторе материалов и установите параметр Specular Level (интенсивность блика) равным 50
— это создаст иллюзию светового блика (рис. 23).

Рис. 20. Изменение цветов в свитке Blinn Basic Parameters

220
Рис. 21. Параллелепипед после смены цветов

Рис. 22. Изменение степени прозрачности параллелепипеда

221
Рис. 23. Появление блика на конусе

А теперь попробуем действовать более целенаправленно и создать материал, который бы


подошел, например, для присвоения ограненному кристаллу граната. Пусть роль кристалла
будет играть обычная геосфера (рис. 24) — ей пока не присвоен никакой материал, выбран
лишь подходящий цвет. Наша задача — придать геосфере необходимое свечение с помощью
подходящего материала. Активируйте свободный слот в редакторе материалов, раскройте
свиток Blinn Basic Parameters и для связанных замком параметров Ambient и Diffuse
установите темно-бордовый, а для параметра Specular — розовый цвет (рис. 25). Присвойте
материал геосфере и после визуализации сможете увидеть, что пока наши действия лишь
ухудшили внешний вид объекта (рис. 26).

Рис. 24. Геосфера

222
Рис. 25. Определение базовых цветов в свитке Blinn Basic Parameters

Рис. 26. Вид геосферы после присвоения ей нового материала

Возможно, что цвета были подобраны не совсем удачно, но самое главное — отсутствие
бликов и свечения. Идеально подобрать цвета сразу достаточно сложно, так как внешний вид
материала в немалой степени зависит также от бликов и свечения — поэтому к вопросу
корректировки цветов часто приходится возвращаться после настройки бликов и свечения.
Учитывая, что экспериментов может потребоваться много, щелкните на кнопке Show Map In
Viewport, чтобы материал отображался на поверхности объекта в окне Perspective. Не снимая
выделение с объекта, начните увеличивать значение параметра Specular Level, внимательно
наблюдая за интенсивностью блика на поверхности объекта, доведите это значение примерно
до 100 единиц. Так же последовательно увеличьте размер блика Glossiness, доведя значение
параметра до 30 (результат рендеринга представлен на рис. 27). Теперь разберемся, как будет
влиять на материал изменение Self-Illumination, отвечающего за внутреннее свечение объекта.
Вначале попробуйте увеличивать значения спиннера — это будет приводить к изменению
основного тона материала, который постепенно станет светлее (рис. 28). В действительности в
нашем случае числовой вариант настройки данного параметра не подходит — он применяется
лишь при разных цветовых оттенках Ambient и Diffuse, и тогда увеличение параметра будет
вести к постепенному выравниванию оттенков Ambient и Diffuse. В нашей ситуации, при
одинаковых значениях Ambient и Diffuse, возможна настройка свечения только путем
настройки его цветового оттенка. Установите для этого параметра темно-бордовый цвет,
близкий к черному. Окончательный вариант настройки базовых параметров приведен на рис.
29, а результат рендеринга — на рис. 30. Сохраните данный материал в библиотеке, щелкнув в
редакторе материалов на кнопке Put to Library.

223
Рис. 27. Вид геосферы после настройки блика

Рис. 28. Вид геосферы после числовой настройки параметра Self-Illumination

Рис. 29. Настройка параметров свитка Blinn Basic Parameters

224
Рис. 30. Кристалл граната

СОЗДАНИЕ МАТЕРИАЛОВ НА ОСНОВЕ ФОТОГРАФИЙ И ОБЫЧНЫХ ТЕКСТУР

Можно создать материал из произвольного графического файла (например, фотографии).


Для эксперимента вернитесь к нашей рабочей сцене с четырьмя примитивами, выделите
параллелепипед, откройте редактор материалов, активируйте свиток Maps (Карты) и
щелкните на кнопке None справа от параметра Diffuse Сolor (Рассеянный). В открывшемся
списке дважды щелкните по строке Bitmape, укажите графический файл и назначьте
созданный материал параллелепипеду (рис. 31). Можно дополнительно поэкспериментировать
с рассмотренными выше параметрами, добавив к материалу света, что придаст ему большую
выразительность — возможно, результат экспериментов будет напоминать рис. 32 и 33.

Рис. 31. Результат наложения материала, созданного на основе фотографии

225
Рис. 32. Параметры настройки материала

Рис. 33. Вид сцены после изменения параметров свечения материала

Данный способ удобно применять для создания материалов, соответствующих различным


естественным поверхностям (камень, дерево, песок, ткань), правда придется подобрать
соответствующие файлы текстур. Очень много таких текстур можно найти в Интернете, на
дисках с ПО, позаимствовать в пакетах двумерной графики. При желании нужную текстуру
можно даже создать самостоятельно, например в пакете Adobe Photoshop на основе
собственной фотографии. Любая из таких текстур будет представлена обычным графическим
файлом, поэтому для создания материала на ее основе будет достаточно активировать свиток
Maps, щелкнуть по кнопке None справа от параметра Diffuse Сolor, в открывшемся списке
дважды щелкнуть по строке Bitmape, указать файл текстуры, а затем присвоить тип материала
конкретному объекту. Попробуйте использовать данный прием и на основе доступных вам
текстур создать природные материалы для всех объектов рабочей сцены — возможный
результат представлен на рис. 34. Сохраните полученные таким способом материалы в
библиотеке, щелкнув в редакторе материалов на кнопке Put to Library.

226
Рис. 34. Результат присвоения объектам сцены материалов на основе внешних текстур

БОЛЕЕ СЛОЖНЫЕ ВАРИАНТЫ СОЗДАНИЯ МАТЕРИАЛОВ

Интересные варианты материалов можно получить, комбинируя цвет и текстурную карту.


Активируйте пустой слот, в свитке Blinn Basic Parameters щелкните по цветному
прямоугольнику справа от параметра Diffuse и выберите цвет (рис. 35). Откройте свиток Maps
и установите канал Bump, который позволяет добиться рельефности материала. Выберите для
данного канала текстуру Smoke и присвойте полученный материал параллелепипеду —
поверхность станет напоминать хорошо отшлифованный розовый мрамор (рис. 36). Сохраните
материал в библиотеке.

Рис. 35. Настройка параметров в свитке Blinn Basic Parameters

227
Рис. 36. Розовый мрамор

По тому же принципу попробуйте создать материал, напоминающий декоративную


штукатурку (наподобие венецианской). Активируйте пустой слот, в свитке Blinn Basic
Parameters установите цвет для параметра Diffuse, в свитке Maps выберите текстурную карту
Bump и установите текстуру Marble, изменив в свитке Coordinates параметры в соответствии
с рис. 37. Вернитесь в свиток Blinn Basic Parameters и отрегулируйте параметры свечения
материала примерно так же, как показано на рис. 38, а затем присвойте материал
параллелепипеду (рис. 39). Сохраните материал в библиотеке.

Рис. 37. Настройка параметров в свитке Coordinates

Рис. 38. Настройка параметров в свитке Blinn Basic Parameters


228
Рис. 39. Зеленая венецианская штукатурка

Большое влияние на внешний вид материала оказывает модель тонирования, определяемая в


свитке Shader Basic Parameters. По умолчанию устанавливается модель Blinn, именно она
была нами задействована во всех предыдущих примерах. Данная модель, равно как и модель
Oren-Nayar-Blinn, отлично подходит для визуализации самых разных типов материалов,
например дерева, штукатурки, камня, керамической плитки, матового стекла, резины. Часто
применяется модель Phong, используемая для визуализации любых типов пластиков и ряда
блестящих поверхностей, а также модели Metal и Strauss, которые подходят для создания
полированных поверхностей, таких как металл или прозрачное стекло.
Попробуем воспользоваться моделью Phong для создания пластика. Сформируйте объект
типа Torus Knot, в окне редактора материалов активируйте свободный слот, установите
модель Phong, а затем настройте параметры в свитке Phong Basic Parameters в соответствии с
рис. 40 и присвойте объекту данный материал (рис. 41). Сохраните материал в библиотеке.

Рис. 40. Настройка параметров в свитке Phong Basic Parameters

229
Рис. 41. Красный пластик

Теперь применим модель тонирования Metal для создания металлической поверхности.


Установите для свободного слота данную модель, в открывшемся свитке Metal Basic
Parameters снимите блокировку между цветами Ambient и Diffuse, щелкнув по
соответствующей кнопке, — это позволит устанавливать разные оттенки для данных
параметров. Настройте прочие параметры свитка (рис. 42) и присвойте созданный материал
объекту, поверхность которого станет напоминать бронзу. Сохраните материал в библиотеке.

Рис. 42. Настройка параметров в свитке Phong Basic Parameters

230
Рис. 43. Бронза

Попробуем использовать модель Metal для получения материала, имитирующего кожуру


апельсина. Создайте шар, выделите его, в редакторе материалов для свободного слота
установите модель Metal. В свитке Metal Basic Parameters установите для параметров
Ambient и Diffuse один и тот же оранжевый цвет, присвойте материал объекту (рис. 44). Для
имитации шершавости в свитке Maps выберите текстурную карту Bump и установите
текстуру Noise — увы, использование данной текстурной карты с параметрами по умолчанию
нужного эффекта пока не дало (рис. 45) по причине слишком большого размера фрагментов
шума. Поэтому откройте свиток Noise Parameters и уменьшите значение параметра Size
(размер) до 1 (рис. 46) — результат рендеринга показан на рис. 47. Теперь осталось лишь
избавиться от слишком темного оттенка материала, для чего достаточно подобрать числовое
значение для спиннера параметра Self-Illumination (рис. 48). Окончательный вариант
визуализированного объекта показан на рис. 49. Сохраните материал в библиотеке.

Рис. 44. Вид объекта после присвоения ему материала

Рис. 45. Результат добавления текстурной карты

231
Рис. 46. Параметры настройки свитка Noise Parameters

Рис. 47. Результат уменьшения размера фрагментов шума

Рис. 48. Параметры настройки свитка Metal Basic Parameters

232
Рис. 49. Апельсин

Помимо моделей тонирования на способ тонирования объекта регулируется рядом


дополнительных флажков, включаемых/выключаемых в том же свитке Shader Basic
Parameters:

 Wire (каркасный) — визуализация только каркаса объекта. Используется для имитации


проволочных моделей, плетеных корзинок и т.п.;
 Face Map (граневая карта) — приложение материала с применением текстурных карт к
каждой грани объекта. Бывает актуально при применении текстурных карт;
 2-Sided (двусторонний) — визуализация не только лицевых, но и обратных граней
объекта, что необходимо при создании полупрозрачных материалов;
 Faceted (Граневый) — выключение сглаживания ребер и придание объектам
ограненного вида. Актуально, например, при моделировании кристаллов.

Перейдем к более сложной задаче и попробуем создать тонированное стекло, для чего вновь
обратимся к модели тонирования Blinn, но уже при включенном флажке 2-Sided
(Двусторонний) — установите данные параметры для свободного слота (рис. 50). Настройте
основные цветовые составляющие создаваемого материала, определив цвета для параметров
Ambient, Diffuse и Specular — в данном случае были взяты темно-синий, синий и голубой,
так как по замыслу мы создаем тонированное стекло синего цвета. Уменьшите значение
параметра Opacity до 10-15 единиц и настройте параметры зеркального блика: Specular Level
и Glossiness (рис. 51).

Рис. 50. Настройка параметров в свитке Shader Basic Parameters

233
Рис. 51. Настройка параметров в свитке Blinn Basic Parameters

При создании полупрозрачных материалов помимо основных параметров, настраиваемых в


свитке Blinn Basic Parameters, может потребоваться корректировка расширенных параметров
Falloff (спад) и Туре (тип прозрачности) из группы Advanced Transparency (дополнительная
регулировка прозрачности) в свитке Extended Parameters. Первый используется для создания
материалов с неоднородной прозрачностью, второй позволяет задать способ отображения
прозрачных материалов через канал цвета. Учитывая, что речь идет о тонированном стекле,
для параметра Falloff нужно выбрать вариант In (внутренняя), что означает внутреннюю
неоднородную прозрачность, а для параметра Туре установить вариант Filter (фильтр) и
выбрать цвет — в данном случае опять темно-синий (рис. 52). По окончании действий
присвойте материал объекту и проведите рендеринг (рис. 53). Сохраните материал в
библиотеке.

Рис. 52. Настройка параметров в свитке Extended Parameters

234
Рис. 53. Стекло

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


слота установите модель тонирования Phong и включите флажки Wire и 2-Sided (рис. 54). В
свитке Phong Basic Parameters определите цветовой тон объекта (параметр Diffuse) и
цветовой тон блика (параметр Specular) и определите параметры зеркального блика (рис. 55).
Наложите материал на объект и проведите рендеринг — каркасный объект будет получен,
однако сетка, лежащая в его основе, окажется достаточно редкой (рис. 56). При желании
плотность сетки можно увеличить. Добавьте к объекту модификатор MeshSmooth (сгладить
сетку), выбрав его из списка Modifier List, и увеличьте число итераций в свитке Subdivision
Amount (рис. 57) — металлический каркасный объект преобразится (рис. 58). Сохраните
материал в библиотеке.

Рис. 54. Настройка параметров в свитке Shader Basic Parameters

Рис. 55. Настройка параметров в свитке Phong Basic Parameters

Рис. 56. Начальный вид каркасного металлического объекта

235
Рис. 57. Настройка параметров модификатора MeshSmooth

Рис. 58. Каркасный металлический объект

Усложним задачу и создадим материал, наложение которого создавало бы иллюзию того,


что объект покрыт перламутром. Это означает, что материал должен обеспечивать внешнее и
внутреннее свечение объекта, причем с эффектом преломления отражающихся от его
поверхности лучей. Вначале просто добьемся эффекта внешнего и внутреннего свечения.
Установите модель тонирования Blinn. В свитке Blinn Basic Parameters определите цветовые
составляющие материала, установив цвета для параметров Ambient, Diffuse и Specular,
например в зеленых тонах. Для внешнего свечения укажите достаточно большие значения
параметров Specular Level и Glossiness, а для внутреннего — в группе Self-Illumination
236
установите в спиннере значение 60 (рис. 59). Результат присвоения созданного материала
спирали и рендеринга показан на рис. 60 — пока спираль только стала иметь блестящую
поверхность, но без всякого отражения. Для создания эффекта отражения раскройте свиток
Maps и на канале Reflection (Отражение) добавьте текстурную карту Raytrace (рис. 61), затем
в свитке Raytracer Parameters смените фоновый цвет с черного на серый (рис. 62). Это
приведет к появлению своеобразного варианта преломления, что и создаст иллюзию
перламутровой поверхности, причем поверхность по-прежнему будет иметь зеленый оттенок
(рис. 63). Сохраните материал в библиотеке.

Рис. 59. Настройка параметров в свитке Blinn Basic Parameters

Рис. 60. Блестящая спираль

237
Рис. 61. Добавление текстурной карты на канале Reflection

Рис. 62. Настройка параметров в свитке Raytracer Parameters

Рис. 63. Зеленый перламутр

238
Напоследок попробуем воспользоваться некоторыми из полученных результатов, внедрив
материалы в простую сцену с реальными объектами: обычной вазой и вазой для фруктов с
тремя апельсинами, находящимися на столе. Для упрощения задачи вместо стола ограничимся
его столешницей в виде обычной плоскости (примитив Plane), апельсины заменят обычные
шары, а обе вазы получим лофтингом с последующей деформацией лофтинг-модели.
За основу обеих ваз возьмем два 16-угольника и линию — отличие будет лишь в том, что
для вазы с фруктами длина линии должна быть значительно меньше. Линию создайте
обычным образом, затем инструментом NGon сформируйте первый 16-угольник, сделайте его
копию и немного уменьшите радиус последней. Превратите 16-угольник в редактируемый
сплайн и перейдите в режим редактирования сплайнов, щелкните на кнопке Attach
(присоединить) и в качестве добавляемого укажите второй 16-угольник — оба
многоугольника станут составными частями одного и того же сплайна, и теперь их можно
будет использовать как сечение (рис. 64). Создайте лофт-объект, указав комбинацию
многоугольников в качестве сечения и линию как путь — получится что-то наподобие
многогранной трубы (рис. 65). Выделите лофт-объект и вызовите окно Scale Deformation из
свитка Deformation (деформация). Преобразуйте кривую деформации в соответствии с рис.
66. Затем дополнительно создайте линию (предполагаемый путь), для вазы с фруктами и
смоделируйте ее точно таким же способом — особенности деформации данного лофт-объекта
показаны на рис. 67. Дополните сцену плоскостью и тремя апельсинами и тщательно
разместите все объекты (рис. 68 и 69).

Рис. 64. Исходные элементы для первого лофт-объекта

239
Рис. 65. Труба с гранями

Рис. 66. Окно Scale Deformation для первого лофт-объекта

240
Рис. 67. Окно Scale Deformation для второго лофт-объекта

Рис. 68. Окна проекций сцены

241
Рис. 69. Вид визуализированной сцены до присвоения объектам материалов

Откройте окно материалов, активируйте первый слот и щелкните на кнопке Get Material. В
разделе Browse From подсветите переключатель Mtl Library (Из библиотеки) — откроется
список созданных и сохраненных ранее в библиотеку материалов (рис. 70). Дважды щелкните,
например, на материале для имитации кожуры апельсина, в результате чего данный материал
загрузится в выделенный слот, затем последовательно присвойте материал всем трем
апельсинам. Аналогичным образом откройте материал, имитирующий стекло и установите его
для вазы с фруктами. Один из вариантов материалов, имитирующих каменную поверхность,
выберите для цветочной вазы, а имитирующих дерево — для столешницы. Возможный
результат экспериментов представлен на рис. 71.

242
Рис. 70. Окно Material/Map Browser со списком сохраненных в библиотеке материалов

243
Рис. 71. Вид визуализированной сцены после присвоения объектам материалов

244
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 9.
НЕСТАНДАРТНЫЕ МАТЕРИАЛЫ
Материал Architectural
Материал Top/Bottom
Материал Double Sided
Материал Blend
Материал Multi/Sub-Object
Материал Composite
Материал Raytrace
Материал Matte/Shadow

Наряду с рассмотренным в предыдущем уроке базовым материалом Standard, существует


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

МАТЕРИАЛ ARCHITECTURAL

Применение материала Architectural — самый простой способ текстурирования объектов,


так как он включает множество шаблонов, специально разработанных для имитации тех или
иных материалов: керамической поверхности, пластика, металла, воды и т.д. Использование
шаблонов позволяет быстро создавать нужные материалы, ведь достаточно выбрать нужный
тип материала, например пластик, и откорректировать его параметры, а не создавать данный
материал с нуля, что дольше и требует соответствующих знаний.
Для примера попробуйте текстурировать произвольную сцену (рис. 1) с применением
материалов данного типа. Откройте окно редактора материалов, щелкнув на клавише M,
выделите первый слот, присвойте материалу имя и щелкните на кнопке Standard — откроется
окно с доступными типами материалов (рис. 2). Выберите тип материала Architectural и в
ответ на запрос программы относительно необходимости замены материала укажите вариант
Discard Old Material (Сбросить старый материал). Это позволит получить совершенно новый
тип материала, пока не обременный никакими характеристиками. На вкладке Templates
(Шаблоны) установите нужный шаблон, например Ceramics (Керамика — рис. 3) для
визуализации керамических поверхностей (в рабочей сцене подобный материал можно
применить для чайника). Измените параметры шаблонного материала и назначьте его первому
объекту. Аналогичные операции проведите для всех остальных объектов — возможный вид
сцены представлен на рис. 4.

245
Рис. 1. Исходный вид сцены

Рис. 2. Окно Material/Map Browser

246
Рис. 3. Установка шаблонного материала Ceramics

Рис. 4. Сцена после текстурирования объектов

МАТЕРИАЛ TOP/BOTTOM

Материал Top/Bottom позволяет назначать верхней и нижней частям объекта разные


материалы: Top Material отвечает за материал для верхней части объекта, а Bottom Material —
для нижней. Разделение объекта на верхнюю и нижнюю части довольно условно и зависит от
его ориентации относительно оси Z. Поверхностям, расположенным на положительной части
оси Z, присваивается материал Top, а на отрицательной — материал Bottom. Это

247
автоматически означает, что при изменении ориентации объекта назначение материалов
может измениться, что актуально, например, при анимации.
Для примера создайте произвольный объект, например Torus Knot (рис. 5). Откройте окно
редактора материалов, щелкнув на клавише M, выделите первый слот, присвойте материалу
имя и щелкните на кнопке Standard. Выберите тип материала Top/Bottom и в ответ на запрос
программы относительно необходимости замены материала укажите вариант Discard Old
Material — будет создан новый материал (рис. 6). Назначьте данный материал объекту.
Щелкните в свитке Top/Bottom Basic Parameters на кнопке справа от Top Material и задайте
параметры первого материала, выбрав для него произвольный вариант тонированной
раскраски (рис. 7). Для настройки второго материала в списке материалов переключитесь с
материала Top на составной материал (рис. 8) или нажмите на кнопку Go To Parent,
обеспечивающую перемещение от подчиненного материала к родительскому. Затем
определите особенности материала Bottom —для первого эксперимента можно сделать его
контрастным (рис. 9) и проведите рендеринг (рис. 10).

Рис. 5. Исходный вид объекта

248
Рис. 6. Появление нового материала Top_Bottom

249
Рис. 7. Параметры настройки материала Top

Рис. 8. Возврат к окну параметров составного материала

250
Рис. 9. Параметры настройки материала Bottom

Рис. 10. Вид объекта после наложения составного материала

По умолчанию между верхним и нижним материалами проходит четкая граница, однако при
необходимости можно обеспечить плавное перетекание одного материала в другой за счет их
смешивания. Степень смешивания задается в процентах счетчиком Blend (Смешивание).
Например, при установке смешивания в 50% граница оказывается полностью размытой (рис.

251
11). Положение границы между материалами также регулируется — за это отвечает счетчик
Position (Граница), по умолчанию установленный на 50%.
Рис. 11. Результат размывания границы между материалами
Попробуем воспользоваться данным типом материала при текстурировании обычного
алюминиевого чайника (объект Teapot из группы стандартных примитивов), стремясь придать
его нижней части несколько закопченный вид. Создайте чайник и назначьте ему материал
типа Top/Bottom. Определите параметры материала Top в соответствии с рис. 12, а материала
Bottom — рис. 13. Установите позицию границы в 60% и размойте ее (рис. 14). Для имитации
закопченности нижней поверхности чайника щелкните в свитке Top/Bottom Basic Parameters
на кнопке справа от Bottom Material, в свитке Maps выберите текстурную карту Bump и
установите для нее текстуру Noise. Откройте свиток Noise Parameters и уменьшите значение
параметра Size (Размер) до 1, поэкспериментируйте с типом шума и оттенками используемых
для его имитации материалов (рис. 15). Окончательный вариант визуализированного чайника
показан на рис. 16.

Рис. 12. Параметры настройки материала Top

Рис. 13. Параметры настройки материала Bottom

252
Рис. 14. Параметры настройки материала Top/Bottom

Рис. 15. Параметры настройки свитка Noise Parameters

Рис. 16. Закопченный чайник

МАТЕРИАЛ DOUBLE SIDED

Материал Double Sided позволяет назначать различные материалы разным сторонам одной и
той же поверхности. Если в общем случае визуализируется только сторона поверхности с
положительной нормалью грани — внешняя сторона (обратная сторона при отключении
опции 2-Sided вообще игнорируется), то в случае установки составного материала Double
Sided материал Facing назначается поверхности с положительной нормалью, а материал Back
— обратной стороне той же поверхности (то есть внутренней стороне).
Для экспериментов создайте обычный чайник, у которого нужно удалить крышку, отключив
соответствующий ей подобъект на панели Modify, и присвойте ему произвольный материал
(рис. 17). Изначально внутренняя сторона его поверхности не визуализируется, хотя при
включении флажка 2-Sided в свитке Shader Basic Parameters она будет отображаться, правда
с тем же самым материалом (рис. 18).

253
Рис. 17. Исходный чайник

Рис. 18. Визуализация чайника при включении опции 2-Sided

Чтобы появилась возможность присвоить внутренней стороне другой материал, в окне


редактора материалов выделите свободный слот, присвойте материалу имя, щелкните на
кнопке Standard, установите тип материала Double Sided и укажите вариант Discard Old
Material (Сбросить старый материал). Откроется свиток с параметрами настройки данного
типа материала (рис. 19). Подберите подходящие материалы для обеих сторон чайника.
Например, для внешней стороны можно остановиться на комбинировании тональной
раскраски с подходящей текстурной картой в канале Diffuse Сolor (в данном случае выбрана
карта Marble — рис. 20), а для внутренней ограничиться только тональной раскраской (рис.
21). Полученный в итоге визуализированный чайник представлен на рис. 22. При желании
дополнительно можно регулировать степень просвечивания внешнего материала, корректируя
значение параметра Traselucency. Если данный параметр равен 0, то внутренний материал не
просвечивает полностью, при его постепенном увеличении степень просвечивания растет, при
значении 50 — оба материала становятся примерно одинаковыми, а дальнейший рост
приводит к переключению назначения материалов.

254
Рис. 19. Исходный вид параметров настройки материала Double Sided

Рис. 20. Параметры настройки материала Facing

Рис. 21. Параметры настройки материала Back

255
Рис. 22. Чайник с различными внешним и внутренним материалами

А теперь попробуем воспользоваться материалом типа Double Sided для текстурирования


поверхности с разрывом, полученной путем лофтинга на основе комбинации замкнутых и
разомкнутых сплайнов. Создайте обычную окружность, конвертируйте ее в редактируемый
сплайн, выделите все четыре сегмента окружности и добавьте в каждый по четыре
дополнительных вершины, щелкнув на кнопке Divide (Разделить — рис. 23). Сделайте копию
окружности и разорвите данный сплайн в верхней точке окружности, активировав кнопку
Break (Разорвать) и щелкнув в соответствующей вершине. Сделайте копию уже разорванного
сплайна и измените положение граничных вершин произвольным образом. Дополните сцену
линейным сплайном, который при создании лофт-объекта будет играть роль пути (рис. 24).
Согласуйте первые вершины — в данном случае проще всего это сделать вручную, назначив
первые вершины при помощи операции Make First (Сделать первой). Проведите лофтинг,
указав вначале первый слева сплайн, затем на уровне пути 30 — второй, на уровне 50 —
третий, 70 — второй и 100 — первый. Результат loft-объекта с разрывом представлен на рис.
25.

Рис. 23. Исходная окружность после добавления дополнительных вершин

256
Рис. 24. Исходные объекты для лофтинга

Рис. 25. Loft-объект с разрывом

Обратите внимание, что внутренняя сторона объекта не визуализирована. Откройте


редактор материалов, на пустом слоте создайте новый материала типа Double Sided и
назначьте его объекту. По своему усмотрению определите материалы для внешней и
внутренней поверхностей — в данном случае для обоих материалов были добавлены
текстурные карты на канале Diffude Color, а для материала внутренней поверхности
дополнительно включена опция Self-Illumination (Самосвечение) — рис. 26 и 27. Возможный
результат визуализации текстурированной поверхности с разрывом представлен на рис. 28.

257
Рис. 26. Параметры настройки материала Facing

Рис. 27. Параметры настройки материала Back

258
Рис. 28. Текстурированная поверхность с разрывом

МАТЕРИАЛ BLEND

Материал Blend позволяет смешивать два отдельных материала определенным образом и


получать в итоге новый уникальный материал. Причем смешивать исходные материалы
можно двумя способами: либо просто в некотором процентном соотношении, определяемом
параметром Mix Amount, либо с применением маски — в этом случае второй материал
окажется виден сквозь первый в соответствии с маской, то есть области маски белого цвета
будут текстурироваться вторым материалом, а черного — первым.
Рассмотрим оба варианта на примере расширенных примитивов (рис. 29). Вызовите
редактор материалов, активизируйте свободный слот, щелкните на кнопке Standard,
установите тип материала Blend и укажите вариант Discard Old Material (Сбросить старый
материал). Откроется свиток с параметрами настройки данного типа материала (рис. 30).
Подберите подходящие первый и второй материалы обычным образом. В данном случае
первый материал имеет тонированную раскраску (рис. 31), а для второго в канале Diffude
Color установлена текстурная карта Perlin Marble (рис. 32). Вернитесь к редактированию
основного материала, щелкнув на кнопке Go To Parent, и установите подходящий параметр
смешивания материалов Mix Amount (в примере параметр равен 25%). Возможный вариант
текстурирования исходных объектов данным материалом показан на рис. 33.

259
Рис. 29. Исходные примитивы

Рис. 30. Исходный вид параметров настройки материала Blend

Рис. 31. Параметры настройки первого материала

260
Рис. 32. Параметры настройки второго материала

Рис. 33. Примитивы, текстурированные материалом типа Blend без маски

А теперь немного изменим ситуацию — пусть второй материал не смешивается с первым, а


будет виден сквозь маску. В качестве маски может использоваться любой графический файл
(обычно черно-белый или в градациях серого), созданный в любом графическом редакторе.
Мы не будем создавать файл-маску и ограничимся одной из файлов-масок, входящих в
поставку 3D Studio Max (рис. 34). Подключим данную маску и дополнительно изменим второй
материал на обычный тонированный (рис. 35), так как примененная нами ранее текстура в
данном случае будет неуместна. Проведем визуализацию (рис. 36).

261
Рис. 34. Маска

Рис. 35. Параметры настройки второго материала

Рис. 36. Примитивы, текстурированные материалом типа Blend с маской

А теперь попробуем воспользоваться типом материала Blend для текстурирования


поверхности грозового неба, что может пригодиться при использовании 3D Studio Max для
262
генерации ландшафтов. Для экспериментов создайте обычную плоскость, на которую и будем
накладывать создаваемый материал. В редакторе материалов активизируйте свободный слот,
щелкните на кнопке Standard, установите тип материала Blend и назначьте материал
плоскости. Создайте первый материал, внедрив в канал Diffuse Color текстурную карту Smoke
с примерно такими параметрами, как на рис. 37. Для первого цвета текстурной карты Smoke
добавьте карту Noise, настроив ее параметры в соответствии с рис. 38. Создайте второй
материал, также указав для канала Diffuse Color текстурную карту Smoke (рис. 39, 40 и 41).
Вернувшись в окно редактирования основного материал, установите параметр смешивания
материалов Mix Amount равным 50%. Возможный вариант небесной поверхности показан на
рис. 42.

Рис. 37. Параметры настройки текстурной карты Smoke для первого материала

263
Рис. 38. Параметры настройки текстурной карты Noise для первого материала

Рис. 39. Параметры настройки второго материала

Рис. 40. Параметры настройки текстурной карты Smoke для второго материала

264
Рис. 41. Параметры настройки текстурной карты Noise для второго материала

Рис. 42. Небо

МАТЕРИАЛ MULTI/SUB-OBJECT

Материал Multi/Sub-Object позволяет назначать объекту сразу несколько материалов (по


аналогии с подобъектами назовем их подматериалами). Общее число подматериалов в
265
составном материале может оказаться любым и определяется требованиями конкретной
модели. Все входящие в состав материала Multi/Sub-Object подматериалы имеют уникальные
номера (Material #), так же как и все грани объекта, которым по умолчанию присваиваются
уникальные номера ID. При назначении материала Multi/Sub-Object объекту первый материал
присваивается первой грани (ID=1), второй — второй грани (ID=2) и т.д.
Для примера создайте обычный куб (рис. 43). Откройте редактор материалов и создайте
материал Multi/Sub-Object. По умолчанию в данный материал входит шесть подматериалов,
то есть ровно столь, сколько и граней в кубе. А учитывая, что в данный момент наша задача —
текстурировать куб так, чтобы каждой из шисти граней соответствовал уникальный материал,
нет необходимости превращать куб в редактируемую сетку и корректировать ID-номера
граней. Поэтому ограничимся подготовкой подматериалов в свитке Multi/Sub-Object Basic
Parameters. Обратите внимание, что не обязательно создавать новые материалы вручную,
если таковые уже присутствуют в окне редактора — можно просто перетащить нужные слоты
на соответствующие объекты свитка. Возможный вариант настройки материалов представлен
на рис. 44. Назначьте полученный материал кубу, в результате чего все грани последнего
окажутся разноцветными (рис. 45). Входящие в состав материала Multi/Sub-Object
подматериалы могут создаваться и с применением текстурных карт — можно, например, на
каждую из граней куба поместить уникальную фотографию (рис. 46).

Рис. 43. Нетекстурированный куб

266
Рис. 44. Окно редактора материалов с созданным материалом Multi/Sub-Object

Рис. 45. Куб, текстурированный тонированными материалами

267
Рис. 46. Куб, текстурированный фотографиями

А теперь усложним задачу и попробуем применить материал Multi/Sub-Object к сложному


объекту, полученному лофтингом. В качестве основы для лофт-моделирования возьмем
линию как путь и группу из трех сплайнов в качестве сечений (рис. 47). Превратите все
сплайны в редактируемые сплайны, а затем для окружности и квадрата увеличьте число
вершин так, чтобы оно стало равным 12 (это число вершин звезды), поскольку без данного
действия избежать перекручивания объекта при лофтинге не удастся. Для этого выделите
окружность, перейдите в режим редактирования сплайна на уровне сегментов и добавьте по
три вершины на каждый сегмент, прибегнув к операции Divide (Разделить). Аналогичные
действия произведите в отношении квадрата. Согласуйте первые вершины для всех трех
объектов. Проведите лофтинг, указав вначале окружность, затем на уровне пути 30 — квадрат
и на уровне 70 — звезду. При необходимости подкорректируйте положение первых вершин.
Полученный loft-объект представлен на рис. 48.

Рис. 47. Исходные сплайны для loft-объекта

268
Рис. 48. Нетекстурированный loft-объект

В окне редактора материалов создайте материал Multi/Sub-Object. По замыслу в объекте


нужно выделить разными материалами три поверхности: две торцевые и одну охватывающую
объект. Поэтому в составной материал должно входить три подматериала — укажите это,
щелкнув на кнопке Set Number (Установить число). Произвольным образом определите
параметры для каждого материала (рис. 49). Выделите лофт-объект, добавьте объекту
модификатор Edit Mesh (Редактирование каркаса), перейдите в режим редактирования
полигонов и в свитке Surface Properties скорректируйте ID-номера для торцевых
поверхностей (рис. 50). Назначьте материал лофт-объекту и проведите его визуализацию (рис.
51).

Рис. 49. Окно редактора материалов с созданным материалом Multi/Sub-Object

269
Рис. 50. Корректировка ID-номеров лофт-объекта

Рис. 51. Текстурированный loft-объект

МАТЕРИАЛ COMPOSITE

Материал Composite позволяет объединить произвольное число материалов, каждый из


которых может относиться как к стандартному, так и иестандартному типу. Как правило, он
используется в ситуациях, когда новый составной материал получается путем многократного
перекрывания нескольких подматериалов. При этом первый подматериал является основным и

270
применяется первым, второй накладывается поверх первого и т.д. Естественно, для того чтобы
увидеть основной материал, все последующие должны быть в какой-то степени прозрачными.
Попробуем поэкспериментировать с данным типом материалов для наложения эмблемы на
тонированную поверхность таким образом, что данный вариант текстурирования относился к
одной из поверхностей объекта, а все остальные были покрыты текстурой. Логотип (рис. 52)
будет представлять собой своеобразную черно-белую маску и при ее внедрении в материал
черные контуры логотипа должны заменяться на ту же самую текстуру. В качестве основы для
экспериментов возьмем рис. 53, сцена которого представлена двумя объектами: плоскостью и
коробкой с фаской.

Рис. 52. Логотип

Рис. 53. Начальный вид сцены


271
Создайте материал Composite и в качестве основного подматериала установите материал
типа Standard, а первым подматериалом возьмите материал Multi/Sub-Object, так как по
замыслу к разным граням будут применены различные принципы текстурирования (рис. 54).
Для основного подматериала задайте параметры в соответствии с рис. 55, а для первого — в
соответствии с рис. 56. Настройки параметров первого подматериала типа Multi/Sub-Object
приведены на рис. 57, а второго — на рис. 58. Обратите внимание, что для первого
подматериала типа Multi/Sub-Object в канале Opacity (Непрозрачность) присутствует
текстурная карта-логотип.

Рис. 54. Окно редактора материалов с созданным материалом Composite

Рис. 55. Настройка параметров основного подматериала

Рис. 56. Окно редактора материалов с созданным материалом Multi/Sub-Object

272
Рис. 57. Настройка параметров первого подматериала Multi/Sub-Object

Рис. 58. Настройка параметров второго подматериала Multi/Sub-Object

Выделите коробку, переведите ее в режим редактирования полигонов на уровне полигонов


и свитке Poligon Properties скорректируйте ID-номер для верхней поверхности, которая будет
отличаться вариантом текстурирования. Назначьте коробке созданный составной материал и
проведите визуализацию сцены, возможный результат текстурирования которой показан на
рис. 59.

273
Рис. 59. Текстурированная коробка

МАТЕРИАЛ RAYTRACE

Материал Raytrace используется при создании фотореалистичных прозрачных и


отражающих материалов: стекла, воды, разнообразных полированных металлических и
неметаллических поверхностей. Кроме того, он позволяет создавать очень точные отражения
на неровных поверхностях и дополнительно обладает рядом интересных возможностей, таких
как туман внутри объекта, цветная плотность и др. Материал отличается очень большим число
параметров и настраивается непросто. Одним из существенных отличий материалов данного
типа от стандартных является иной принцип определения степени влияния параметра на
материал, которое задается не числом, а цветом — от черного (минимального) до белого
(максимального).
Для небольшого эксперимента с данным материалом создайте два объекта — куб и шар,
причем куб должен частично закрывать шар. Кубу присвойте обычный стандартный материал,
а для шара создайте материал типа Raytrace (рис. 60) — видно, что пока материал ничем
интересным не отличается. Установите темно-синий цвет для канала Diffuse и измените цвет
прозрачности (Transparency) на серый (рис. 61) — куб станет одновременно и отражать и
преломлять лучи (рис. 62).

Рис. 60. Исходные объекты

274
Рис. 61. Настройка параметров свитка Raytrace Basic Parameters

Рис. 62. Вид сцены при минимальном отражении и средней прозрачности

Откройте свиток Extended Parameters и в разделе Density (Плотность) поставьте галочку


рядом с параметром Color (Цвет плотности). Установите для данного параметра значения
Start равным 10 и End равным 25, а в соответствующем окне выберите красный цвет (рис. 63).
Визуализированная сцена, на которой внутри куба появится плотное цветное облако (так
называемая цветная плотность), представлена на рис. 64. Теперь отключите флажок Color и
вместо него активизируйте флажок Fog (Туман) — установите для данного параметра те же
значения Start и End и задайте голубой цвет (рис. 65). После рендеринга вы увидите, что
внутреннее пространство куба окажется заполненным голубым туманом (рис. 66).
Дополнительно наложите на туман текстурную карту (в данном случае выбрана текстура
Swirl) и туман будет выглядеть еще интереснее (рис. 67).

275
Рис. 63. Настройка параметров свитка Extended Parameters для цветной плотности

Рис. 64. Вид сцены с цветной плотностью

Рис. 65. Настройка параметров свитка Extended Parameters для цветного тумана

276
Рис. 66. Вид сцены с тонированным туманом

Рис. 67. Вид сцены с текстурным туманом

А теперь поэкспериментируем с отражением и преломлением. Вначале дополните сцену


плоскостью и назначьте ей подходящий материал. При проведении рендеринга вы увидите,
что никакого отражения плоскости на кубе нет (рис. 68), так как по умолчанию
устанавливается минимальная степень отражения. Вернитесь в свиток Raytrace Basic
Parameters и установите в цветовом окошке Reflect чисто белый цвет (рис. 69) — это
приведет к стопроцентному отражению (рис. 70). Захватом отражения можно управлять — для
этого включите в секции Falloff End Distance флажок Reflect и установите для него,
например, значение 170 (данное значение зависит от размещения объектов и их размера в
конкретной сцене). Это приведет к тому, что отражение будет сходить на нет на указанном
расстоянии от отражающего предмета — в данном случае отражение плоскости будет
присутствовать только на нижней части соответствующей стороны куба (рис. 71). При
желании можно дополнительно исключить ненужные предметы из отражения — для этого
следует щелкнуть на кнопке Local Exclude (Локальное исключение), выделить из списка всех
объектов (левый список) исключаемые и переместить их в список исключенных объектов
(правый список).

277
Рис. 68. Вид сцены при отсутствии отражения

Рис. 69. Настройка параметров свитка Raytrace Basic Parameters

Рис. 70. Вид сцены с полным отражением

278
Рис. 71. Вид сцены с ограниченным в диаметре отражением

Теперь разберемся с преломлением. В свитке Extended Parameters в разделе Density


отключите флажок Fog. В свитке Raytrace Basic Parameters для параметров Reflect и
Transparency установите темно-серый цвет (рис. 72) и визуализируйте сцену — в результате
куб снова станет темно-синим и наполовину прозрачным, а сквозь него будут отображаться
отдельные фрагменты шара с преломлением (рис. 73). Откройте свиток Raytracer Controls
(Настройки отражения) и удалите уберите галочку Raytrace Refractions — это приведет к
тому, что предметы будут только отражать, но уже не преломлять (рис. 74).

Рис. 72. Настройка параметров свитка Raytrace Basic Parameters

279
Рис. 73. Вид сцены: материал куба частично прозрачен, отражает и преломляет

Рис. 74. Вид сцены с частичным отражением, но без преломления

Результат будет еще интереснее, если предварительно наложить на сцену фоновое


изображение. Откройте меню Rendering=>Environment (Рендеринг=>Окружение), щелкните
на кнопке Environment Map, в открывшемся списке дважды щелкните на строке Bitmap и
укажите графический файл в качестве фона. В окнах проекций данного фонового изображения
не будет видно, но оно будет отображаться при визуализации сцены. В качестве объектов
сцены создайте плоскость и стоящий на ней чайник. Теперь нужно подготовить такие
материалы, чтобы на плоскости отражались фон, а на основной поверхности чайника —
только фрагменты его ручки. Это значит, что для плоскости никаких ограничений на
отражение нет, а у чайника отражающая способность должна быть невелика и должен быть
выставлен запрет на отображение плоскости. Для материала чайника преломление отключено,
а для плоскости — включено. Возможные варианты настройки основных параметров
материалов показаны на рис. 75 и 76, а визуализированная сцена — на рис. 77.

280
Рис. 75. Настройка параметров свитка Raytrace Basic Parameters для чайника

281
Рис. 76. Настройка параметров свитка Raytrace Basic Parameters для плоскости

Рис. 77. Чайник на плоскости


282
МАТЕРИАЛ MATTE/SHADOW

Материал Matte/Shadow принципиально отличается от других типов материалов, так как не


визуализируется. Назначение данного материала — не отображение поверхности в каком-то
определенно виде, а, наоборот, ее скрытие. Объект, которому присвоен материал
Matte/Shadow, становится своеобразным отверстием на сцене, позволяющим отсекать любую
геометрию позади себя и проявлять фон. Это дает возможность моделировать совмещение
заднего фона (Background) и объектов в сцене. Причем объекты, которым назначен материал
Matte/Shadow, становятся прозрачными до фонового изображения, а остальные предметы
могут отбрасывать на них тень — создается иллюзия, что объекты отбрасывают тень прямо на
фон.
Для примера попробуем взять произвольное изображение в качестве фона сцены, внедрить в
сцену простейший объект и добиться того, чтобы тень от объекта падала на фон. В качестве
фона возьмем рис. 78. Вначале создадим на его основе текстурную карту — откройте редактор
материалов, активизируйте свободный слот, щелкните на кнопке Get Material и в разделе New
выберите Bitmap, в качестве текстурной карты укажите соответствующий файл на диске.
Учитывая, что карта будет накладываться на фон, переключите ее с текстурного отображения
(Texture) на отображение в виде карты окружения (Environ Mapping), установив для нее тип
Screen (рис. 79). Установите созданную текстурную карту в качестве фона. Для этого откройте
меню Rendering=> Environment (Рендеринг=>Окружение), щелкните на кнопке карты None,
в открывшемся окне Material/Map Browser переключитесь на вариант Mtl Editor и выделите
только что созданную карту.

Рис. 78. Фоновое изображение

283
Рис. 79. Подключение текстурной карты в качестве фонового изображения

Поверхность, на которую объекты будут отбрасываться тень, сформируем на основе


обычной плоскости. Создайте плоскость и разместите ее нужным образом — для удобства
ориентации лучше сделать фон видимым в окне проекции Perspective. Для этого
воспользуйтесь командой Views=>ViewPort Background, щелкните на кнопке Files (Файлы) и
укажите файл для фона (рис. 80). В нашем случае форма и положение плоскости не очень
актуальны — она просто должна находиться в правой нижней части сцены. Однако чаще всего
параметры объекта с материалом Matte/Shadow приходится скрупулезно подгонять так, чтобы
вместить его в определенную ограниченную зону фонового изображения, что без включения
видимости фона невозможно. Создайте несколько объектов, которые по замыслу должны
отбрасывать тень (рис. 81).

284
Рис. 80. Включение видимости фонового изображения

Рис. 81. Исходный вид сцены

Добавьте источник света типа Omni, разместив его так, чтобы вся сцена оказалась
освещенной. Для этого активизируйте вкладку Light (Источники света) панели Create и
создайте в окне любого окна проекции источник света точно так же, как создаете обычные
объекты. Отрегулируйте его положение. Не снимая выделения с источника света, откройте
вкладку Modify и в свитке General Parameters включите флажок Shadows (Тени) для
отображения теней (рис. 82).

285
Рис. 82. Настройка отображения теней

Вызовите редактор материалов, выделите свободный слот, кликните на кнопке Standard и


установите материал Matte/Shadow. Проверьте, чтобы в параметрах материала была включена
опция Receive Shadows (Получить тени). Выделите плоскость, назначьте ей данный материал
и визуализируйте сцену (рис. 83). На данном рисунке видно, что объекты действительно
отбрасывают тени на фоновое изображение, но сами тени чересчур яркие. Интенсивностью
отображения теней несложно регулировать путем изменения цвета тени в свитке
Matte/Shadow Basic Parameters — можно просто изменить выставляемый по умолчанию
черный цвет на ту или иную градацию серого либо, что еще лучше, определить цвет теней на
конкретном фоновом изображении и ввести для искусственной тени те же самые значения
цвета. Для этого щелкните правой кнопкой мыши на интересующем цвете в окне рендеринга
(рис. 84), запомните появившиеся в открывшемся окне параметры, а затем укажите их в свитке
Matte/Shadow Basic Parameters (рис. 85). Кроме того, учитывая, что тень от правой части
объекта Torus Knot падает на совершенно иной фрагмент фона (а значит, цвет тени должен
быть другим), переместите объекты более приемлемым образом, и после визуализации вы
увидите, что тени стали более естественными (рис. 86).

286
Рис. 83. Вид сцены с яркими тенями

287
Рис. 84. Определение цвета тени на фоновом изображении

288
Рис. 85. Ввод цвета тени в свитке Matte/Shadow Basic Parameters

Рис. 86. Результат корректировки цвета теней

289
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 10.
ПРИМЕНЕНИЕ ТЕКСТУРНЫХ КАРТ
Типы карт
Diffuse Color
Bump
Куб, облицованный кафельной плиткой
Волокнистая деревянная поверхность
Opacity
Лист апельсина
Полупрозрачные сферы
Елочный шар с узором
Reflection
Светящиеся объекты
Отражение фонового изображения на чайнике
Зеркальное отражение рюмки и стакана
Стеклянный шар с отражением
Грязный стакан
Refraction
Стакан с карандашом и рюмка с кусочками льда
Self-Illumination
Гравированная надпись

двух предыдущих уроках мы рассмотрели некоторые общепринятые способы создания и


присвоения объектам материалов, создаваемых как на основе базовых (Standard), так и с
применением нестандартных типов материалов (Multi/Sub-Object, Raytrace, Matte/Shadow и
др.). Мы выяснили, что теоретически новые материалы можно получить в результате
настройки базовых (а при необходимости и расширенных) параметров, либо путем назначения
материалу текстурных карт, либо сочетая данные варианты. На практике любой материал
можно создать лишь с применением текстурных карт, основные аспекты использования
которых мы и рассмотрим в данном уроке.
Как уже упоминалось, за работу с текстурными картами в списке параметров отвечает
отдельный свиток Maps (Текстурные карты), содержащий длинный перечень каналов. Каналы
отвечают за управление свойствами материала, и теоретически каждому из них может быть
назначена текстурная карта. Настройка любого из элементов свитка Maps производится путем
включения/выключения флажка состояния, установки значения счетчика влияния текстурной
карты Amount и определения типа текстурной карты. Самым главным в списке каналов свитка
Maps является Diffuse Color (Рассеянный цвет), определяющий текстуру самого объекта,
некоторыми экспериментами с которым преимущественно мы и ограничивались ранее. На
самом деле текстурные карты можно назначить и большинству других каналов, например
использование текстурных карт на каналах Reflection (Отражение) и Refraction
(Преломление) позволит имитировать оптические эффекты. Применение текстурной карты на
канале Opacity (Непрозрачность) обеспечивает управление степенью прозрачности объекта, а
на канале Bump (Рельеф) необходимо при формировании рельефных поверхностей и т.д.
Каналы Ambient Color, Diffuse Color, Specular Color, Filter Color, Reflection и Refraction
работают с цветом, поэтому подключаемые на них текстурные карты обычно цветные.
Каналы Specular Level, Glossiness, Self-Illumination, Opacity, Bump и Displacement
учитывают только интенсивность цвета — ее значение колеблется в диапазоне от 0 (черный)
до 255 (белый), поэтому на данных каналах принято подключать в качестве карт черно-белые
изображения или изображения в градациях серого цвета. Рассмотреть особенности
применения текстурных карт на всех каналах (тем более что их список не исчерпывается

290
вышеназванными) не представляется возможным; мы остановимся лишь на наиболее важных.
Но вначале поговорим об основных типах карт.

ТИПЫ КАРТ

3D Studio Max доступно несколько типов карт: двумерные, трехмерные, композитные,


цветовые и др. (рис. 1) — по умолчанию доступ открывается сразу ко всем типам карт.

Рис. 1. Окно Material/MapBrowser с выделенным цветом блоком выбора типов карт

Двумерные карты (2D Maps) при визуализации просчитываются по двум осям, и для их
корректного отображения недостаточно выбрать и настроить текстурную карту — необходимо
также правильно ее проецировать на поверхность объекта (данной проблеме будет посвящен
следующий урок). К двумерным картам относятся:

 Bitmap (Растровая карта) — представляет собой графический файл (чаще всего


текстуру), который хранится на диске и может быть подготовлен в любом графическом
пакете;
 Checker (Шахматы) — позволяет создавать текстуру в виде шахматного поля, клетки
которого могут иметь тонированную раскраску либо представлять другие карты
текстур;
 Gradient (Градиент) — обеспечивает радиальную или линейную градиентную заливку
с плавными переходами между указанными цветами; при необходимости любой из
данных цветов может быть заменен текстурной картой;
 Gradient Ramp (Улучшенный градиент) — представляет собой усложненный вариант
карты Gradient, отличающийся более широкими возможностями настройки;
291
 Swirl (Завихрение) — обеспечивает создание своеобразных вихревых узоров и
используется при имитации радужных переливов, например бензиновых пятен на воде.

Трехмерные карты (3D Maps) отличаются от двумерных тем, что при их наложении просчет
ведется сразу по всем трем осям, что удобно, так как отпадает необходимость контролировать
процесс проецирования карт. В списке трехмерных карт фигурируют:

 Noise (Шум) — обеспечивает генерацию неоднородных по структуре (более


естественных) материалов;
 Smoke (Дым) — позволяет имитировать такие атмосферные эффекты, как пар, туман,
дым и т.п.;
 Water (Вода) — используется для имитации водных поверхностей — например
случайного рисунка на поверхности воды (при подключении на канале Diffuse Color)
или создания ряби, расходящихся кругов, волн и т.п. (при использовании на канале
Bump);
 Wood (Древесина) — позволяет генерировать структуру древесной поверхности с
отображением годовых колец, фрагментов сучков и т.п.;
 Cellular (Ячейки) — обеспечивает имитацию соответствующих ячеистых структур:
пенопласта, бетона, кожуры апельсина, кожи пресмыкающихся и т.п., используется
преимущественно на канале Bump;
 Marble (Мрамор) и Perlin Marble (Перламутр) — применяются для создания таких
природных материалов, как мрамор, малахит, родонит и т.п.;
 Dent (Выбоины) — позволяет генерировать на поверхности объекта случайные
вмятины и шероховатости и обычно применяется совместно с картой Noise для
придания материалу большей естественности;
 Falloff (Спад) — обеспечивает неоднородную прозрачность материала и чаще всего
используется на канале Opacity.

Группа текстурных карт Compositors объединяет так называемые многокомпонентные


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

 Mask (Маска) — обеспечивает отображение текстурной карты в соответствии с


указанной маской. В качестве маски применяются grayscale-изображения, при этом
черные пикселы считаются прозрачными и отображаются текстурой, белые —
полностью непрозрачными (сквозь них текстура не видна), а серые обладают той или
иной степенью прозрачности в зависимости от степени яркости;
 Composite (Смесь) — позволяет генерировать материалы путем смешивания двух и
более текстурных карт, накладываемых одна на другую с учетом их прозрачности.
Прозрачность компонентов может быть задана посредством карты Mask либо при
помощи растровой карты (Bitmap);
 Mix (Смешение) — напоминает карту Composite, однако генерируется несколько
иначе, так как смешивание текстурных карт в ней осуществляется с учетом процентных
соотношений яркости.

Из других типов карт наибольшее практическое применение имеют следующие:

 Flat Mirror (Плоское зеркало) — используется для получения зеркальных отражений


окружающих объектов на плоской поверхности. Применяется только на канале
Reflection;
 Raytrace (Трассируемая) — обеспечивает имитацию оптических эффектов отражения и
преломления, возникающих в непустых, в том числе полупрозрачных, объектах.
Применяется на каналах Reflection и Refraction;

292
 Reflect/Refract (Отражение/Преломление) — напоминает карту Raytrace, однако
работает по другому алгоритму. По сравнению с Raytrace обеспечивает генерацию
менее достоверных эффектов отражения и преломления, но зато более проста в
настройке;
 Thin Wall Refraction (Тонкостенное преломление) — используется для имитации
преломлений, характерных для прохождения света через пустые прозрачные
тонкостенные объекты (посуда, остекление, водные струи и т.п.). Применяется только
на канале Reflection.

DIFFUSE COLOR

анал Diffuse Color определяет основные параметры материала: основной цвет и при
необходимости подключаемую текстурную карту. Рассмотрим особенности управления
текстурными картами на данном канале. Создайте сцену с двумя объектами (рис. 2), а затем в
редакторе материалов подготовьте новый материал, указав для него только текстурную карту
типа Bitmap на канале Diffuse Color и оставив значение счетчика влияния текстурной карты
равным 100 (рис. 3). Назначьте материал кубу. Визуализируйте сцену — в данном случае
выбор текстуры, имитирующей кафельную плитку (рис. 4), создаст (правда, пока весьма
слабую) иллюзию того, что куб облицован плиткой (рис. 5).

Рис. 2. Исходные объекты

293
Рис. 3. Свиток Maps

294
Рис. 4. Текстура для канала Diffuse Color

Рис. 5. Вид объектов после наложения материала

Уменьшите значение счетчика влияния текстурной карты до 50 — отображение текстуры


станет менее выраженным. Если параллельно с изменением счетчика поэкспериментировать с
цветом в данном канале, то можно одновременно с сохранением видимости текстуры
произвольным образом менять ее оттенки (на самом деле, конечно, оттенки будут меняться
лишь в материале, а не в текстурной карте) — рис. 6.

295
Рис. 6. Вид сцены при разных значениях цвета

BUMP

сли внимательно посмотреть на поверхность куба в только что созданной сцене при
рендеринге, то несложно заметить, что применение текстуры кафельной плитки не
обеспечивает иллюзии реальности. Основной причиной этого является то, что каждая плитка
естественной поверхности, облицованной данным материалом, слегка выступает над ней, а в
нашем случае поверхность выглядит совершенно плоской. Для изменения ситуации в лучшую
сторону потребуется настройка текстурной карты на канале Bump, отвечающем за
формирование рельефных поверхностей. При необходимости имитации рельефной
поверхности для данного канала устанавливается предварительно подготовленная в любом
двумерном графическом пакете текстурная карта в градациях серого цвета. При рендеринге
серые области карты (подразумевается серый цвет — R=150, G=150, B=150) будут
отображаться обычным образом, черные будут вдавлены, а белые — приподняты (чем область
светлее, тем больше уровень приподнятости), что и создаст иллюзию рельефа поверхности.
Например, установка на канале Bump представленной на рис. 7 текстурной карты (для
чистоты картины на всех остальных каналах карты отсутствуют) приведет к тому, что
рельефными будут только два прямоугольника: белый приподнят, черный вдавлен, вся
остальная поверхность — ровная (рис. 8).

296
Рис. 7. Текстура для канала Bump

Рис. 8. Вид сцены после добавления текстуры на канале Bump

КУБ, ОБЛИЦОВАННЫЙ КАФЕЛЬНОЙ ПЛИТКОЙ

опробуем добиться эффекта рельефности на примере имеющегося куба с установленной


на канале Diffuse Color текстурой, имитирующей кафельную плитку. Откройте исходную
текстуру в Photoshop и залейте области, соответствующие кафельным плиткам белым цветом,
а все остальное пространство — черным, сохраните изображение в формате JPG (рис. 9).
Переключитесь в 3D Studio Max и подключите данную карту на канале Bump, оставив
значение счетчика влияния текстурной карты равным 30, — плитки окажутся приподнятыми
над основной поверхностью (рис. 10).

297
Рис. 9. Текстура для канала Bump

Рис. 10. Куб, облицованный кафельной плиткой

Счетчик влияния текстурной карты в данном случае отвечает за разницу между светлыми и
темными областями — увеличив, например, его значение с 30 до 70 вы увидите, что плитки
станут выступать над поверхностью гораздо сильнее (рис. 11). Стоит отметить, что значение
параметра Amount может быть не только положительным, но и отрицательным — при

298
отрицательных значениях интерпретация карты программой меняется на противоположную:
светлые области становятся вдавленными, а темные — приподнятыми.

Рис. 11. Результат увеличения значения Amount для текстуры на канале Bump

ВОЛОКНИСТАЯ ДЕРЕВЯННАЯ ПОВЕРХНОСТЬ

овольно часто текстурную карту для канала Bump получают более простым способом —
не создают ее в графическом редакторе, а просто преобразуют изображение, задействованное
в качестве текстурной карты на канале Diffuse Color в режим Grayscale. Воспользуемся
данным подходом для создания рельефного материала с текстурой дерева для многоугольной
формы, играющей роль плоской основы для куба. Активируйте в редакторе материалов
свободный слот и установите для канала Diffuse Color текстуру, имитирующую деревянную
поверхность (рис. 12). Присвойте данный материал объекту — его поверхность в силу
чрезмерной гладкости будет больше напоминать пластик под дерево, нежели настоящее
дерево (рис. 13). Попробуем исправить ситуацию и придать материалу волокнистую структуру
настоящего дерева. Откройте текстуру дерева в Photoshop, переведите ее в режим Grayscale и
сохраните в формате JPG (рис. 14). Переключитесь в 3D Studio Max, подключите данную
карту на канале Bump и отрегулируйте значение счетчика влияния текстурной карты (в нашем
примере мы остановились на 110) и визуализируйте сцену (рис. 15).

Рис. 12. Текстура для канала Diffuse Color

299
Рис. 13. Вид сцены после добавления текстуры на канале Diffuse Color

Рис. 14. Текстура для канала Bump

300
Рис. 15. Куб на волокнистой деревянной поверхности

OPACITY

правлять прозрачностью можно как через базовые и расширенные параметры материала,


так и через канал Opacity (Непрозрачность). Самое простое — изменить значение параметра
Opacity в свитке Blinn Basic Parameters (данный параметр определяет долю света, которая не
может проникнуть сквозь эту поверхность), и объект станет частично прозрачным (рис. 16).
Более сложные настройки непрозрачности доступны через свиток Extended Parameters —
здесь можно настроить спад непрозрачности (Falloff) и установить ее тип (Туре). Параметр
Falloff применяется при создании материалов с неоднородной прозрачностью, зависящей от
угла зрения наблюдателя, и может принимать значение In (Внутренний) или Out (Внешний).
Переключатель Туре позволяет задать способ отображения прозрачных материалов. По
умолчанию для него устанавливается вариант Filter (Фильтр), обеспечивающий отображение
прозрачных материалов через канал цвета, благодаря чему указанный цвет фильтра становится
цветом в прозрачных областях поверхности. Если не требуется, чтобы цвет Filter оказывал
влияние на прозрачность, то данный цвет должен содержать 128 серого (что и установлено по
умолчанию). Принцип работы другого типа непрозрачности — Subtractive — основан на
вычитании рассеянного цвета из фона, что обеспечивает более глубокую непрозрачность. А
тип непрозрачности Additive, наоборот, добавляет рассеянный цвет к прозрачным областям —
это придает поверхности своеобразное самосвечение и может применяться для прожекторов,
лампочек и т.п.

301
Рис. 16. Свиток Blinn Basic Parameters с уменьшенным значением Opacity и результат
визуализации сцены

Канал Opacity (Непрозрачность) обеспечивает более тонкую настройку непрозрачности


объекта, так как позволяет применять к материалу карты текстуры непрозрачности, — это дает
возможность формировать прозрачные и непрозрачные участки материала по определенному
принципу. Для текстурных карт, используемых в данном канале, важна только яркостная
составляющая, поэтому в качестве карт обычно используются черно-белые изображения или
изображения в градациях серого цвета. При этом черные пикселы соответствует полностью
прозрачным участкам материала, а белые — полностью непрозрачным; серые пикселы
занимают промежуточные значения.

ЛИСТ АПЕЛЬСИНА

тобы разобраться с особенностями работы текстурных карт на канале Opacity,


попробуем вначале создать лист апельсина на основе его растрового изображения (рис. 17).
Создайте обычную плоскость и разверните ее удобным образом (рис. 18). Откройте редактор
материалов и на свободном слоте создайте новый материал, установите на канале Diffuse
Color текстурную карту типа Bitmap, указав файл с изображением листа. Присвойте материал
плоскости и визуализируйте сцену — лист, естественно, будет иметь белое обрамление —
такое же, как и в растровом файле (рис. 19). Переключитесь в Photoshop и загрузите файл с
изображением листа. Волшебной палочкой выделите белый фон и залейте выделенную
область черным цветом, инвертируйте выделение и установите для внутренней части листа
белую заливку (рис. 20). Сохраните файл под другим именем. Переключитесь в 3D Studio Max,
вновь активируйте редактор материалов и для рабочего материала на канале Opacity
дополнительно подключите только что созданную черно-белую текстуру (значение счетчика
влияния текстурной карты равно 100). После рендеринга вы увидите, что белое обрамление
вокруг листа исчезнет, так как соответствующая область станет полностью непрозрачной, а
следовательно, не будет отображаться (рис. 21).

302
Рис. 17. Растровое изображение листа

Рис. 18. Исходная плоскость

303
Рис. 19. Вид сцены после установки растровой карты на канале Diffuse Color

Рис. 20. Черно-белая текстура

304
Рис. 21. Визуализированный лист

ПОЛУПРОЗРАЧНЫЕ СФЕРЫ

е менее интересных результатов можно добиться при использовании на канале Opacity


других типов карт. Например, карты Falloff, Gradient и Gradient Ramp, в силу собственной
градиентности, позволяют добиться различной степени прозрачности для разных областей.
Возьмите две обычные непрозрачные сферы на плоскости и присвойте им один и тот же
материал (рис. 22), ограничившись настройкой базовых параметров в соответствии с рис. 23.
Вновь выделите свободный слот, но установите на канале Diffuse Color уже не растровую
карту (Bitmap), а карту Checker (Шахматы) — устанавливается она точно так же, нужно
только выбрать данный тип карты в окне Material/Map Browser (рис. 24). Присвойте данный
материал плоскости и визуализируйте сцену (рис. 25). По умолчанию карта Checker
представляет собой черно-белое шахматное поле с четырьмя клетками, делящими плоскость
на четыре части, однако данный вид легко изменить. В свитке Coordinates увеличьте значение
Tiling до 9, а в блоке Angle установите спиннер W равным 45 — плоскость станет гораздо
интереснее (рис. 26).

305
Рис. 22. Исходный вид сцены

Рис. 23. Настройка параметров свитка Blinn Basic Parameters

306
Рис. 24. Выбор текстурной карты Checker

Рис. 25. Вид сцены сразу после установки карты Checker

307
Рис. 26. Результат преображения плоскости благодаря корректировке свитка Coordinates

Вернемся к материалу, установленному для сфер. Сделайте его копию и введите для нее
другое имя. Назначьте первую копию первой сфере, а вторую — второй. В первой копии в
свитке Blinn Basic Parameters установите параметр Opacity равным 50 — это приведет к
равномерной полупрозрачности сферы. Для второй сферы прозрачность в базовых параметрах
оставьте прежней, но на канале Opacity установите текстурную карту Falloff (значение
счетчика активности текстурной карты равно 100). Визуализируйте сцену и увидите, что
степень прозрачности в разных областях второй сферы различна — ее внутренние области
более прозрачны, нежели граничные (рис. 27).

Рис. 27. Полупрозрачные сферы

ЕЛОЧНЫЙ ШАР С УЗОРОМ

еперь перейдем к реальному примеру — попробуем использовать возможности


управления прозрачностью через канал Opacity при создании новогоднего елочного шара с

308
узором. Шар будет совершенно обычным, а вот материал по замыслу должен быть
полупрозрачным и расписанным узорами. Создайте шар и смоделируйте крепление к нему на
основе объединенных посредством булевой операции цилиндра и торуса. Для большего
эффекта наложите на сцену фоновое изображение, открыв меню Rendering=>Environment
(Рендеринг=>Окружение), щелкнув сначала на кнопке Environment Map, а затем на строке
Bitmap и указав подходящий графический файл в качестве фона. Создайте для шара новый
материал, определив для последнего только произвольную тональную раскраску на канале
Diffuse Color. Возможный исходный вариант сцены показан на рис. 28.

Рис. 28. Исходный вид сцены

Создайте для оформления крепления шара подходящий металлический материал — базовые


параметры использованного в примере металлического материала приведены на рис. 29.
Дополнительно на канале Reflect в материале применяется карта Falloff для имитации
отражения металла (значение счетчика Amount равно 100).

Рис. 29. Настройка параметров свитка Blinn Basic Parameters для металлического
крепления

309
Вернитесь к материалу шара и обеспечьте свечение материала путем настройки в свитке
Blinn Basic Parameters параметров Specular Lever и Glossines (рис. 30). Добавьте на канале
Diffuse Color карту Swirl (рис. 31). На канале Opacity установите текстурную карту Falloff
(значение счетчика активности текстурной карты равно 50). Добавьте вместо первого цвета
текстурную карту с тем узором, который должен отображаться на шаре, а вместо нижнего —
вновь карту Falloff (рис. 32). При необходимости отрегулируйте в свитке Coordinates для
текстурной карты с узором особенности его генерации — в данном примере параметры
отображения узора соответствуют рис. 33. В свитке Extended Parameters материала оставьте
установленный по умолчанию тип прозрачности Filter и задайте цвет, который должен быть
виден в прозрачных областях поверхности (рис. 34). Возможный окончательный вариант
визуализации сцены представлен на рис. 35.

Рис. 30. Настройка параметров свитка Blinn Basic Parameters для шара

Рис. 31. Настройка параметров свитка Swirl Parameters

Рис. 32. Настройка параметров свитка Falloff Parameters

310
Рис. 33. Настройка параметров свитка Coordinates

Рис. 34. Настройка параметров свитка Extended Parameters

Рис. 35. Полупрозрачный елочный шар с узором

REFLECTION

рименение карт текстур на канале Reflection (Зеркальное отражение) позволяет


имитировать отражение окружающих объектов на поверхности материала, причем
311
подключаться могут разные типы карт. Использование растровых карт Bitmap обеспечивает
имитацию зеркального отражения предметов, изображенных на растровой карте. Карты типа
Reflect/Refract (Отражение/Преломление) позволяют получить на поверхности объекта
отражения окружающих объектов, при этом вид окружающих объектов будет таким, как
будто наблюдатель находится в центре зеркального объекта. Подключение карт типа Flat
Mirror (Плоское зеркало) обеспечивает формирование зеркальной проекции окружающих
объектов на плоскую поверхность, а подключение карт Raytrace (Трассировка) наиболее
эффективно при создании отражений от полупрозрачных объектов. Теоретически на данном
канале могут применяться и другие типы карт, например использование Falloff, Gradient и
Gradient Ramp может привести к получению интересных эффектов свечения объектов,
получающегося за счет отражений. Причиной такого (не совсем естественного для данного
канала) эффекта является то, что карта отражения заменяет рассеянный и фоновый цветовые
компоненты и тем самым минимально реагирует на тень: получается, что отражение видно
независимо от источника света, и объект становится самосветящимся. Обратите внимание, что
карты отражения создаются только при визуализации сцены, поэтому их применение не
отображается в окне Material Editor.

СВЕТЯЩИЕСЯ ОБЪЕКТЫ

ачнем эксперименты с формирования самосветящихся объектов, так как это проще всего
в реализации. Создайте на сцене несколько произвольных объектов — в данном случае мы
остановились на узле, сфере и модифицированной геосфере. Последняя сначала была
преобразована к типу Editable Poly, а затем в ней в режиме редактирования полигонов были
выделены все полигоны, и к ним четыре раза была применена операция Bevel (Фаска). Первый
раз с параметрами: Height=0 и Outline Amount=–1, в последующие — значение параметра
Outline Amount оставалось неизменным, а параметр Height последовательно устанавливался
равным 3, 5 и 10. Создайте на пустом слоте новый материал, задайте для него произвольный
Diffuse-цвет и присвойте материал всем объектам сцены (рис. 36). На канале Reflection
подключите карту Falloff и уменьшите значение счетчика влияния карты примерно до 60.
Измените цвета карты Falloff по своему усмотрению, чтобы добиться нужного варианта
сияния объектов (параметры настройки цветов Falloff, использованные в примере, приведены
на рис. 37). Возможный вариант визуализации сцены показан на рис. 38.

Рис. 36. Исходный вид сцены

312
Рис. 37. Настройка параметров свитка Falloff Parameters

Рис. 38. Светящиеся объекты

ОТРАЖЕНИЕ ФОНОВОГО ИЗОБРАЖЕНИЯ НА ЧАЙНИКЕ

теперь попробуем имитировать на объекте зеркальное отражение предметов,


изображенных на растровой карте (Bitmap). Создайте новую сцену на основе многоугольника
в качестве плоской поверхности и чайника (рис. 39). Наложите на сцену фоновое изображение
(рис. 40). Присвойте чайнику новый материал, предварительно определив для него основные
параметры тоновой раскраски, например в соответствии с рис. 41, — сцена станет напоминать
представленную на рис. 42. Установите на канале Reflection то же самое Bitmap-изображение,
что было задействовано при создании фона, не меняя значения счетчика активности карты.
Возможный результат визуализации показан на рис. 43. Стоит заметить, что внешний вид
отражения сильно зависит от цветов, установленных в полях Ambient, Diffuse и Specular, —
например изменение Diffuse-цвета в сторону более темного будет автоматически затемнять
отражение, а в сторону более светлого — осветлять его (рис. 44).

313
Рис. 39. Исходный вид сцены

Рис. 40. Фоновая фотография

Рис. 41. Настройка параметров свитка Blinn Basic Parameters

314
Рис. 42. Вид сцены после добавления фона и создания материала для чайника

Рис. 43. Чайник с зеркальным отражением фона (параметры отражения установлены по


умолчанию)

Рис. 44. Вид чайника при светлом (слева) и темном (справа) Diffuse-цветах

315
Если вернуться к действительности, то столь ярких и четких отражений на объектах не
бывает — в нашем случае добавление текстурной карты на канал Reflection привело не к
созданию отражения, а к получению оригинального варианта росписи объекта (это тоже
неплохо, но не решает проблемы). С одной стороны, отражение (даже если оно и имеет место)
всегда в той или иной степени размыто и искажено, а с другой — степень его интенсивности
существенно ниже (чем в нашем примере с чайником) и напрямую зависит от материала, из
которого изготовлен объект. Если в нашем примере чайник имеет перламутровое покрытие, то
отражение должно иметь место (если предположить, что отражаться должна именно та
картинка, которая указана у нас в качестве текстурной карты), но очень слабое, примерно как
на рис. 45. Для преобразования исходного варианта отражения к представленному на рис. 45
потребовалось уменьшить значение счетчика воздействия текстурной карты до 30 и
установить в свитке Coordinates для данной текстурной карты параметр Blur Offset равным
0,02 (рис. 46).

Рис. 45. Чайник с зеркальным отражением фона (параметры отражения изменены)

Рис. 46. Настройка параметров свитка Coordinates

ЗЕРКАЛЬНОЕ ОТРАЖЕНИЕ РЮМКИ И СТАКАНА

еперь попробуем создать отражение предметов на полированной поверхности. Пусть


основу сцены составят полупрозрачные стеклянные рюмка и стакан (параметры материала
«Стекло» приведены на рис. 47) и многоугольная поверхность, играющая роль столешницы.
Рюмка получена как тело вращения криволинейного сплайна (рис. 48), а стакан —
посредством булевой операции вычитания одного цилиндра из другого. Первоначальный вид
сцены приведен на рис. 49.

316
Рис. 47. Настройка параметров материала «Стекло» (текстурная карта Noise
установлена с параметрами по умолчанию)

Рис. 48. Исходный сплайн (слева) и полученная на его основе путем вращения рюмка

317
Рис. 49. Исходный вид сцены

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


поверхность столешницы, поэтому для ее текстурирования потребуется составной материал,
состоящий из двух подматериалов. Поэтому создайте составной материал типа Multi/Sub-
Object. Способностью отражения будет обладать только один из подматериалов (тот, что
присвоен верхней поверхности столешницы), поэтому его создание мы рассмотрим подробно
(второй подматериал может быть выбран совершенно произвольно). Для первого
подматериала настройте нужным образом базовые параметры — возможный вариант
настройки приведен на рис. 50. Дополнительно можно подключить карту на канале Diffuse
Color (в данном случае задействована карта Noise) и добавить для большей эффектности
некоторое фоновое изображение (рис. 51) — сцена станет напоминать рис. 52.

Рис. 50. Настройка параметров свитка Blinn Basic Parameters

318
Рис. 51. Фоновое изображение

Рис. 52. Вид сцены после текстурирования столешницы и подключения фонового


изображения

Для создания зеркального отражения активируйте присвоенный верхней части столешницы


подматериал типа Multi/Sub-Object и добавьте к нему карту Flat Mirror на канале Reflection,
отрегулируйте счетчик воздействия карты так, чтобы отражение выглядело достаточно
реально (рис. 53). Проведите рендеринг и увидите, что на плоской поверхности столешницы
появится близкое к естественному зеркальное отражение стоящих на ней объектов (рис. 54).

319
Рис. 53. Настройка параметров отражающего подматериала столешницы

Рис. 54. Вид сцены с зеркальным отражением

Стоит заметить, что разного рода отражения можно имитировать и иным способом — при
помощи нестандартного материала Raytrace (не стоит путать с подключением карты Raytrace
на канале Reflection). Возможностей в плане настройки различных параметров отражения
(равно как и преломления) у материала Raytrace намного больше, а результат нередко
оказывается лучше благодаря большей естественности отражения. Но визуализация сцен с его
применением занимает больше времени, поэтому материал Raytrace разумнее выбирать
только для наиболее важных с точки зрения естественности отображения объектов сцены, а
для остальных применять материал Standard с картой на канале Reflection. Для примера
воспользуемся созданной выше сценой и заменим в ней подматериал, используемый для
текстурирования верхней части столешницы, со Standard на Raytrace. Возможные параметры
320
настройки материала Raytrace приведены на рис. 55, а результат визуализации сцены — на
рис. 56.

Рис. 55. Настройка параметров материала Raytrace

Рис. 56. Рюмка и стакан на зеркальной поверхности


опробуем усложнить задачу и создать отражение на елочном шаре. В качестве основы
возьмем созданный ранее шар с металлическим креплением, только присвоим ему совершенно
другой материал — по замыслу шар должен быть стеклянным и при этом практически
непрозрачным. Возможные параметры такого материала приведены на рис. 57 (обратите
внимание, что текстурная карта изначально присутствует только на канале Opacity), а
исходный вид сцены — на рис. 58.
321
Рис. 57. Исходные параметры материала для шара

Рис. 58. Стеклянный шар без отражения

На шаре необходимо имитировать два вида отражений: первое будет создавать фон, а
второе — металлическое крепление шара. Поэтому установите на канале Reflection
многокомпонентную карту Mix, которая позволяет назначать разные материалы одной и той
же поверхности одновременно (рис. 59). В качестве первого материала выберите карту
322
Raytrace, которая обеспечит естественное отражение крепления шара, — не забудьте
установить переключатель в блоке Background на черный цвет, иначе в отражении будет
фигурировать не только крепление, но и фон (рис. 60). В качестве второго материала укажите
фоновое изображение и в свитке Coordinates отрегулируйте значение параметра Blur Offset.
Кроме того, необходимо переключить карту с режима Texture на Environ Mapping
(поскольку речь идет о фоновом изображении, а не о текстуре объекта) и в его
раскрывающемся списке установить вариант Spherical Environment, так как карта должна
быть наложена на сферическую поверхность (рис. 61). Уменьшите значение счетчика влияния
текстурной карты Amount примерно до 50 и визуализируйте сцену (рис. 62).

Рис. 59. Параметры настройки карты Mix

Рис. 60. Настройка параметров в свитке Raytracer Parameters

323
Рис. 61. Настройка параметров свитка Coordinates

Рис. 62. Стеклянный шар с отражениями

ГРЯЗНЫЙ СТАКАН

обавление специально подготовленных карт непрозрачности — очень простой прием для


виртуального превращения полупрозрачных объектов (стекол окон, стаканов и т.п.) из чистых
в грязные. Рассмотрим это на примере обычного (и пока чистого) стеклянного стакана,
созданного с применением карты на канале Reflection (рис. 63 и 64). Откройте Photoshop, на
черном фоне создайте новое изображение и кисточкой нарисуйте несколько грязных пятен
серого цвета, при необходимости размойте изображение и сохраните его в файле (рис. 65).
Переключитесь в 3D Studio Max и активируйте в редакторе Material Editor материал,
задействованный при текстурировании стакана. Для его превращения из чистого в грязный
подключите созданное изображение в качестве карты на канале Opacity и отрегулируйте
значение активности карты. Сложность в том, что на канале Opacity уже подключена карта
Falloff, отказываться от которой не входит в наши планы. Поэтому в стадии редактирования
материала Falloff щелкните на одноименной кнопке, находящейся сразу под областью слотов,

324
и вместо карты Falloff установите карту Mix, утвердительно ответив на вопрос программы о
том, следует ли сохранить старую карту Falloff в качестве первой из карт составной карты
Mix. Подключите второй картой в составе многокомпонентной карты Mix созданное в
Photoshop изображение (рис. 66), а затем несколько уменьшите степень непрозрачности карты
на канале Opacity. Окончательный вид настроек материала для грязного стакана представлен
на рис. 67, а возможный результат рендеринга — на рис. 68.

Рис. 63. Чистый стакан

Рис. 64. Исходный вид свитка Maps

325
Рис. 65. Карта для канала Opacity

Рис. 66. Параметры настройки карты Mix

Рис. 67. Свиток Maps

326
Рис. 68. Грязный стакан

REFRACTION

сли посмотреть сквозь стеклянную вазу, увеличительное стекло или стакан воды, то
сцена за объектом окажется искаженной — это происходит из-за преломления лучей света при
прохождении их через любой в той или иной мере прозрачный объект. Данное явление
называют рефракцией. Имитировать рефрацию в 3D Studio Max можно двумя способами:
через подключение карт (как правило, Refract/Reflect или Raytrace) на канале Refraction
(Преломление) или путем включения соответствующих настроек для нестандартного
материала Raytrace.
Стоит иметь в виду, что подключение и активация карты Refraction изменяет подход к
визуализации непрозрачности — параметры Opacity и Opacity Falloff, равно как и карта
Opacity (в случае ее наличия в материале), полностью игнорируются, хотя Opacity Type
продолжает учитываться. А при установке значения счетчика активности карты Refraction в
100% будут игнорироваться и карты Diffuse и Ambient. Обратите внимание на рис. 69, где
очень четко просматривается, как влияет подключение карты Refraction на другие параметры
визуализации, а на третьем слева изображении при установке карты Refraction со значением
Amount в 100% какое-либо влияние цветов Diffuse и Ambient вообще не прослеживается.

327
Рис. 69. Визуализация объектов при отсутствии карты Refraction (первое и второе
изображения) и при ее подключении (третье и четвертое изображения)

Степень искажения поверхности при рефракции для разных поверхностей различна и


определяется коэффициентом преломления Index Of Refraction (для краткости его часто
называют IOR), регулируемым через свиток Extended Parameters (Расширенные параметры
— рис. 70). Если данный коэффициент равен 1 (коэффициент преломления воздуха), то
объект, находящийся за прозрачной поверхностью, не искажается. По умолчанию в программе
значение IOR равно 1,5 (коэффициент преломления стекла), и при имитации отличных от
стекла поверхностей (а нередко и для стекла, поскольку стекло также бывает разное: IOR
стекла колеблется в интервале от 1,5 для прозрачного до 1,7-1,8 для матового) значение
коэффициента нужно корректировать. Например, IOR воды равен 1,333; бриллианта — 2,419;
жемчуга — 1,52-1,69 и т.д.

Рис. 70. Свиток Extended Parameters

СТАКАН С КАРАНДАШОМ И РЮМКА С КУСОЧКАМИ ЛЬДА

ля эксперимента возьмите созданную ранее сцену с прозрачными стаканом и рюмкой


(рис. 71 и 72). Активируйте материал, использованный для текстурирования стакана и рюмки,
и дополнительно подключите на канале Refraction карту Raytrace с параметрами как на рис.
73. Проведите рендреринг и увидите, что сцена за стеклянными объектами стала казаться
искаженной, но одновременно и более реалистичной (рис. 74).

328
Рис. 71. Исходная сцена (без преломления)

Рис. 72. Параметры настройки материала для имитации стекла (без эффекта
преломления)

329
Рис. 73. Параметры настройки материала для имитации стекла (с эффектом
преломления)

Рис. 74. Вид сцены после добавления преломления для стеклянных поверхностей

Немного усложним сцену — создайте имитацию карандаша путем лофтинга


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

330
Рис. 75. Вид сцены в проекции front после добавления карандаша и льда

Рис. 76. Стакан с карандашом и рюмка с кусочками льда

SELF-ILLUMINATION

войство Self-Illumination (Самосвечение) обеспечивает создание иллюзии освещения


объекта изнутри или самостоятельного его свечения. Это осуществляется за счет снижения
влияния параметра Ambient (вплоть до его полного устранения) при установке максимально
возможного значения Self-Illumination, когда на поверхности полностью отсутствуют тени и
везде, кроме бликов, используется рассеянный цвет. Данный эффект применяется при
создании как реальных самосветящихся объектов (телевизоров, проекционных экранов, ламп и
т.п.), так и разнообразных искусственных, например светящегося рекламного текста.
Самосветящиеся объекты могут создаваться как при помощи настройки параметра Self-
Illumination, так и путем подключения текстурной карты на одноименном канале, в случае
активности которого соответствующий базовый параметр игнорируется. В качестве карт на
данном канале применяются изображения в градациях серого цвета, так как при его работе
331
учитывается только яркостная составляющая, а не цвет. Как правило, подключение карт на
канале Self-Illumination позволяет более тонко управлять областями свечения, изменяя
степень освещения в зависимости от зоны, и применяется при создании обычных светящихся
или светящихся гравированных (на стекле, пластике и т.д.) надписей.

ГРАВИРОВАННАЯ НАДПИСЬ

ля примера проведем простой эксперимент по созданию гравированного на стеклянной


поверхности (обрамленной при помощи деревянной рамки) текста. Для начала создайте
прямоугольный сплайн, увеличьте его толщину, например, до 6 единиц и включите режим
визуализации сплайнов, активизировав панель Modify и в свитке Rendring (Рендеринг)
установив флажок Renderable (Визуализируемый). Присвойте данному объекту произвольный
материал, имитирующий деревянную текстуру. Это будет импровизированная рамка.
Подключите подходящее фоновое изображение. Затем создайте стекло — в данном качестве
может выступать, например, обычный параллелепипед с малым значением параметра Height.
Присвойте ему подходящий стеклянный материал, а затем отрегулируйте его положение в
соответствии с положением рамки. Создайте текстовый сплайн, определите его положение
так, чтобы казалось, что надпись вырезана на стеклянной поверхности, и присвойте тексту тот
же самый стеклянный материал, что был у стекла. Визуализируйте сцену — созданная
надпись окажется видна, но слабо и особого впечатления производить не будет (рис. 77).
Сделайте копию стеклянного материала, укажите для копии другое имя и подключите
дополнительно на канале Self-Illumination карту — это может быть одна из градиентных карт
или специально подготовленное Bitmap-изображение. В данном случае была установлена
Bitmap-карта (рис. 78 и 79), а после рендеринга был получен представленный на рис. 80
результат, где надпись более отчетлива и отличается различной яркостью в разных областях.

Рис. 77. Гравированная надпись без свечения

332
Рис. 78. Растровая карта

Рис. 79. Окончательный вид свитка Maps для стеклянного материала, используемого для
текста

Рис. 80. Гравированная надпись со свечением

333
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 11. ОСНОВЫ
ПРОЕЦИРОВАНИЯ МАТЕРИАЛОВ
Светлана Шляхтина
Параметрическое проецирование
Применение модификатора UVW Map
Проецирование на уровне объекта
Бутылка с этикеткой
Проецирование на уровне подобъектов
Флакон с крышкой и этикеткой
Плитка шоколада с гравировкой
Стена сложной конструкции
Головка для накидного гаечного ключа

ак мы уже выяснили, на внешний вид получаемого материала влияет множество


параметров, в том числе параметры свитка Maps (Текстурные карты), содержащего список
каналов оптических свойств материала, любому из которых можно назначить текстурную
карту. Однако для того, чтобы объект выглядел естественно, недостаточно выбрать и
настроить текстурную карту — необходимо также правильно проецировать ее на поверхность
объекта, то есть задать координаты наложения текстур (mapping coordinates). Они определяют,
по какому принципу текстура должна проецироваться на объект, и тем самым обеспечивают
ее правильную визуализацию. Удачное проецирование текстуры позволяет показать игру
цвета и фактуру материала (их практически невозможно передать за счет геометрии) и
повышает естественность представленных на сцене объектов, неверное наложение текстур,
наоборот, может испортить впечатление.
Под проецированием карт (Mapping) понимают определение положения и ориентации
текстурной карты на объекте, ее масштаб, особенности повторения и т.п. Без проецирования
данные параметры наложения текстурной карты задаются по умолчанию, и совсем
необязательно, что они будут наилучшими. Исключением являются примитивы и объекты,
полученные при использовании некоторых техник моделирования (лофтинг, выдавливание,
вращение и т.д.), для которых правильное наложение любых текстурных карт определяется
автоматически с учетом их геометрии. Кроме того, не требуется проводить проецирование для
трехмерных процедурных карт 3D Maps (например, для карт Noise и Marble), автоматически
налагаемых с учетом осевой симметрии и в случае установки текстурных карт для каналов
Reflection (Отражение) и Refraction (Преломление) благодаря применению в данных каналах
особой системы картографии.
Основной задачей проецирования текстурных карт на поверхность объектов является
присвоение объектам текстурных координат. Текстурные карты, так же как и сами объекты,
описываются координатами, только для этой цели используются не координаты X, Y и Z, а
соответствующим им координаты U, V и W. Последние, в отличие от X, Y и Z, являются
неявными, то есть не определяют точное положение текстур в пространстве, а лишь задают
пропорции для их отображения. Координаты U и V пересекаются в центре текстурной карты и
определяют центр вращения (рис. 1), а координата W изменяет проекцию отображения
текстуры на 90°.

334
Рис. 1. Ориентация UV-координат

Текстурные координаты могут быть присвоены объекту несколькими способами. Самое


простое — сгенерировать их автоматически, что обеспечивается включением параметра
объекта Generate Mapping Coordinates (Генерировать координаты наложения текстуры).
Однако это возможно только для примитивов и объектов, полученных с применением
модификаторов Extrude, Lathe и Bevel (для них координатная привязка включена по
умолчанию), а также объектов, созданных путем лофтинга (для них координаты
проецирования генерируются автоматически, на основании осевой геометрии), — это так
называемое параметрическое проецирование. Оно очень удобно, поскольку при минимуме
усилий обеспечивает корректное отображение текстуры, но возможности управления
наложением текстуры при параметрическом проецировании весьма скромны. На практике
параметрическим проецированием, как правило, не удается обойтись по многим причинам.
Во-первых, параметрические текстурные координаты могут генерироваться далеко не для всех
объектов — например модели, построенные методом полигонального моделирования (что на
практике используется очень часто), так не оттекстурировать. Во-вторых, данный метод
присвоения текстурных координат не позволяет применять разные параметры наложения
одной и той же карты для различных объектов или частей одного и того же объекта. В итоге
для текстурирования, по сути, одним и тем же материалом простейшей модели, состоящей из
нескольких текстур подобъектов, требующих разного подхода к наложению, потребуется
создавать соответствующее число материалов, что на порядок усложнит сцену, потребует
существенно больших ресурсов оперативной памяти для визуализации и немалого
дополнительного места на диске. В-третьих, при параметрическом проецировании все
элементы модели, включая второстепенные, никак не задействованные в анимации, должны
быть построены геометрически, что приводит к еще большему усложнению моделей и требует
дополнительных компьютерных ресурсов. В то же время альтернативные варианты
проецирования, помимо более точного управления процессом наложения текстурных карт,
позволяют упрощать геометрическую структуру моделей, часть элементов которых (не
важных с точки зрения анимации) можно просто нарисовать, а не создавать в виде
подобъектов.
Одним из альтернативных (и более простым в использовании) способов присвоения
текстурных координат является применение модификатора UVW Map (UWV-карта). С его
помощью несложно создать координаты наложения текстур для объектов, которые не могут
их генерировать самостоятельно, и осуществить более точную настройку наложения карт, а
именно — применять разные типы проецирования для различных подобъектов модели с более
детальной настройкой выбранного типа через особые параметры и/или с помощью гизмо
(gizmo) модификатора UVW Map. Данный метод оптимален при использовании готовых
текстурных карт, однако его применение может оказаться недостаточным при слишком
сложных для текстурирования моделях (например, с множеством закругленных поверхностей,
переходящих друг в друга через сглаженные ребра). Кроме того, данный метод, как правило,
не позволяет создавать модели, раскрашенные вручную.

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

ПАРАМЕТРИЧЕСКОЕ ПРОЕЦИРОВАНИЕ

ля примитивов параметрические текстурные координаты генерируются автоматически


— благодаря тому, что флажок Generate Mapping Coordinates (Генерировать координаты
наложения текстуры) включается по умолчанию, что и обеспечивает корректную
визуализацию текстуры (рис. 2). Все остальные типы объектов, теоретически допускающих
использование параметрических координат (редактируемых сплайнов, объектов вращения,
выдавливания и пр.), создаются при отключении данного флажка (рис. 3). Поэтому у них для
правильного отображения текстур на панели Modify включается возможность
автоматического генерирования координат наложения карты при присвоении материала с
наложенными текстурными картами (рис. 4), либо применяются другие методы наложения
текстурных координат.

Рис. 2. Шар и соответствующая ему панель Modify (флажок Generate Mapping Coordinates
включен)

336
Рис. 3. Спиралевидный сплайн и соответствующая ему панель Modify (флажок Generate
Mapping Coordinates выключен)

Рис. 4. Спиралевидный сплайн и соответствующая ему панель Modify (флажок Generate


Mapping Coordinates включен)

337
Управление наложением текстурной карты при параметрическом проецировании
осуществляется через свиток Coordinates (Координаты) данной карты, где можно
регулировать такие параметры, как смещение (Offset), повторяемость (Tiling) и угол
наложения (Angle). Рассмотрим данный вариант проецирования на примере работы с тремя
примитивами: шаром, цилиндром и кубом (рис. 5). Выделите все три объекта и откройте окно
редактора материалов, щелкнув на клавише M.

Рис. 5. Исходные примитивы

Выделите первый слот, откройте свиток Maps (Текстурные карты) и установите на канале
Diffuse Bitmap-карту, выбрав в качестве нее произвольный графический файл, назначьте
созданный материал всем трем объектам и проведите рендеринг (рис. 6). Видно, что
наложение материала прошло корректно благодаря встроенному параметрическому
проецированию. В этом можно убедиться, выделив любой из примитивов и открыв панель
Modify, — флажок Generate Mapping Coords (Генерировать координатную привязку)
окажется включенным (рис. 7).

Рис. 6. Вид объектов после присвоения материала с текстурной картой

338
Рис. 7. Шар в режиме редактирования с включенной координатной привязкой

Чтобы сориентироваться в отношении возможностей управления наложением текстурной


карты в окне редактора материалов, откройте свиток Coordinates и установите значения
параметров U Offset и V Offset равными 0,25 (рис. 8) — это приведет к смещению положения
текстуры на 25% вправо и на 25% вверх относительно предыдущей позиции (рис. 9).
Установите спиннер параметра Angle для всех трех текстурных координат в 45° — на всех
объектах изменится ориентация текстурной карты (рис. 10). Откажитесь от всех только что
сделанных изменений и включите флажок Mirror для координаты V — на каждой
поверхности объектов, помимо исходной текстуры, появится ее зеркальная копия (рис. 11). А
если увеличить значение параметра Tiling, то вырастет и число повторений текстурной карты
на каждой поверхности объекта, что иногда приводит к получению интересных текстурных
поверхностей (рис. 12 и 13).

339
Рис. 8. Изменение положения текстурной карты в свитке Coordinates

Рис. 9. Вид объектов после смещения текстурной карты

Рис. 10. Результат изменения ориентации текстурной карты

340
Рис. 11. Вид объектов после включения режима формирования зеркального отражения
текстурной карты

Рис. 12. Параметры настройки положения и вида карты в свитке Coordinates

Рис. 13. Вид объектов после изменения параметров свитка Coordinates

ПРИМЕНЕНИЕ МОДИФИКАТОРА UVW MAP

оздание текстурных координат посредством назначения объекту модификатора UVW


Map (UVW-карта) на практике используется очень часто. Оно незаменимо, когда разные
подобъекты требуют различных методов проецирования. Данный модификатор выбирается из
общего списка модификаторов панели Modify (рис. 14) и может применяться как ко всему
объекту целиком, так и к его отдельным подобъектам (например, к разным граням) и
позволяет не только использовать для выделенных областей различные предусмотренные
341
типы проецирования, но и вручную настраивать особенности выбранного типа под
конкретную модель.

Рис. 14. Добавление модификатора UVW Map к выделенному объекту

Всего предусмотрено семь типов проецирования текстурных карт (рис. 15):

 Planar (Планарный) — производится по нормали к поверхности и применяется к


любым плоскостям и подобным им объектам, часто служит основой для построения
более сложного проецирования;
 Cylindrical (Цилиндрический) — предназначен для объектов, имеющих
цилиндрическую форму (вазы, бутылки, ножки стола и пр.), и при включенном флажке
Сар (Срез) может дополнительно осуществлять проецирование карты на верхний и
нижний торцы поверхности. Данный тип проецирования обеспечивает оборачивание
текстуры вокруг цилиндрической поверхности с образованием шва на стыке
противоположных сторон текстуры. Разные варианты цилиндрического проецирования
(с учетом и без учета торцов цилиндра), а также появление характерного для данного
типа проецирования шва отражено на рис. 16, где у левого цилиндра проецирование
торцов включено, у правого — выключено, а на среднем продемонстрировано наличие
шва;
 Spherical (Сферический) — применим к объектам, форма которых близка к форме
шара, и реализуется путем оборачивания текстуры вокруг сферы с формированием шва
от одного полюса к другому и деформацией текстуры у полюсов. Обратите внимание
342
на рис. 17, где обоим шарам присвоен один и тот же материал со сферическим типом
проецирования, при этом на левом шаре шва не видно, а на правом, который является
полной копией левого, но повернут противоположной стороной, шов хорошо заметен;
 Shrink-Wrap (Обернутый) — предназначен для объектов, имеющих близкую к
сферической форму, и обеспечивает оборачивание текстуры вокруг сферы наподобие
косынки, что приводит (в сравнении с типом Spherical) к меньшей степени деформации
текстуры у полюсов, но зато к большей — в районе экватора;
 Box (Кубический) — используется для объектов, имеющих близкую к параллелепипеду
форму, и обеспечивает присвоение текстуры для каждой из шести сторон куба по
отдельности;
 Face (Граневый) — реализуется путем наложения текстуры для каждой грани в
отдельности и применяется чаще всего в отношении узорчатых текстур;
 XYZ to UVW (Координаты объекта в мировые) — предназначен для проецирования
бесконечных текстурных карт.

Рис. 15. Примеры объектов, имеющих разные типы проецирования

343
Рис. 16. Текстура и цилиндры с материалом на ее основе и цилиндрическим типом
проецирования

Рис. 17. Текстура и шары с материалом на ее основе и сферическим типом проецирования

При поиске оптимального типа проецирования для конкретного объекта, как правило,
следует отдавать предпочтение тому типу, форма гизмо которого близка к форме объекта, так
как это обычно позволяет минимизировать или даже полностью избежать деформации
текстуры. Однако далеко не всегда можно с точностью сказать, какой тип проецирования
окажется лучше, ведь на практике форма отдельных объектов модели лишь с большой
натяжкой может быть приближена к строго геометрической. Поэтому прежде чем принимать
344
решение, стоит поэкспериментировать с разными типами проецирования и оценить, при каком
из них степень деформации текстуры наименее заметна. Более того, если в сцене имеется
несколько однотипных объектов, то совсем необязательно, что оптимальным для них будет
один и тот же тип проецирования — возможны ситуации, когда один объект смотрится лучше,
например, при цилиндрическом типе проецирования, а другой — при планарном. Наиболее
распространенными являются типы Planar, Cylindrical, Spherical и Box, остальные
применяются значительно реже.
Попробуем последовательно установить модификатор UVW Map к каждому из объектов
рабочей сцены. Сначала восстановите все исходные параметры наложения текстурной карты в
свитке Coordinates. Выделите первый объект сцены и для назначения ему модификатора
выберите в списке модификаторов панели Modify строку UVW Map, аналогичную операцию
последовательно выполните в отношении двух других объектов. После данных действий
внешний вид текстур в объектах изменится (рис. 18), а в стеке у каждого из объектов появятся
новые модификаторы. К сожалению, можно констатировать, что если изначально (то есть при
параметрическом проецировании) текстура на объекты налагалась корректно, то сейчас до
корректности далеко. Дело в том, что по умолчанию при добавлении модификатора UVW
Map устанавливается тип проецирования Planar (Планарный), неприемлемый для шара,
цилиндра и куба. Чтобы исправить ситуацию, выделите шар и смените для него в разделе
Mapping свитка Parameters вариант Planar на Spherical (рис. 19). Точно так же измените тип
проецирования у цилиндра на цилиндрический, не забыв включить флажок Сар (Срез) для
текстурирования торцов, а у куба — на кубический.

Рис. 18. Результат назначения объектам модификатора UVW Map

345
Рис. 19. Установка сферического типа проецирования

После изменения типов проецирования все три объекта будут выглядеть точно так же, как и
при параметрическом проецировании, поэтому на первый взгляд кажется, что никаких
преимуществ применение UVW-карт не дает. На самом деле это совсем не так. Во-первых, мы
имели дело с примитивами, для которых нужные координаты проецирования текстурных карт
устанавливаются по умолчанию. Во-вторых, даже в случае примитивов использование UVW-
карт открывает больше возможностей для управления наложением текстур. Так, с помощью
настройки значений счетчиков Length (Длина), Width (Ширина) и Height (Высота) можно
определить размеры налагаемой текстуры, параметры U-V-W Tile (U-V-W Мозаика) позволят
задавать число повторений текстуры по каждой из осей, а включение/выключение флажков
Flip (Перевернуть) обеспечит зеркальное отображение.
Кроме того, в стеке объектов появляется модификатор UVW Mapping, имеющий гизмо
(Gizmo), — рис. 20. Гизмо показывает, как текстура проецируется на объект, и определяет
границы, до которых простирается текстурная карта материала, при этом вид гизмо зависит от
типа проецирования (рис. 21). Поэтому управлять особенностями проецирования карты можно
и через гизмо. Например, перемещая его, можно смещать текстурную карту вдоль осей (рис.
22) примерно с тем же результатом, что обеспечивает коррекция параметров материала U
Offset и V Offset в свитке Coordinates. Масштабирование гизмо приводит к
увеличению/уменьшению масштаба текстуры (рис. 23), а вращение позволяет изменять тип
проекции и выявлять цилиндрические и сферические завихрения.

346
Рис. 20. Наличие гизмо у модификатора UVW Mapping

Рис. 21. Вид гизмо для сферического, цилиндрического и кубического типов проецирования

Рис. 22. Перемещение гизмо

347
Рис. 23. Масштабирование гизмо

Чтобы разобраться с нюансами управления текстурой через гизмо попробуем вначале


превратить куб в параллелепипед небольшой толщины (рис. 24), а затем добиться, чтобы
используемая при текстурировании фотография размещалась в центре его верхней плоскости
для создания иллюзии снимка в рамке. Вначале переключитесь в редактор материалов и в
свитке Coordinates отключите повторяемость текстуры, убрав флажки в параметрах Tile (рис.
25). Выделите объект, перейдите на панель Modify и в стеке модификаторов щелкните на
плюсе возле названия модификатора UVW Mapping, что приведет к переключению в режим
управления гизмо. Активируйте инструмент Select and Non-uniform Scale и вручную
измените размеры снимка так, чтобы он занимал большую часть плоскости параллелепипеда.
При необходимости скорректируйте положение текстуры в центре плоскости инструментом
Select and Move (рис. 26). Чтобы отобразить текстуру по оси U, включите флажок Flip,
находящийся справа от поля U Tile, и дополнительно разверните гизмо параллельно оси X,
щелкнув на переключателе X. По окончании переместите гизмо вверх по оси X (рис. 27) для
того, чтобы снимок отображался лишь на верхней грани параллелепипеда и не был виден на
всех остальных. В случае если в ходе масштабирования вам приходилось увеличивать размер
гизмо (что автоматически привело к значительным искажениям текстуры), как было и в нашем
случае, то по окончании экспериментов лучше заменить в свитке Bitmap Parameters
задействованный в качестве текстуры файл на изображение большего размера. Возможный
результат представлен на рис. 28.

348
Рис. 24. Параллелепипед с кубическим проецированием

Рис. 25. Отключение Tile-флажков

349
Рис. 26. Масштабирование гизмо

Рис. 27. Перемещение гизмо

Рис. 28. Фотография в рамке

Управлять ориентацией и точными размерами гизмо можно не только инструментами из


панели Mail Toolbar, но и через раздел Alignment (Выравнивание) свитка Parameters (рис.
350
29). Переключатели X, Y и Z обеспечивают поворот гизмо параллельно указанной оси,
команда Fit (Подгонка) максимально точно подгоняет текстуру к поверхности объекта,
Bitmap Fit (Подгонка по изображению) изменяет размер контейнера наложения в
соответствии с размером растрового изображения, Center (Центрировать) обеспечивает
выравнивание текстуры по центру объекта и т.д.

Рис. 29. Раздел Alignment свитка Parameters

ПРОЕЦИРОВАНИЕ НА УРОВНЕ ОБЪЕКТА

ак уже было отмечено, модификатор UVW Map (UVW Карта) может быть назначен как
ко всему объекту в целом, так и к его отдельным подобъектам, что осуществляется немного
по-разному, да и цели подобного воздействия не одинаковы. Так, проецирование через UVW-
карту на уровне объекта может применяться не только напрямую для назначения всему
объекту материала с текстурными картами, но и очень удобно, например, для снабжения
моделей разнообразными этикетками и наклейками.

Бутылка с этикеткой

опытаемся воспользоваться данным вариантом проецирования для создания бутылки с


этикеткой. Бутылку получим как тело вращения при помощи модификатора Lathe (рис. 30), а
роль этикетки будет играть изображение (рис. 31). Если просто присвоить бутылке текстуру
этикетки, то это приведет к распределению этикетки по всей поверхности объекта, что в
нашем случае неприемлемо (рис. 32). Поэтому добавим объекту модификатор UVW Map с
351
цилиндрическим типом проецирования (рис. 33). По умолчанию гизмо устанавливается
параллельным оси Z, в итоге этикетка оказалась расположенной под углом 90° — для ее
разворачивания щелкните на переключателе X. Нажмите кнопку Fit (Подгонка) для
максимального приближения проекции гизмо к поверхности бутылки (рис. 34).

Рис. 30. Бутылка без этикетки

352
Рис. 31. Этикетка

Рис. 32. Первый вариант текстурирования бутылки

Рис. 33. Установка цилиндрического типа проецирования

353
Рис. 34. Вид бутылки после изменения ориентации и размеров гизмо

Теперь нужно добиться, чтобы у этикетки были реальные размеры и положение. Вначале
переключитесь в свиток Coordinates редактора материалов и отключите повторяемость
текстуры, убрав флажки в параметрах Tile (рис. 35). Установите основной цвет материала на
канале Diffuse, а в свитке Bitmap Parameters отключите флажок Premultiplied Alpha (рис.
36), чтобы белая окантовка этикетки на бутылке не отображалась. Вернитесь на панель Modify
и в разделе Mapping отрегулируйте примерные размеры этикетки путем коррекции значений
параметров Length (Длина), Width (Ширина) и Height (Высота). Затем выделите гизмо,
щелкнув на плюсе рядом со строкой UVW Map на панели Modify, и инструментом Select and
Move переместите гизмо так, чтобы этикетка заняла на бутылке предназначенное ей место
(рис. 37). Чтобы этикетка оборачивалась не вокруг всей цилиндрической области бутылки, а
только вокруг ее определенной части, увеличьте значение параметра U Tile (в нашем примере
мы остановились на 2,2). По окончании измените основные параметры материала так, чтобы
он стал напоминать стекло — возможный окончательный вариант рендеринга сцены показан
на рис. 38.

Рис. 35. Отключение Tile-флажков

354
Рис. 36. Корректировка параметров свитка Bitmap Parameters

Рис. 37. Настройка параметров раздела Mapping свитка Parameters

355
Рис. 38. Стеклянная бутылка с этикеткой

ПРОЕЦИРОВАНИЕ НА УРОВНЕ ПОДОБЪЕКТОВ

бъекты состоят из множества подобъектов, и, как правило, обойтись одним вариантом


настроек проецирования при их текстурировании не удается. Приходится применять разные
подходы для различных подобъектов, что может быть вызвано как необходимостью
использования нескольких текстурных карт (или одной и той же, но с какими-то нюансами),
так и особенностями геометрии модели. Первое обычно реализуется путем назначения
предварительно разбитому на выделенные области с уникальными ID-номерами объекту
многокомпонентного материала Multi/Sub-Object с последующим добавлением и настройкой
модификатора UVW Map (возможно, с предварительным добавлением модификатора Mesh
Select). Хотя в некоторых случаях можно обойтись и обычными материалами, назначая их и
проецируя на выбранные области через UVW-карты. Если же необходимость проецирования
вызвана геометрией, то в таком случае чаще всего проецирование представляет собой весьма
длительный процесс многократного повторения трех операций: добавление модификатора
Mesh Select, выделение подобъектов, назначение и настройка UVW-карты. Познакомимся с
демонстрирующими данный подход примерами на практике.

Флакон с крышкой и этикеткой

начале рассмотрим ситуацию, когда нескольким элементам объекта требуется назначить


различные текстуры, на примере модели флакона (например, для крема) с крышкой и
этикеткой (флакон и крышка образуют один объект). Согласно замыслу крышка должна быть
текстурирована двумя материалами: один используется для верхней поверхности крышки, а
другой — для всей остальной ее части. Флакон также должен состоять из двух материалов:
первый потребуется для текстурирования самого флакона, а второй — для размещения на нем
этикетки. Вначале создайте произвольный флакон вместе с крышкой как тело вращения
модификатором Lathe (рис. 39), а в качестве этикетки возьмите, например, рис. 40.

356
Рис. 39. Флакон

Рис. 40. Этикетка

Учитывая, что объекту придется назначать несколько материалов, потребуется разбить его
на несколько выделенных областей в соответствии с принципом текстурирования. Поэтому
конвертируйте объект к типу Editable Poly, выделив флакон и выбрав из контекстного меню
команду Convert to=>Convert to Editable Poly (Конвертировать=>Конвертировать в режим
редактирования полисетки). Перейдите в режим редактирования полигонов. Выделите
полигоны самого флакона, исключив те, на которых планируется поместить этикетку, и
присвойте данной выделенной области имя. Уникальный номер ID в данном случае
присваивать нет необходимости, так как по умолчанию ID равный 1 автоматически
присваивается всем полигонам (рис. 41). Аналогичным образом выделите полигоны,
отводимые под этикетку, также назначьте им имя и установите ID равный 2 (рис. 42). Точно
так же создайте две выделенные области для крышки с ID = 3 и ID = 4 (рис. 43 и 44). Не стоит
пренебрегать подобным именованием выделенных областей, так как данная операция в
дальнейшем позволит выделять нужные зоны полигонов одним кликом.

357
Рис. 41. Создание 1-й выделенной зоны (ID = 1)

Рис. 42. Создание 2-й выделенной зоны (ID = 2)

358
Рис. 43. Создание 3-й выделенной зоны (ID = 3)

Рис. 44. Создание 4-й выделенной зоны (ID = 4)

Создайте в редакторе материалов материал Multi/Sub-Object с четырьмя подматериалами. В


качестве первого подматериала подготовьте подходящий стеклянный материал, на второй
назначьте на канале Diffuse bitmap-текстуру, указав в качестве изображения файл с этикеткой
и не забыв отключить в свитке Coordinates Tile-флажки. Третий и четвертый материалы
лучше сделать под пластик. Возможный вариант настройки материалов представлен на рис.
45. Назначьте полученный материал объекту и после рендеринга увидите примерно такое
изображение, как представлено на рис. 46, из которого видно, что этикетка размещена на
флаконе совсем не так, как это необходимо. Выделите область полигонов с этикеткой и
добавьте модификатор UVW Map с цилиндрическим типом проецирования, разверните гизмо
параллельно оси X. Отрегулируйте размеры этикетки путем коррекции значений параметров
Length, Width и Height. Выделите гизмо, щелкнув на плюсе рядом со строкой UVW Map
панели Modify, и инструментом Select and Move переместите его так, чтобы этикетка
оказалась в центре флакона. Увеличьте значение параметра U Tile так, чтобы этикетка
полностью заняла отведенную для этого область флакона (рис. 47). Возможно, что результат
ваших действий приведет к получению примерно такого флакона, как показан на рис. 48.

359
Рис. 45. Окно редактора материалов с созданным материалом Multi/Sub-Object

Рис. 46. Первый вариант текстурирования флакона

360
Рис. 47. Настройка UVW Map проецирования

Рис. 48. Флакон с крышкой и этикеткой

361
Плитка шоколада с гравировкой

теперь посмотрим, как возможность установки текстурных координат облегчает


создание плитки шоколада с делениями для разлома, которые должна украшать гравировка.
Создайте обычный куб с параметрами как на рис. 49. Выделите объект, конвертируйте его в
режим работы с полигонами и перейдите в режим редактирования полигонов. Выделите
верхние грани и примените к ним операцию Bevel, настроив параметры в соответствии с рис.
50. Не снимая выделения, примените к граням операцию Extrude с параметрами как на рис.
51, а затем — вновь Bevel при уже использованных ранее значениях. В итоге объект будет
разбит на отдельные фрагменты и действительно станет напоминать плитку шоколада (рис.
52).

Рис. 49. Исходный куб

Рис. 50. Настройка параметров операции Bevel


362
Рис. 51. Настройка параметров операции Extrude

Рис. 52. Плитка шоколада

Теперь на каждой из маленьких плиточек нужно создать гравировку — попробуем вырезать


надпись с рамкой, представленную на рис. 53. Однако вначале для удобства работы данную
надпись будем просто накладывать. Поэтому создайте новый материал и установите рисунок с
гравировочным изображением на канале Diffuse. Выделите верхние полигоны (только те, на
которых должна быть гравировка) и назначьте им созданный материал — пока результат
будет весьма далек от желаемого (рис. 54). Видно, что надпись распределяется на всю
выделенную область, в то время как нам необходимо, чтобы она появилась на каждом
фрагменте шоколадки. Исправить ситуацию очень просто: не снимая выделения, создайте
модификатор UVW Map и измените планарный тип проецирования на граневый (Face) — рис.
363
55, что и приведет к нужному варианту отображения текстуры. После этого вернитесь в
редактор материалов и перетащите текстурную карту с канала Diffuse на канал Bump с
обменом текстур (Swap), увеличьте значение в поле Amount (Количество) примерно до 200 —
надпись превратится в гравированную (рис. 56). Теперь останется лишь установить
«шоколадный» цвет на канале Duffuse, а затем для инвертированного выделения (Edit=>Select
Invert — Правка=>Выделить инверсию) создать и назначить новый материал с точно таким
же «шоколадным» цветом. Возможный результат показан на рис. 57.

Рис. 53. Изображение для гравировки

Рис. 54. Плитка после назначения материала

364
Рис. 55. Результат установки граневого проецирования

Рис. 56. Появление гравировки

365
Рис. 57. Плитка шоколада с гравировкой

Стена сложной конструкции

еперь поэкспериментируем с текстурированием объекта со сложной геометрией. Условно


к таким объектам можно отнести любые (внешне даже самые простые) объекты, к которым
нельзя применить только один из типов проецирования (планарный, цилиндрический,
кубический и пр.). В качестве подобного объекта возьмем стену, полученную путем
сплайнового моделирования. Для начала создайте примерно такой же набор сплайнов, как на
рис. 58. Основная часть сплайнов получена при помощи инструмента Line (Линия), а
дугообразный фрагмент — инструмента Arc (Дуга), при этом каждый сплайновый фрагмент
представляет собой замкнутый сплайн. Объедините все сплайны в один составной сплайн и,
не снимая выделения, добавьте к сплайну модификатор Extrude (Выдавить), установив в поле
Amount (Количество) свитка Parameters (Параметры) подходящее значение (рис. 59).
Откройте редактор материалов и создайте новый материал с текстурой на канале Diffuse (рис.
60 и 61). Проведите рендеринг и увидите, что материал наложен некорректно (рис. 62).
Единственным фрагментом стены с нормальным проецированием будет ее перпендикулярный
фрагмент, а на всех остальных текстура в той или иной степени растянута. Стоит заметить, что
искажение текстуры всегда имеет место, если поверхности объекта не параллельны
плоскостям поверхностей гизмо.

Рис. 58. Исходный набор сплайнов


366
Рис. 59. Выдавливание стены

Рис. 60. Текстура для канала Diffuse

Рис. 61. Параметры настройки текстуры для канала Diffuse

367
Рис. 62. Стена с текстурой без проецирования

Попробуем исправить ситуацию. Для этого нужно разбить стену на отдельные


геометрические блоки и применить к ним разные настройки проецирования. Выделите стену и
назначьте ей модификатор Mesh Select, что позволит модифицировать объект на уровне
подобъектов. Внутри данного модификатора подсветите строку Polygon (Полигон), чтобы
перейти в режим редактирования на уровне полигонов, выделите все прямоугольные
фрагменты стены (за исключением перпендикулярного фрагмента, где текстура отображалась
нормально) и установите для них ID равным 2 (рис. 63). Добавьте модификатор UVW Map,
установите прямоугольный тип проецирования и при необходимости отрегулируйте размеры и
положение гизмо (рис. 64). По окончании визуализируйте сцену — на этот раз результат будет
несколько лучше (рис. 65). Выделите на панели Modify только что созданную строку UVW
Mapping и вновь добавьте модификатор Mesh Select. Перейдите в режим редактирования
полигонов, выделите дугообразный фрагмент стены и установите для его полигонов ID
равным 3 (рис. 66). Затем назначьте модификатор UVW Map с цилиндрическим типом
проецирования и включенным флажком Сар (Срез) для проецирования на торцы поверхности,
подрегулируйте настройки гизмо (в частности, потребуется увеличить значение параметра U
Tile, чтобы добиться того же размера кирпичей, что и на прямоугольных фрагментах стены) —
рис. 67. Обратите внимание на зеленую вертикальную полосу, которая появляется на уровне
выделения гизмо и обозначает место стыковки текстуры, — по возможности лучше повернуть
гизмо модификатора так, чтобы этот стык оказался в наиболее незаметной области модели,
например на ее задней стороне. Результат рендренинга стены после создания текстурных
координат показан на рис. 68.

368
Рис. 63. Выделение прямоугольных фрагментов стены

369
Рис. 64. Настройка гизмо для прямоугольных фрагментов стены

Рис. 65. Стена после создания текстурных координат для ее прямоугольных фрагментов

370
Рис. 66. Выделение дугообразного фрагмента стены

371
Рис. 67. Настройка гизмо для дугообразного фрагмента стены

Рис. 68. Стена после настройки текстурных координат

По окончании неплохо добиться эффекта рельефности поверхности, что несложно


осуществить путем подключения соответствующей черно-белой текстуры на канале Bump.
372
Для этого откройте исходную текстуру в Photoshop и залейте области, соответствующие
кирпичам, белым цветом, а все остальное пространство — черным, сохраните изображение в
формате JPG (рис. 69). Переключитесь в 3D Studio MAX и подключите данную карту на
канале Bump, увеличив значение счетчика влияния текстурной карты до 90. Добавьте
произвольный фон и визуализируйте сцену (рис. 70).

Рис. 69. Текстура для канала Bump

Рис. 70. Кирпичная стена

Головка для накидного гаечного ключа

ез проецирования искажение наложения текстуры может быть весьма значительным —


оно тем сильнее, чем сложнее геометрия модели и многочисленнее переходы одних
геометрических фрагментов в другие. Проводя проецирование подобных моделей, легко
ошибиться, поэтому данную операцию лучше проводить не на предназначенных для
оформления моделей текстурах, а на специальной клетчатой текстуре, созданной на базе
материала Checker. Дело в том, что при ее наложении сразу видно, какие участки отекстурены
правильно, а где имеются искажения (клеточки растянуты или сжаты). И лишь тогда, когда вы
убедитесь, что Checker-текстура наложена верно, можно заменить ее на любую другую.
Рассмотрим пример проецирования сложного в текструрировании объекта с применением
текстуры Checker. В качестве подопытной модели возьмем созданную нами в седьмом уроке
путем лофтинга и серии булевых операций головку для накидного гаечного ключа (рис. 71).
Создайте вначале клетчатый материал на базе Checker-текстуры с примерно такими
параметрами, как на рис. 72. После назначения материала объекту сразу будет видно, что
текстура ни на одном из фрагментов не наложена правильно (рис. 73).

373
Рис. 71. Исходный вид головки для накидного гаечного ключа

Рис. 72 Параметры настойки клетчатого материала

Рис. 73. Результат назначения клетчатого материала

Конвертируйте модель к типу Editable Poly, добавьте модификатор Mesh Select, перейдите
в режим редактирования полигонов и выделите область малого цилиндра (рис. 74). Назначьте
модификатор UVW Map с цилиндрическим типом проецирования и включенным флажком
374
Сар (Срез) для проецирования на торцы поверхности и отрегулируйте значения параметров U
Tile и V Tile так, чтобы материал действительно отображался клеточками, а не вытянутыми
полосками (рис. 75). Результат рендеринга представлен на рис. 76. Опять добавьте
модификатор Mesh Select, в режиме редактирования полигонов выделите большой цилиндр,
назначьте модификатор UVW Map с цилиндрическим типом проецирования и включенным
флажком Сар и подберите значения параметров U Tile и V Tile (рис. 77 и 78). Аналогичные
операции последовательно проведите для торца большого цилиндра (рис. 79), внутренней
полости модели (рис. 80) и торца малого цилиндра (рис. 81). Для всех трех областей нужно
установить планарный тип проецирования, изменив в каждом варианте значения параметров
U Tile и V Tile: в первом случае — U Tile = 1, V Tile = 1, во втором — U Tile = 0,8, V Tile =
0,8, в третьем — U Tile = 0,5, V Tile = 0,5. Естественно, приведенные значения условны и в
каждом конкретном случае будут своими, а руководствоваться нужно принципом
максимального приближения формы клеточек к квадратной (это позволит минимизировать
искажение текстуры в соответствующих областях). Возможно, в итоге оттекстурированная
клетчатым материалом модель будет напоминать представленную на рис. 82, а модель с уже
подобранным материалом — рис 83.

Рис. 74. Выделение малого цилиндра

375
Рис. 75. Настройка параметров проецирования для малого цилиндра

Рис. 76. Модель после проецирования малого цилиндра

376
Рис. 77. Настройка параметров проецирования для большого цилиндра

Рис. 78. Модель после проецирования большого цилиндра

377
Рис. 79. Выделение торца большого цилиндра

Рис. 80. Выделение внутренней полости

Рис. 81. Выделение торца малого цилиндра

378
Рис. 82. Головка для накидного гаечного ключа с клетчатой текстурой

Рис. 83. Головка для накидного гаечного ключа с произвольной текстурой

Стоит заметить, что при текстурировании моделей со сложной геометрией довольно часто
перед присвоением текстурных координат очередным подобъектам прибегают к операции
сжатия стека модификаторов. Для чего нужно вновь конвертировать модель к типу Editable
Poly или Editable Mesh — задействованные модификаторы в результате исчезают из стека, но
присвоенные текстурные координаты сохраняются вместе с геометрией. Данная операция, в
принципе, не обязательна, но благодаря ей стек модификаторов не раздувается до
бесконечности и в нем легче ориентироваться.

379
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 12. ОСНОВЫ
ОСВЕЩЕНИЯ СЦЕНЫ
Теоретические аспекты
Источник света Omni
Источник света Free Directional
Источник света Target Spot
Источник света Free Spot
Практические примеры настройки освещения сцены
Разноцветные колонны
Объемный текст с текстурной тенью
Светильник на стене
Освещенный домик

Освещение сцены требует не меньших усилий, чем ее моделирование, ведь в большинстве


случаев необходимо обеспечить реалистичный эффект. Это совсем не простая задача, ведь в
реальном мире источники света работают совсем не так, как в виртуальном. Например, свет не
отражается от поверхностей объектов — в итоге если в действительности единственная
лампочка может осветить целую комнату, включая ее скрытые от прямых лучей света области
(диффузное рассеивание), то в 3D Studio MAX такие области останутся абсолютно темными.
А это значит, что диффузное рассеивание света придется имитировать за счет
дополнительного освещения. И наоборот, виртуальные источники света можно настроить так,
что они будут не увеличивать, а уменьшать освещенность сцены, что в реальности в принципе
невозможно и т.п.
Правильно подобранное освещение является одним из наиболее существенных факторов
обеспечения реализма сцены при ее визуализации. Оно создает контрасты между объектами,
делает использованные материалы более яркими и выразительными и позволяет настраивать
тени объектов. Кроме того, освещение определяет общее настроение сцены — например
рассеянный свет создает эффект умиротворенности, тусклое освещение может вызвать страх,
мерцающий свет — ощущение тревоги и т.п. С некоторыми наиболее простыми приемами
настройки освещения мы ознакомимся сейчас, а более сложные аспекты работы с освещением
рассмотрим в одном из ближайших уроков.

ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ

Настройка освещения сцены предполагает создание в ней источников света и определение


их положения и параметров. Источники света (как и любые другие объекты сцены)
различаются по типам — каждый из них имеет собственные свойства и сферу применения.
Работа с источниками ведется параллельно с созданием объектов геометрии, однако
окончательная настройка их параметров осуществляется в процессе создания и назначения
материалов, поскольку освещение тесно связано с текстурированием и может влиять на
особенности отображения материалов, а также приводить к появлению теней. При создании
сцены ее объекты освещаются автоматически, однако с добавлением первого источника света
установленное по умолчанию освещение отменяется. При удалении всех созданных
источников сцена вновь освещается источниками света, используемыми по умолчанию.
К основным источникам света можно отнести следующие (рис. 1):

 Omni (Всенаправленный) — отбрасывает лучи равномерно во всех направлениях от


единственного точечного источника подобно лампочке без абажура;
 Target Spot (Нацеленный прожектор) и Free Spot (Свободный прожектор) —
распространяют лучи из точки в определенном направлении коническим потоком и
освещают область внутри конуса. Различие этих двух источников заключается в том,
380
что направление световых лучей в первом из них строго определено точкой цели
(Target), а второй источник такой точки цели не имеет и потому направление световых
лучей в нем может меняться при вращении источника;
 Target Directional (Нацеленный Прямой) и Free Directional (Свободный Прямой) —
распространяют лучи из плоскости параллельным потоком в определенном
направлении и освещают область внутри прямого или наклонного цилиндров. Данные
источники различаются между собой тем, что направление световых лучей в первом из
них имеет привязку-цель, а второй направлен свободно (направление отбрасываемых
им световых лучей изменяется при вращении источника).

Рис. 1. Особенности отбрасывания лучей основными источниками света

За создание источников света отвечает категория Lights (Источники света) панели Create
(Создать), при выборе которой становятся доступными все вышеописанные типы источников
(рис. 2). Технология их создания напоминает создание объектов геометрии. Нужно выбрать
тип источника и либо просто щелкнуть в точке его создания в одном из окон проекций (для
всех источников, кроме типов Target), либо перетащить мышь при нажатой левой кнопке,
указав таким образом не только местоположение источника, но и его Target-точку. Созданным
источникам (так же как и объектам геометрии) присваиваются имена: Omni01, Spot01 и т.п.,
381
которые лучше сразу заменять на более информативные. Любой источник света можно
перемещать, поворачивать и масштабировать на видовых экранах так же, как и все другие
стандартные объекты.

Рис. 2. Список доступных источников света

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

 General Parameters (Общие параметры) — позволяет изменять тип источника,


включать-отключать возможности генерирования падающих теней и исключать
отдельные объекты из сферы влияния источника, что актуально при имитации особых
световых эффектов (таких как вспышки) либо при выборочной засветке одного или
группы объектов;
 Intensity/Color/Attenuation (Интенсивность/Цвет/Ослабление) — предназначен для
контроля интенсивности, цвета и пространственного ослабления светового потока,
позволяет обеспечить неоднородность освещения, характерную для объектов реального
мира;
 Shadow Parameters (Параметры тени) и Shadow Map Parameters (Параметры карты
тени) — отвечают за характер генерирования теней. Они позволяют регулировать
четкость границы, изменять цвет тени, увеличивать/уменьшать расстояние от объекта
до тени, добавлять к карте теней текстурную карту, настраивать тени при внедрении
атмосферных эффектов, имитировать размытые тени в туманном освещении или четкие
тени, создаваемые ярким полуденным солнцем и т.д.;
 Advanced Effects (Расширенные эффекты) — позволяют управлять четкостью перехода
от освещенных источником участков объекта к неосвещенным, включать-отключать
блики на объекте от источника света, назначать источнику текстурную карту и т.д.

ИСТОЧНИК СВЕТА OMNI

Подготовьте простую сцену из двух объектов: плоскости и шара (рис. 3). Создайте источник
света типа Omni, открыв категорию Lights панели Create, щелкните на кнопке с названием
Omni, а затем укажите мышью в одном из окон проекций местоположение источника —
появится объект, по виду напоминающий восьмигранник, который представляет собой
созданный источник света. Инструментом Select and Move отрегулируйте положение
источника так, чтобы в проекции Front он находился справа от шара и был расположен
гораздо выше его, а затем (при выделенном источнике) в свитке General Parameters панели
Modify включите флажок Shadows для генерации теней (рис. 4). Проведите рендеринг — шар
окажется освещенным справа и будет отбрасывать тень (рис. 5). Попробуйте поперемещать
382
источник света вокруг шара и увидите, что в зависимости от положения источника будет
освещаться та или иная часть шара. По окончании эксперимента верните источник на
исходную позицию справа от шара.

Рис. 3. Исходная сцена

Рис. 4. Первоначальная настройка источника света Omni

383
Рис. 5. Шар с одним Omni-источником

Теперь научимся управлять интенсивностью света. Для этого при выделенном источнике
света активизируйте панель Modify и в свитке Intensity/Color/Attenuation увеличьте значение
параметра Multiplier (Коэффициент), например, до 2 — освещение сцены станет намного ярче
(рис. 6). В этом же свитке (в диалоговом окне Color Selector: Light Color, открываемом при
щелчке на поле, расположенном справа от параметра Multiplier) можно изменить цвет
световых лучей. Для примера попробуйте изменить устанавливаемый по умолчанию белый
цвет, например, на желтый — при визуализации сцена окажется освещенной «желтой
лампочкой» (рис. 7).

Рис. 6. Результат увеличения интенсивности источника

384
Рис. 7. Изменение вида сцены в результате смены цвета источника

Добавьте в сцену еще один Omni-источник и разместите его на проекции Front слева от
шара, но так, чтобы он оказался гораздо ниже первого источника (рис. 8). Уменьшите
интенсивность второго источника примерно до 0,7, а цвет у него оставьте белым — теперь
шар окажется освещенным уже с двух сторон (рис. 9).

Рис. 8. Добавление и настройка второго Omni-источника

385
Рис. 9. Шар с двумя Omni-источниками

ИСТОЧНИК СВЕТА FREE DIRECTIONAL

Удалите оба Omni-источника, что не приведет к затемнению сцены, поскольку вновь


включатся источники света, используемые по умолчанию. Создайте один источник света типа
Free Directional (для этого проще всего выбрать данный тип источника и щелкнуть в центре
шара на проекции Top — тогда источник сразу будет направлен на шар). Затем нужным
образом переместите его инструментом Select and Move и подкорректируйте его угол наклона
инструментом Select and Rotate (рис. 10). Если провести рендеринг, то окажется, что шар
освещается вместе с фрагментом плоскости, причем достаточно интенсивно, другая же часть
плоскости вообще не видна (рис. 11). Получается, что яркость источника слишком велика, а
вот зона охвата светового потока явно недостаточна. Ситуацию несложно изменить. Вначале
разберемся, от каких параметров зависит зона охвата светового потока. Регулируя значения
параметров Hotspot/Beam (определяет размер светового конуса для внутреннего, предельно
насыщенного луча) и Falloff/Field (устанавливает размер внешних пределов угасания луча к
краям) в свитке Directional Parameters, можно изменять размеры появляющегося от светового
пучка светового пятна и характер его границы, которая может быть четкой или, наоборот,
размытой. По умолчанию пятно отличается четкой границей, что далеко от реальности.
Сделайте Hotspot/Beam равным 25, а Falloff/Field — 50, в результате пятно света станет
размытым (значения данных параметров в каждом конкретном случае окажутся свои, важно
лишь, чтобы значение первого параметра было примерно в два раза больше значения второго)
— рис. 12. И наоборот, если значения данных параметров близки, то граница будет четкой.
Что касается размеров светового пятна, то они напрямую зависят от значения параметра
Hotspot/Beam — чем оно выше, тем размер пятна больше. При желании в этом свитке можно
также менять форму сечения светового конуса (а значит, и форму светового пятна) с круглой
(Circle) на прямоугольную (Rectangle). При выборе последней появляется возможность
регулировать соотношения сторон светового прямоугольника параметром Aspect.

386
Рис. 10. Установка источника Free Directional

Рис. 11. Сцена с одним источником Free Directional

387
Рис. 12. Результат корректировки параметров размытости светового пятна

Теперь расширьте границы освещения так, чтобы внутри светового конуса оказался не
только шар, но и большая часть плоскости, и не забудьте, что значения параметров
Hotspot/Beam и Falloff/Field должны достаточно сильно различаться, чтобы снижение
освещенности к краям плоскости осуществлялось постепенно. Уменьшите интенсивность
света (Multiplier) примерно до 0,6 и включите флажок Shadows для генерации теней — сцена
окажется освещенной более естественно, хотя уровень освещения будет недостаточным (рис.
13). Чтобы увеличить уровень освещенности, попробуйте создать два дополнительных
источника света (рис. 14). Для первого (задача которого — создать общее освещение сцены)
выберите тип Omni, желтый цвет и интенсивность порядка 0,8-0,9. Назначение второго —
обеспечить эффект вторичного освещения, возникающего за счет отражения падающего света
от светлых поверхностей (в данном случае плоскости). В нашем примере такой эффект должен
проявиться на нижней поверхности шара в виде некоего цветного блика. Чтобы имитировать
подобный эффект, установите под плоскость слабый цветной источник света, не
отбрасывающий тень, — подойдет, например, источник типа Free Directional. В нашем случае
для него установлен сходный с оттенком плоскости цвет, интенсивность которого равна
примерно 1,1, а размер таков, чтобы плоскость полностью оказалась внутри границ
внутреннего светового конуса Hotspot/Beam. Окончательный вид сцены представлен на рис.
15.

388
Рис. 13. Результат изменения размеров светового пятна и коррекции интенсивности
излучения

Рис. 14. Установка дополнительных источников света

389
Рис. 15. Сцена с тремя источниками

ИСТОЧНИК СВЕТА TARGET SPOT

Создайте сцену, установив на плоскость шар, цилиндр и куб и назначив для плоскости
материал на основе мраморной текстуры (рис. 16). Перед созданием нового источника света
предварительно уменьшите масштаб сцены, чтобы поместить источник на достаточно
большом расстоянии от ее объектов. Активируйте в категории Lights источник типа Target
Spot, переключитесь на проекцию Front, установите указатель мыши в левую верхнюю часть
данного окна, щелкните левой кнопкой мыши в данной точке и, не отпуская мышь, направьте
ее к объектам — будет создан нацеленный прожектор (рис. 17). Если сразу же провести
рендеринг, то результат получится весьма далеким от желаемого (рис. 18): освещаться будет
плоскость под объектами, а сами объекты практически не будут видны.

Рис. 16. Исходная сцена

390
Рис. 17. Создание источника света Target Spot

Рис. 18. Начальное освещение сцены источником Target Spot

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


зрителю стороны объектов. Как было отмечено выше, нацеленные источники света
отличаются от свободных наличием цели (Target) — пустого объекта, на который направлена
ось пучка лучей источника света. Изменение особенностей освещения объектов подобным
источником возможно как путем воздействия на сам источник, так и на его объект-пустышку.
Например, при перемещении объекта-пустышки источник света автоматически меняет свою
ориентацию, но при этом будет продолжать оказываться нацеленным на пустой объект.
Попробуйте, попеременно воздействуя инструментом Select and Move на источник и на
объект-пустышку, расположить источник так, чтобы освещенными оказались грани объектов,
размещенные на переднем плане (рис. 19). Визуализируйте сцену (рис. 20).

391
Рис. 19. Корректировка положения источника Target Spot

Рис. 20. Изменение освещенности объектов в результате изменения положения источника

В свитке General Parameters увеличьте интенсивность источника, задав параметр


Multiplier равным 1,25, и установите флажок Shadows — сцена станет ярче и объекты теперь
даже будут отбрасывать тени, правда слишком темные (рис. 21). Поэтому откройте свиток
Shadow Parameters (Параметры тени) и уменьшите плотность тени, установив счетчик Dens
(Плотность) равным 0,5 — тени станут выглядеть более естественно (рис. 22). При желании в
этом свитке также можно поменять цвет тени в поле Color (рис. 23) или сделать так, чтобы
цвет тени формировался с учетом цвета источника — для этого в меню Shadow Parameters
потребуется включить флажок Light Affects Shadow Color (рис. 24).

392
Рис. 21. Вид сцены с нереалистично темными тенями

Рис. 22. Сцена с менее плотными тенями

Рис. 23. Результат корректировки цвета тени


393
Рис. 24. Сцена с тенями, формирующимися путем смешивания их базового цвета с цветом
источника (цвет источника был изменен)

И напоследок для улучшения внешнего вида сцены попробуйте добавить в нее еще два
источника света: Omni-источник желтого цвета с интенсивностью порядка 0,3-0,5 для
создания общего светового фона и источник типа Target Spot розового цвета с
интенсивностью порядка 2 для имитации эффекта вторичного освещения (рис. 25). Кроме
того, назначьте плоскости новый материал типа Raytrace и подключите к нему уже
использованную текстуру, стараясь создать имитацию полированного мрамора.
Окончательный вид визуализированной сцены представлен на рис. 26.

Рис. 25. Настройка дополнительных источников

394
Рис. 26. Сцена с тремя источниками

ИСТОЧНИК СВЕТА FREE SPOT

Свободный прожектор Free Spot отличается от только что рассмотренного источника Free
Directional тем, что его лучи расходятся не параллельным пучком, а коническим, подобно
свету реальных прожекторов, театральных софитов, карманных фонариков и т.п. Попробуем
создать три таких источника, чтобы осветить плоскость с торусом (рис. 27) примерно так, как
ее могли бы осветить разноцветные театральные софиты. Вначале установите слабый Omni-
источник для общего освещения сцены (рис. 28). Затем добавьте первый свободный
прожектор, например с лучами синего цвета и небольшими световыми конусами (в данном
случае параметр Hotspot/Beam равен 10, а Falloff/Field —20) — рис. 29. Удобнее всего
создавать прожектор в проекции Top, щелкая прямо по объекту, на который он должен быть
направлен. В итоге визуализированная сцена станет напоминать рис. 30. Точно таким же
образом создайте еще два цветных прожектора (красный и зеленый) с теми же самыми
параметрами, а затем отрегулируйте положение всех трех прожекторов в окнах проекций,
например так, как показано на рис. 31. Установите для каждого из источников флажок
Shadows для генерации теней и визуализируйте сцену (рис. 32). Поскольку тени выглядят
слишком черными, уменьшите их плотность (Dens) в свитке Shadow Parameters примерно до
0,3-0,4 (рис. 33).

395
Рис. 27. Исходная сцена

Рис. 28. Добавление источника света Omni

Рис. 29. Установка синего прожектора


396
Рис. 30. Вид сцены с синим прожектором

Рис. 31. Настройка положения прожекторов

397
Рис. 32. Вид сцены с тремя прожекторами

Рис. 33. Результат снижения плотности теней

И напоследок попробуем воспользоваться интересной возможностью назначения


прожектору текстурной карты Projector Map (Проецируемая карта), что позволяет либо
совмещать отображение светового пятна с изображением произвольного изображения (если
задействована, например, обычная фотография), либо видоизменять определенным образом
границу светового пятна (если использовано черно-белое изображение, играющее роль маски).
Мы применим второй вариант и назначим прожекторам текстуры, показанные на рис. 34, 35 и
36 соответственно, — сделать это нужно в свитке Advanced Effects (рис. 37). Возможный
результат назначения текстурных карт показан на рис. 38, для достижения которого торусу
дополнительно был присвоен новый материал, имитирующий пластик.

398
Рис. 34. Первая текстура

Рис. 35. Вторая текстура

Рис. 36. Третья текстура

399
Рис. 37. Назначение текстурной карты прожектору

Рис. 38. Сцена с фигурными цветными прожекторами

ПРАКТИЧЕСКИЕ ПРИМЕРЫ НАСТРОЙКИ ОСВЕЩЕНИЯ СЦЕНЫ

РАЗНОЦВЕТНЫЕ КОЛОННЫ

Подготовьте сцену из куба и двух цилиндров. Куб конвертируйте в режим работы с


полигонами и удалите у него верхнюю и две передние боковые грани так, чтобы оставшееся
пространство можно было использовать для имитации стен и пола некоторого помещения.
Цилиндры разместите на левой и правой границах сцены. Подберите для объектов
произвольные материалы, не забыв при этом, что у материала куба в базовых параметрах
должен быть включен флажок 2-Sided (Двусторонний) для визуализации не только лицевых,
но и обратных граней. Полученная в итоге сцена показана на рис. 39. Попытаемся так осветить
сцену, чтобы в целом она была видна полностью, каждая из колонн была дополнительно
освещена ярким цветным прожектором (цвета прожекторов должны быть контрастные), а на
область между колоннами падал цвет от обоих прожекторов.

400
Рис. 39. Исходная сцена

Добавьте два источника света типа Target Directional: первый из них создавайте в
проекции Left так, чтобы он был направлен на левую колонну (рис. 40), а второй — в
проекции Front в направлении правой колонны сцены (рис. 41). Очевидно, что после создания
источников вид сцены при рендеринге окажется далеким от желаемого: освещенными
окажутся лишь небольшие фрагменты колонны, а границы световых пятен будут
неестественно резкими (рис. 42).

Рис. 40. Создание первого источника Target Spot

401
Рис. 41. Создание второго источника Target Spot

Рис. 42. Вид сцены сразу после создания источников

Вначале изменим направление источников. Выделите в проекции Left первый источник и


инструментом Select and Move переместите сам источник (а не объект-пустышку) вверх так,
чтобы лучи стали падать на колонну примерно под углом 45°. Аналогичную операцию
осуществите в отношении второго источника, только работать уже нужно будет в проекции
Front. В проекции Top подкорректируйте положение источников так, чтобы они были
направлены действительно в центры колонн (рис. 43). Подберите в свитке Directional
Parameters значения параметров Hotspot/Beam Falloff/Field так, чтобы появляющиеся от
световых пучков световые пятна имели размытые границы — для достижения этого значение
первого параметра должно быть примерно в 2 раза больше значения второго. Проведите

402
рендеринг — размер световых пятен станет действительно размытым, и освещаться будут уже
достаточно близкие к желаемым фрагменты сцены (рис. 44).

Рис. 43. Корректировка положения и направления свечения источников

Рис. 44. Вид сцены после настройки источников

Пока временно отвлечемся от источников Target Spot и обеспечим общее освещение сцены
— для этого создайте Omni-источник со слабым (интенсивность порядка 0,5) голубоватым
цветом, который придаст сцене сумрачность (рис. 45). Изменившаяся сцена представлена на
рис. 46.

403
Рис. 45. Добавление источника света Omni

Рис. 46. Результат добавления Omni-источника

Согласно задуманному плану, световые пятна от источников Target Spot должны


пересекаться в центре освещаемого ими общего пространства — поэтому в данной области
световое пятно окажется ярче и будет более явно выражено. Для реализации плана
активируйте проекцию Top и перетащите объект-пустышку первого из источников внутрь
сцены, затем ту же операцию проведите для второго источника (рис. 47 и 48). По окончании
последовательно измените цвета источников Target Spot на контрастные (например, на
зеленый и красный). При необходимости еще подкорректируйте их положение, размеры
световых пятен и интенсивность источников, а также не забудьте включить флажки для
генерации теней. Возможный результат показан на рис. 49.

404
Рис. 47. Перемещение объектов-пустышек

Рис. 48. Результат перемещения объектов-пустышек

Рис. 49. Разноцветные колонны

405
ОБЪЕМНЫЙ ТЕКСТ С ТЕКСТУРНОЙ ТЕНЬЮ

Подготовьте сцену из трех объектов: двух плоскостей и объемного текста, полученного


путем лофтинга пути по текстовому сплайну (рис. 50). Создайте в проекции Left источник
типа Target Spot, расположив его в направлении текста (рис. 51). Пока добавление источника
света лишь ухудшило ситуацию, так как большая часть объектов стала невидимой (рис. 52).

Рис. 50. Начальный вид сцены

Рис. 51. Создание источника света Target Spot

406
Рис. 52. Визуализация сцены сразу после создания источника

Чтобы расширить зону освещения попробуем изменить параметры источника. Выберите


источник Spot01 и на панели Modify в области Spotlight Parameters измените форму
светового конуса на прямоугольную, щелкнув на опции Rectangle. Затем установите значения
для параметров Hotspot/Beam и Falloff/Field так, чтобы текст оказался полностью внутри
границы внутреннего светового конуса, а плоскости — внутри внешнего светового конуса
(рис. 53). Корректируя значения соответствующих параметров, обращайте внимание на
регулировку соотношения сторон светового прямоугольника параметром Aspect — в
противном случае одна из сторон прямоугольников может оказаться чрезмерно вытянутой. В
данном случае оптимальным оказалось значение Aspect равное 1,5. Проведите рендеринг —
полученный результат будет значительно лучше, так как теперь освещенными окажутся все
три объекта сцены (рис. 54).

Рис. 53. Настройка параметров источника света Target Spot

407
Рис. 54. Вид сцены после настройки параметров источника

Займемся тенями — вначале включите режим генерации теней, активировав флажок


Shadows в свитке General Parameters, а затем уменьшите плотность тени, установив счетчик
Dens (Плотность) в свитке Shadow Parameters равным 0,5, чтобы тени были не слишком
черными (рис. 55). А теперь попробуем сделать сцену более эффектной и заодно посмотреть,
как текстурная карта влияет на вид теней. Откройте редактор материалов, создайте новый
материал, установив на канале Diffuse текстурную карту, указанную на рис. 56, и назначьте
данный материал верхней плоскости — тень будет смотреться нереально, так как при ее
формировании текстурная карта не была учтена (рис. 57). Попробуйте установить данную
текстуру как bitmap-карту тени, щелкнув на кнопке None свитка Shadow Parameters и указав
соответствующий файл, — тень в сцене станет более естественной (рис. 58). Правда, для того
чтобы она была видна отчетливо, нам пришлось вновь увеличить плотность тени до 0,9. И
напоследок создайте общее освещение сцены, которое позволит осветить и теневые плоскости
объектов, — для этого добавьте на сцену дополнительный Omni-источник с желтым цветом
(что еще больше усилит теплую атмосферу, исходящую от снимка), установив его в проекции
Front немного выше источника Spot01 (рис. 59). Скорее всего, после добавления нового
источника интенсивность обоих источников придется подрегулировать — в нашем случае
больший эффект даст некоторое снижение интенсивности лучей источника Target Spot, равно
как и Omni-источника. Окончательный вид визуализированной сцены показан на рис. 60.

Рис. 55. Появление теней

408
Рис. 56. Изображение для текстурной карты

Рис. 57. Однотонная тень на bitmap-карте

409
Рис. 58. Текстурная тень на bitmap-карте

Рис. 59. Добавление источника света Omni

410
Рис. 60. Объемный текст с текстурной тенью

СВЕТИЛЬНИК НА СТЕНЕ

Попробуем смоделировать простой светильник-ночник, поместить его на стене и


имитировать освещение им ближайшего пространства комнаты, роль которой будет
выполнять куб с удаленными верхней и двумя передними гранями. Светильник создадим из
сплайнов: один из них станет основой для стеклянного плафона, а два других — основой
металлических конструкций крепления. И то и другое будем формировать сходным образом,
например в качестве исходного сплайна для светильника возьмем сплайн, представленный на
рис. 61, а затем создадим из него плафон обычным вращением. Для этого создайте вначале
дугу, преобразуйте ее в редактируемый сплайн, подкорректируйте форму, создайте копию
данного сплайна и немного ее переместите. Затем объедините оба сплайна (начальный сплайн
и его копию) в составной сплайн, соедините между собой начальные и конечные точки обоих
сплайнов и затем примените к полученному замкнутому сплайну модификатор Lathe.
Элементы крепления смоделируйте примерно так же — за исключением того, что вместо
вращения на последнем этапе примените выдавливание, установив модификатор Extrude.
Разместите созданные элементы так, чтобы получилась имитация светильника (рис. 62), при
желании добавьте произвольные декоративные элементы (в нашем примере были добавлены
два шара и два цилиндра к верхней части конструкции). Окончательный вариант светильника
приведен на рис. 63. Дополните сцену стенами и полом и расположите светильник на одной из
стен (рис. 64).

411
Рис. 61. Исходный сплайн для плафона

Рис. 62. Размещение элементов светильника

412
Рис. 63. Светильник

Рис. 64. Комната со светильником

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


добавления источника типа Omni, который поместите в самом верху комнаты (рис. 65 и 66).
Для имитации свечения лампочки светильника создайте в проекции Left источник типа Target
Spot с голубоватым светом, расположив его примерно под углом 45° (рис. 67). Проведя
рендеринг, вы увидите, что яркость источника явно чрезмерна, а световое пятно имеет
неестественно четкие границы (рис. 68). Поэтому уменьшите интенсивность света
приблизительно до 0,5, а затем отрегулируйте границы внутреннего и внешнего световых
конусов через параметры Hotspot/Beam и Falloff/Field так, чтобы размер внутреннего
светового конуса примерно соответствовал диаметру предполагаемой лампочки светильника,
а размер внешнего светового конуса был раза в три больше, поскольку рассеянный свет от
лампочки распространяется достаточно далеко. Кроме того, учитывая, что плафон сверху
закрыт (а значит, световые лучи вверх распространяться не будут), переместите источник
света немного ниже (рис. 69 и 70). По окончании назначьте всем элементам светильника
подходящие материалы, при необходимости окончательно подрегулируйте интенсивность
обоих источников и визуализируйте сцену — возможный результат показан на рис. 71.

413
Рис. 65. Добавление источника света Omni

Рис. 66. Вид сцены после установки Omni-источника

Рис. 67. Создание источника света Target Spot


414
Рис. 68. Визуализация сцены сразу после создания источника

Рис. 69. Настройка параметров источника света Target Spot

415
Рис. 70. Вид сцены после настройки параметров источника

Рис. 71. Светильник на стене

ОСВЕЩЕННЫЙ ДОМИК

Попробуем смоделировать домик с окошком и с помощью источников света создать эффект


освещения внутреннего пространства домика изнутри в вечернее время. Вначале подготовьте
стены дома, применив операцию Extrude к составному сплайну (рис. 72 и 73). Смоделируйте
проем для окна — для этого первым делом создайте примитив Box, высота и ширина которого
должны совпадать с предполагаемыми размерами проема, а толщина должна быть несколько
больше толщины стен, поместите его на месте проема и затем посредством булевой операции
вычитания получите проем (рис. 74 и 75). Перейдем к оконной раме — в проекции Front
прямо поверх проема создайте прямоугольный сплайн точно такого же размера, затем
дополните его еще тремя внутренними сплайнами (рис. 76) и объедините все сплайны окна в
один составной сплайн. По окончании превратите составной сплайн в оконный блок также при

416
помощи модификатора Extrude и поместите раму в оконный проем (рис. 77). Дополните
домик крышей, созданной из обычной пирамиды, и подложите под домик плоскость (рис. 78).

Рис. 72. Исходный сплайн для стен

Рис. 73. Стены дома

Рис. 74. Создание примитива Box на месте будущего проема


417
Рис. 75. Стена с проемом для окна

Рис. 76. Формирование набора сплайнов для оконной рамы

418
Рис. 77. Появление оконного блока

Рис. 78. Готовый домик

Перейдем к освещению. Вначале обеспечьте слабое общее освещение сцены за счет


внедрения над домиком Omni-источника (рис. 79), который немного осветит сцену (рис. 80).
Чтобы имитировать подобие вечернего освещения, создайте направленный прожектор,
находящийся далеко от объекта и имеющий слабую интенсивность свечения (рис. 81),
включите для него флажок Shadows для генерации теней и подкорректируйте размеры
светового пятна, чтобы добиться желаемого эффекта (рис. 82). Для имитации внутреннего
освещения домика создайте Omni-источник, который должен быть размещен на уровне
потолка комнаты внутри домика (рис. 83), при этом для достижения эффекта необходимо
увеличить его интенсивность примерно до 1,5-2 и сменить цвет источника на желтый,
характерный для электрического освещения. Возможный результат представлен на рис. 84.
Для улучшения внешнего вида сцены назначьте для ее объектов подходящие материалы,
окончательно откорректируйте яркости всех трех источников и их цветовые оттенки.
Обратите внимание на то, достаточна ли плотность тени и в зависимости от ситуации
уменьшите или увеличьте ее. При желании внедрите в сцену какие-то дополнительные
объекты. Возможно, что в конечном счете она будет напоминать представленную на рис. 85.

419
Рис. 79. Добавление источника света Omni

Рис. 80. Вид сцены после установки Omni-источника

Рис. 81. Создание источника света Target Spot

420
Рис. 82. Вид сцены после настройки параметров источника Target Spot

Рис. 83. Добавление источника света Omni

421
Рис. 84. Появление света, льющегося из окна домика

Рис. 85. Освещенный домик

422
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 13. ВВЕДЕНИЕ В
АНИМАЦИЮ
Базовые инструменты управления анимацией
Технология создания анимации на базе ключевых кадров
Создание анимации в режиме автоматической установки ключевых кадров
Создание анимации в режиме ручной установки ключевых кадров
Редактирование ключей
Практические примеры создания простых анимаций
Мигающий елочный шар
Открывающийся ящик
Катящийся по прямой торус
Катящийся по кругу шар

Нередко моделирование, текстурирование и освещение сцены представляют собой лишь


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

БАЗОВЫЕ ИНСТРУМЕНТЫ УПРАВЛЕНИЯ АНИМАЦИЕЙ

Для управления параметрами анимации предназначены специальные панели,


расположенные в нижней части программного окна, — панель управления, временная шкала
(Time Bar) и шкала треков (Track Bar) — рис. 1.

Рис. 1. Базовые панели для управления анимацией

Панель управления содержит кнопки для перехода с кадра на кадр,


воспроизведения/остановки анимации, определения режима ее воспроизведения и создания
ключей. Настройка режима воспроизведения анимации происходит в окне Time Configuration
(Конфигурация шкалы времени) — рис. 2, вызываемом щелчком по одноименной кнопке.
Здесь можно задать диапазон воспроизведения анимации и ее продолжительность (группа
423
Animation), а также скорость воспроизведения (группа PlayBack) и частоту кадров (группа
Frame Rate). Диапазон анимации устанавливает общее количество входящих в нее кадров и
вычисляется в зависимости от того, сколько секунд должна длиться анимация, при этом число
секунд нужно умножить на частоту кадров. Например, если анимация должна длиться 10
секунд, а частота кадров равна 24 кадрам в секунду, то диапазон анимации будет включать 240
кадров. Скорость воспроизведения позволяет установить способ воспроизведения анимации
— оптимальный вариант предполагает включение флажка Real Time (Режим реального
времени), при котором скорость воспроизведения соответствует установленной частоте
кадров. При недостатке компьютерных ресурсов (когда плавное движение отображается
рывками) данный флажок следует отключить. Частота кадров является одним из основных
параметров анимации, поскольку от нее напрямую зависит продолжительность и плавность
воспроизведения. По умолчанию в 3D Studio MAX установлен американский стандарт
телевизионного сигнала (NTSC), который обеспечивает воспроизведение с частотой 30 кадров
в секунду — это означает, что каждую секунду демонстрируются 30 кадров. При желании
возможно использование европейского стандарта PAL (25 кадров в секунду) и киностандарта
Film (24 кадра в секунду), а также пользовательского стандарта Custom, позволяющего
задавать собственную частоту воспроизведения.

Рис. 2. Окно Time Configuration

Временная шкала Time Bar позволяет перейти на нужный кадр и задать ключевые кадры
анимации — перемещая с помощью мыши ползунок таймера анимации, можно увидеть
движение объектов в сцене, а запустив проигрывание анимации, по положению ползунка
слайдера контролировать ее этапы. Для перехода к нужному кадру достаточно щелкнуть по
нему левой кнопкой мыши или перетащить ползунок — выбранный кадр будет выделен на
шкале треков голубым прямоугольником.
Шкала треков Track Bar предназначена для визуального отображения номера текущего
кадра и имеющихся в анимационном ролике ключей анимации, а также для выполнения
некоторых операций с ключами. При этом выделение одного ключа осуществляется щелчком
левой кнопки мыши, а нескольких ключей — путем удерживания клавиши Ctrl. Выделенные

424
ключи несложно перемещать по шкале треков обычным перетаскиванием или редактировать
через контекстное меню.
Более тонкая настройка анимации осуществляется в редакторе треков Track View
(Просмотр треков). Данный редактор может работать в двух режимах — как редактор кривых
Curve Editor либо как редактор дескрипторов Dope Sheet. Для открытия редактора треков в
нужном режиме выбирается соответствующая режиму команда из меню Graph Editor
(Редактор графов): Track View-Curve Editor или Track View-Dope Sheet. В окне редактора
кривых анимация отображается в виде так называемых анимационных кривых (animation
curves) с ключами в качестве узловых точек (рис. 3) — редактируя эти кривые, можно
управлять анимацией. Наиболее важными этапами управления анимацией через Curve Editor
является создание (кнопка Add Keys — Добавить ключи) и перемещение ключевых точек
(кнопка Move Keys — Переместить ключи), а также изменение формы кривой и типа ее
экстраполяции.

Рис. 3. Возможный вид окна Track View — Curve Editor

Форма кривой меняется путем перемещения имеющихся в ключевых точках касательных


(Set Tangents to Custom — переход в режим ручного редактирования положения
касательных) или настраивается автоматически с помощью следующих кнопок (рис. 4):

 Set Tangents to Auto — приводит к автоматическому сглаживанию кривой до и после


ключевой точки;
 Set Tangents to Fast — обеспечивает изменение параметра с ускорением в районе
точки ключа, что приводит к ускорению анимации;
 Set Tangents to Slow — задает изменение параметра с замедлением в районе точки
ключа, что влечет за собой замедление анимации;
 Set Tangents to Step — обеспечивает отсутствие изменений анимируемого параметра в
интервале между ключами и резкое изменение параметра при достижении ключевого
кадра, что приводит к скачкообразному движению;
 Set Tangents to Linear — устанавливает равномерное изменение анимируемого
параметра;
 Set Tangents to Smooth — обеспечивает плавное изменение анимируемого параметра в
районе ключевого кадра.

425
Рис. 4. Кнопки для управления формой кривой

Один из нижеследующих типов экстраполяции кривых выбирается при щелчке по кнопке


Parameter Curve Out-of-Range Types (рис. 5):

 Constant (Постоянный) — сохраняет значения анимирующего параметра вне диапазона


по первому и последнему ключам;
 Cycle (Циклический) — заставляет анимацию повторяться по циклу, определяемому в
пределах ее диапазона;
 Loop (Периодический) — обеспечивает плавное периодическое повторение анимации
за счет усреднения значений начала и конца диапазона;
 Ping-Pong (Циклически зеркальный) — повторяет анимацию, комбинируя прямое и
обратное направление ее развития;
 Linear (Линейный) — дополняет анимацию до и после диапазона по линейному закону;
 Relative Repeat (Относительно повторяемый) — обеспечивает плавное периодическое
повторение анимации за счет совмещения начального и конечного значений диапазона.

Рис. 5. Окно выбора типов экстраполяции кривых

В окне редактора дескрипторов (рис. 6) анимация представлена в виде листов дескрипторов,


на которых отображаются ключи (Keys) и диапазоны (Ranges) либо числовые значения
параметров, если трек не содержит анимации. Управлять анимацией в данном окне можно
посредством создания, редактирования, копирования и удаления ключей анимации,
назначения и настройки контроллеров анимации, создания и редактирования трека видимости
(Visibility Track) и т.д. Знакомиться с нюансами управления анимацией через редактор
дескрипторов мы будем в одном из следующих уроков.

426
Рис. 6. Возможный вид окна Track View — Dope Sheet

Помимо вышеназванных меню и окон, за работу с анимацией отвечают команды


Modifiers=>Animation Modifiers (Модификаторы=>Анимационные модификаторы) и
Animation (Анимация) из командного меню и вкладка Motion (Движение) на командной
панели Command Panel.

ТЕХНОЛОГИЯ СОЗДАНИЯ АНИМАЦИИ НА БАЗЕ КЛЮЧЕВЫХ КАДРОВ

Существует несколько различных способов анимации объектов сцены. Наиболее


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

427
Рис. 7. Условная схема перемещения объекта (позиции объекта, соответствующие
ключевым кадрам, выделены красным цветом)

Данная технология получения анимации предполагает, что нужно задать, как должен
выглядеть объект в том или ином кадре, то есть связать с определенным моментом времени
событие анимации. Затем следует определить данные кадры как ключевые (keyframes), что и
приведет к созданию для объекта ключей анимации, в которых будут зафиксированы
особенности его отображения в определенные моменты времени. Помимо ключевых в
анимации будут присутствовать и промежуточные кадры (in-betweens), которые формируются
программой автоматически и определяют изменение объекта между ключевыми позициями.
Суть технологии анимации на основе ключевых кадров заключается в том, что нужно
создать ключи анимации для крайних положений объекта (каждый ключ связан с
определенным моментом времени), предоставив программе возможность самостоятельно
рассчитать состояние объекта в промежуточных положениях. Рассмотрим данную технологию
на примере простых анимаций и параллельно обратим внимание на особенности создания
анимации в режимах автоматической и ручной установки ключевых кадров.

СОЗДАНИЕ АНИМАЦИИ В РЕЖИМЕ АВТОМАТИЧЕСКОЙ УСТАНОВКИ КЛЮЧЕВЫХ КАДРОВ

В качестве первого примера попробуем получить анимацию изменения масштаба обычного


шара, когда шар вначале будет увеличиваться в размерах до некой максимальной величины, а
затем так же плавно уменьшаться. Создайте новую сцену с шаром в центре. Задайте
требуемую частоту кадров (в нашем случае 24 кадра в секунду), щелкнув на кнопке Time
Configuration и установив для параметра Frame Rate (Кадровая частота) вариант Film.
Укажите диапазон анимации, введя требуемые значения в полях Start Time (Начало
анимации) и End Time (Конец анимации), — для примера будем считать, что анимация
должна длиться 3 секунды, а частота кадров равна 24 кадрам в секунду, поэтому в создаваемой
анимации должно быть 72 кадра — с 0-го по 71-й (рис. 8).

428
Рис. 8. Определение диапазона анимации

Попробуем в данном примере работать в режиме автоматической установки ключевых


кадров — в нем любое изменение параметров объекта автоматически приводит к созданию
ключа анимации. Для активации данного режима щелкните на кнопке Toggle Auto Key Mode
(Переключить в режим автоматического создания ключей), находящейся на панели
управления. Выделите шар и перетащите ползунок временной шкалы вправо на 30-й кадр.
Увеличьте масштаб шара, воспользовавшись инструментом Select and Uniform Scale. Это
приведет к появлению на шкале треков меток сразу двух ключей — в 0-м и 30-м кадрах,
первый из которых создается автоматически (рис. 9).

429
Рис. 9. Появление меток первых двух ключей

Переместите ползунок на последний кадр, уменьшите масштаб шара до первоначального и


отключите режим автоматического создания ключей, щелкнув на кнопке Toggle Auto Key
Mode. Перейдите в окно проекции Perspective, нажмите на панели управления кнопку Play
Animation (Проиграть анимацию) — она тут же превратится в кнопку Stop Animation, а
анимация начнет проигрываться. Для более удобного просмотра можно предварительно
развернуть окно проекции на весь экран, воспользовавшись кнопкой Min/Max Toggle
(Переключить во весь экран/возврат назад). Понаблюдайте за созданным шедевром и
остановите анимацию, щелкнув на кнопке Stop Animation.
Подобное воспроизведение анимации в окне проекции Perspective (Перспектива) дает лишь
примерное представление о том, как она будет выглядеть в действительности. Дело в том, что
3D Studio MAX каждый раз просчитывает то или иное изображение перед его показом, а
программа воспроизведения анимации проигрывает уже готовые изображения, а значит,
скорость воспроизведения (в зависимости от сцены и характеристик компьютера) может
немного или даже весьма существенно отличаться от действительной. Для просмотра
анимации в реальном времени необходимо создать файл эскиза анимации, воспользовавшись
командой Animation=>Make Preview (Анимация=>Создать Эскиз). Это приведет к
формированию множества моментальных снимков экрана (для каждого кадра формируется
свой снимок) с последующей их демонстрацией в окне установленного по умолчанию в
Windows проигрывателя. Попробуйте применить команду Animation=>Make Preview с
параметрами по умолчанию и увидите, что вначале анимация вновь будет воспроизводиться в
окне Perspective (только на этот раз данный процесс будет сопровождаться созданием
снимков), а затем откроется окно проигрывателя, где можно будет увидеть результат (рис.
10). Имейте в виду, что подобный просчет анимации требует немало времени, поэтому на
430
стадии отладки ролика разумнее не загружать сцену лишними деталями: скрыть те объекты,
которые не имеют значения для анимации, заменить объекты со сложной структурой более
простыми и т.п.

Рис. 10. Демонстрация анимации в окне Windows-проигрывателя

Полученную анимацию несложно сохранить. Откройте окно настройки параметров


визуализации Render Scene, применив команду Rendering=>Render, и перейдите на вкладку
Common Parameters. В группе параметров Time Output (Временной интервал) активируйте
переключатель Active Time Segment (Активный сегмент времени) и определите диапазон
анимации (рис. 11). В группе Render Output (Вывод визуализации) щелкните на кнопке Files
(Файлы) и укажите имя файла, формат расширения (AVI) и формат сжатия (рис. 12), а затем
щелкните на кнопке Render, что и приведет к формированию AVI-файла в указанной папке.

Рис. 11. Определение диапазона анимации

431
Рис. 12. Настройка параметров сохранения анимации

СОЗДАНИЕ АНИМАЦИИ В РЕЖИМЕ РУЧНОЙ УСТАНОВКИ КЛЮЧЕВЫХ КАДРОВ

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


заставив перемещаться обычный шар по криволинейной траектории, представленной на рис.
13, где красным цветом отмечены ключевые позиции перемещающегося объекта, а белым —
некоторые промежуточные. Создайте новую сцену с шаром и перейдите в режим работы с
одной проекцией Front. Щелкните на кнопке Time Configuration и укажите в качестве
диапазона анимации интервал с 0-го по 30-й кадр. Включите режим ручной установки
ключевых кадров, щелкнув на кнопке Toggle Set Key Mode (Переключить в режим ручного
создания ключей). Проверьте, чтобы ползунок временной шкалы стоял на 0-м кадре,
перетащите шар вверх и влево и создайте первый ключ анимации, щелкнув на кнопке Set Keys
(Установить ключ) — рис. 14. Обратите внимание на то, что при нажатии данной кнопки
фиксируются изменения только тех свойств, которые помечены галочками в окне Key Filters
(рис. 15).

432
Рис. 13. Траектория перемещения шара

Рис. 14. Вид сцены для 0-го кадра

Рис. 15. Окно Key Filters

Переключитесь на 6-й кадр, переместите шар в соответствии с задуманной траекторией (то


есть вниз и вправо) и опять же вручную создайте второй ключ (рис. 16). Активируйте 10-й

433
кадр, вновь переместите шар и создайте ключ (рис. 17) и т.д., пока не сформируете ключевые
кадры для всей траектории. Примерное положение всех ключевых позиций шара на проекции
Front представлено на рис. 18, где цифрами отмечены номера кадров, соответствующих
ключевым положениям. Выключите режим ручной установки ключевых кадров, щелкнув на
кнопке Toggle Set Key Mode, сохраните сцену и оцените полученную анимацию.

Рис. 16. Вид сцены для 6-го кадра

Рис. 17. Вид сцены для 10-го кадра

434
Рис. 18. Позиции шара для всех ключевых кадров

РЕДАКТИРОВАНИЕ КЛЮЧЕЙ

Если анимация не соответствует вашим ожиданиям, придется перейти к ее отладке.


Рассмотрим этот процесс на примере только что созданной анимации перемещения шарика по
криволинейной траектории. Определенные возможности для этого имеются в главном окне
программы. Например, несложно изменить положение объекта в ключевом кадре — для этого
достаточно активировать ключевой кадр, включить режим ручного создания ключей,
переместить объект, создать новый ключ анимации и щелкнуть на кнопке Toggle Set Key
Mode.
Кроме того, можно создать новые ключевые кадры. Попробуем, например,
подкорректировать первый этап движения шарика. В промежутке, охватывающем с 1-го по 6-
й кадры, шарик перемещается по прямой, а должен (в соответствии с физическими законами)
двигаться по параболе с широким основанием. Для достижения нужной траектории придется
отвести на указанный этап перемещения больше времени и создать еще несколько ключей.
Получается, что общее число кадров анимации нужно увеличить, кадры с 6-го по 30-й
перенести по временной шкале вперед и скорректировать позиции шара в добавленных
кадрах. Расширьте диапазон анимации до 36 кадров. На шкале треков при нажатой клавише
Ctrl выделите все ключи, стоящие в кадрах с 6-го по 30-й, и перетащите их на 12-й кадр.
Проиграйте анимацию и увидите, что после перемещения ключевых кадров программой
автоматически было отрегулировано положение шара в добавленных кадрах (рис. 19) и теперь
начальный промежуток шарик пробегает в более медленном темпе. На самом деле скорость
его не изменилась — просто за счет удвоения кадров увеличилось время, отведенное шарику
на прохождение начального этапа пути. Однако данные действия пока не привели к
желаемому изменению траектории на рассматриваемом участке (от прямолинейной к
параболической) — положение шарика в начальных кадрах необходимо скорректировать
вручную.

435
Рис. 19. Новое положение шара в 6-м кадре

Поэтому включите режим ручного создания ключей, активируйте 1-й кадр, переместите
шарик чуть вверх и вправо и создайте новый ключ анимации, щелкнув на кнопке Set Keys.
Аналогичную операцию выполните в отношении всех кадров со 2-го по 11-й, и при
проигрывании анимации вы увидите, что траектория стала ближе к желаемой, но отнюдь не
идеальной.
Как видите, корректировать ключи непосредственно в главном окне программы не всегда
удобно, поскольку траектории шарика мы не видим. Иное дело, если открыть редактор треков
Track View в режиме Curve Editor (команда Graph Editor=>Track View => Curve Editor —
Редактор графов => Просмотр треков => Редактор кривых), в котором отображаются
анимационные кривые вместе с ключами, представленными в виде явно выраженных точек,
лежащих на кривых (рис. 20). По оси X в окне кривых откладываются номера кадров, а по оси
Y — числовые значения ключей. Редактируя форму этих анимационных кривых, можно
управлять анимацией, например ускорять и замедлять движение объекта, так как в случае
перемещения увеличение крутизны наклона кривой приведет к ускорению движения, а более
пологая форма, наоборот, к его замедлению. Подобное редактирование осуществляется за счет
изменения значений ключей, а также посредством корректировки кривизны кривых. Отметим,
что окно Curve Editor разбито на две части: в левой находится дерево объектов и свойств
сцены и всех их параметров, поддерживающих анимацию, — в нем удобно выбирать
редактируемый параметр, а справа — окно кривых, в котором производится редактирование.

436
Рис. 20. Окно Curve Editor для анимации движения шарика

Убедитесь, что ползунок временной шкалы стоит на 1-м кадре. Запустите воспроизведение
анимации и понаблюдайте за окном Curve Editor при движении шарика — изначально
находившаяся слева вертикальная черта, отмечающая положение отображаемого кадра, начнет
перемещаться вдоль горизонтальной оси вправо, последовательно проходя все кадры
анимации.
Вернемся к ранее рассмотренной, но так до конца и не решенной проблеме движения
шарика по параболической траектории. Попробуем продолжить редактирование ключей, но
уже в окне Curve Editor. Щелкните в его левой части и у объекта Sphere 01 сделайте
выделенной только строку Z Pozition — останется одна анимационная кривая, отвечающая за
перемещение по оси Z. При нажатой клавише Ctrl выделите все анимационные ключи и
увидите, что в точках их размещения появились касательные (рис. 21). Внимательно
рассмотрите участок кривой, соответствующий первым 13 кадрам, — видно, что для более
плавного движения шарика желательно немного изменить кривизну кривой, переместив все
ключи на данном участке, за исключением ключа в 0-м кадре, немного вниз. На встроенной
панели инструментов редактора кривых выберите инструмент Move Keys (Переместить
ключи), выделите все нужные ключи, сформировав вокруг них габаритный контейнер, и
переместите их вниз примерно так, как показано на рис. 22. Второй ключ потребует более
точной индивидуальной настройки — щелкните на нем правой кнопкой мыши и в
открывшемся окне параметров введите его новое значение (рис. 23). А затем, для того чтобы
касательные ключа установились автоматически на основе кривизны участков кривой до и
после ключевой точки, щелкните на кнопке Set Tangents to Auto (Автоматическая установка
касательных) — рис. 24. Включите воспроизведение анимации и оцените результат.
Изменять ключи в редакторе кривых гораздо удобнее благодаря тому, что, в отличие от окна
проекций, здесь одновременно отображаются все ключи и соответствующие им положения
объекта — в итоге, меняя один ключ, можно сразу оценить, как изменится кривая (в частном
случае траектория движения) в целом.

437
Рис. 21. Появление касательных к ключам анимационных кривых

Рис. 22. Результат перемещения группы ключей

438
Рис. 23. Ввод значения 2-го ключа в окне параметров

Рис. 24. Окончательный вид анимационной кривой

ПРАКТИЧЕСКИЕ ПРИМЕРЫ СОЗДАНИЯ ПРОСТЫХ АНИМАЦИЙ

МИГАЮЩИЙ ЕЛОЧНЫЙ ШАР

Устанавливать ключи, а значит, и анимировать можно самые разные параметры, в частности


отвечающие за характер материала: Ambient Color, Diffuse Color, Specular Color, Opacity,
Specular Level и т.д. Попробуем анимировать цвет на каналах Diffuse Color и Ambient Color
на примере елочного шара, который можно создать из обычного шара, цилиндра и торуса (рис.
25). Выделите шар в режиме анимации с автоматическим созданием кадров, перетащите
ползунок временной шкалы на ее середину и откройте редактор материалов. В поле Diffuse
Color произвольным образом измените цвет присвоенного шару материала, например на
красный (рис. 26), что приведет сразу к созданию двух ключей для данного параметра — в 0 и
50-м кадрах. Обратите внимание, что параметры, имеющие ключи в конкретном кадре,
выделены в редакторе материалов красными уголочками (рис. 27).

439
Рис. 25. Исходный объект

Рис. 26. Создание ключа для промежуточного кадра

440
Рис. 27. Отображение свитка параметров с наличием ключей (слева) и отсутствием их
(справа)

Перейдите по временной шкале на последний кадр, вновь смените цвет в поле Diffuse Color
на исходный (в данном случае синий) — рис. 28. Щелкните на кнопке Toggle Auto Key Mode
для отключения режима автоматического создания ключей, запустите анимацию и увидите,
что шар станет плавно менять цвет с синего на красный, который затем будет вновь столь же
плавно переходить в синий.

Рис. 28. Создание ключа для последнего кадра

ОТКРЫВАЮЩИЙСЯ ЯЩИК

Как известно, такие преобразования объекта, как вращение и масштабирование, связаны с


положением его опорной точки (Pivot point), и при создании анимации для получения
441
нужного эффекта (открывающаяся дверь, перелистывающаяся страница и т.п.) опорную точку
нередко приходится перемещать. Рассмотрим такую ситуацию на примере
самооткрывающейся крышки ящика — роль ящика будет играть обычный куб, верхняя грань
которого и станет крышкой (рис. 29). Создайте куб, преобразуйте его в объект типа Editable
Poly при помощи команды Convert to=>Convert to Editable Poly
(Конвертировать=>Конвертировать в режим редактирования полисетки) из контекстного
меню, включите режим редактирования полигонов. Выделите верхнюю грань куба и
превратите ее в отдельный объект, щелкнув на кнопке Detach (Отсоединить). Попробуйте
повращать грань — видно, что она будет поворачиваться вокруг собственного
геометрического центра (рис. 30). По замыслу же (для создания иллюзии открывающейся
крышки) она должна поворачиваться относительно ребра, что может быть достигнуто только в
случае, если опорная точка будет находиться на соответствующем ребре. Перейдите в режим
редактирования опорных точек, щелкнув на закладке Hierarchy (Иерархия), а затем
последовательно на кнопках Pivot (Опора) и Affect Pivot Only (Работать только с опорной
точкой). В результате вид осей в видовых окнах изменится (рис. 31). Инструментом Select and
Move переместите опорную точку на ребро (рис. 32) и выйдите из режима редактирования
опорных точек, вновь щелкнув на кнопке Affect Pivot Only. Выделите грань, повращайте ее и
увидите, что теперь она вращается именно так, как нужно (рис. 33).

Рис. 29. Исходный куб

Рис. 30. Вращение грани при исходном положении опорной точки

442
Рис. 31. Вид осей в режиме редактирования опорных точек

Рис. 32. Новое положение опорной точки

Рис. 33. Вращение грани при новом положении опорной точки

Включите режим автоматического создания ключей, переключитесь в 25-й кадр, выделите


грань и поверните ее так, чтобы создавалась иллюзия немного приоткрытой крышки (рис. 34).
443
Активируйте 50-й кадр и увеличьте поворот грани (рис. 35), затем в 75-м кадре уменьшите
поворот грани (рис. 36), а в 100-м разместите грань в исходном (закрытом) положении (рис.
37). Выключите режим автоматического создания ключей, сохраните сцену, просмотрите
анимацию и при необходимости подкорректируйте углы поворота грани-крышки в 25, 50 и 75-
м кадрах.

Рис. 34. 25-й кадр

Рис. 35. 50-й кадр

444
Рис. 36. 75-й кадр

Рис. 37. 100-й кадр

КАТЯЩИЙСЯ ПО ПРЯМОЙ ТОРУС

Создайте новую сцену и разместите на ней плоскость и стоящий на ребре торус (рис. 38).
Попробуем заставить торус катиться по данной плоскости — это значит, что торус должен не
просто перемещаться, но параллельно с перемещением поворачиваться, чтобы создавалась
иллюзия его качения. Вначале разберемся с перемещением. Включите режим создания
анимации с автоматическим созданием ключей, задайте общее число кадров в анимации
равным 100 и проверьте, стоит ли ползунок временной шкалы на 1-м кадре. Выделите торус и
разместите его в начале плоскости (рис. 39). Активируйте последний кадр, переместите торус
в конец плоскости (рис. 40). Если сейчас запустить анимацию, то перемещаться торус будет, а
вот катиться нет, так как ключ для его вращения мы еще не создали. Поэтому, находясь на
последнем кадре и пока не отключая режима автоматического создания ключей, выделите
торус и поверните его по оси Y на 360° (рис. 41), что и приведет к созданию соответствующего
ключа. Щелкните на кнопке Toggle Auto Key Mode и попробуйте запустить анимацию, —
теперь торус действительно катится по плоскости, правда очень быстро.

445
Рис. 38. Исходная сцена

Рис. 39. Создание ключа для перемещения в начальном кадре

Рис. 40. Создание ключа для перемещения в последнем кадре

446
Рис. 41. Создание ключа для поворота в последнем кадре

Попробуем уменьшить скорость качения, увеличив общее число кадров анимации. Это
можно сделать разными способами, самое простое — отодвинуть последний кадр дальше по
временной шкале. Для этого вначале в окне Time Configuration увеличьте общее количество
кадров (например, до 300), а затем перетащите ключи из 100-го кадра в 300-й (рис. 42). Теперь
скорость качения торуса при воспроизведении анимации снизится в два раза и сразу станет
видно, что катится он не совсем естественно. При качении в отсутствие скольжения торус
должен при повороте вокруг своего центра одновременно пройти расстояние, равное длине
его внешней окружности, — мы же ничего подобного не учитывали и просто повернули торус
на 360° на последнем кадре. Попробуем исправить ошибку. В нашем случае внешний радиус
торуса равен 30, значит, длина его окружности составит 2 х Radius х , или 188,4. Теперь
оценим проходимое им расстояние. В 0-м кадре значение параметра Y Position равно –
104,257, в 300-м — 169,402 (данные значения можно увидеть в окне Track View-Curve Editor
— рис. 43), значит, общее расстояние составляет 273,659. Если поделить расстояние на длину
внешней окружности торуса, то получим, что торус должен повернуться вокруг своего центра
примерно 1,45 раза, то есть на 522° (360х1,45 = 522). Поэтому значение ключа Y Rotation
следует подкорректировать, что удобнее всего сделать в редакторе кривых. Откройте его,
найдите для торуса строку Y Rotation, выделите ключ в последнем кадре и введите для него
новое значение (рис. 44). Теперь качение торуса будет более естественным.

447
Рис. 42. Результат перемещения ключа

Рис. 43. Оценка значения ключа Y Position для 0-го кадра

448
Рис. 44. Корректировка значения ключа Y Rotation

КАТЯЩИЙСЯ ПО КРУГУ ШАР

Создайте новую сцену и разместите на ней плоскость, шар и окружность (рис. 45).
Попробуем заставить шар катиться по данной плоскости, но не по прямой, а по окружности,
которая и будет играть роль траектории. Выделите шар и примените к нему модификатор
деформации по траектории, открыв из меню Modifiers (Модификаторы) команду Animation
Modifiers=>Path Deform (WSM) (Анимационные модификаторы=>Деформация по
траектории (WSM)). В открывшемся свитке параметров модификатора щелкните на кнопке
Pick Path (Указать путь) и укажите окружность в одном из окон проекций. После этого
щелкните на кнопке Move to Path (Передвинуть на путь) — шар займет нужное положение на
траектории (рис. 46).

Рис. 45. Исходная сцена

449
Рис. 46. Результат передвижения шара по траектории

Включите режим создания анимации с автоматическим созданием ключей, передвиньте


ползунок таймера анимации в последний кадр и переместите шар по оси Z так, чтобы он
прошел по всей траектории и остановился в исходной точке. Это можно сделать либо вручную
(рис. 47), либо щелкнув правой кнопкой мыши на инструменте Select and Move и в
открывшемся окне задав нужное значение (его можно подобрать экспериментальным путем)
для параметра Offset:World — Z (рис. 48).

Рис. 47. Перемещение шара по траектории вручную

Рис. 48. Задание относительной координаты перемещения шара по оси Z


450
Выйдите из режима создания анимации, проиграйте ролик и сразу увидите, что шар
начинает двигаться, доходит до определенной точки, а потом продолжает движение совсем из
другой позиции. Это неудивительно, ведь вместо расчетов мы просто прикинули на глаз
примерную позицию шара в последнем кадре. В действительности следовало вспомнить, что
длина проходимой им траектории равна длине окружности (2 х Radius х , или 1257),
учитывая, что радиус окружности в нашем случае был равен 200. Теоретически данное
значение можно было изначально указать и в окне Move Transform Type-In (если бы оно
было посчитано), но можно и в редакторе кривых, однако исправлять его (что требуется в
данный момент) в любом случае придется через редактор кривых. Поэтому откройте его,
найдите для сферы (в нашем случае Sphere01) строку Z Position, выделите ключ, стоящий в
последнем кадре, и введите в поле ввода нужное значение (рис. 49).

Рис. 49. Изменение значения ключа Z Position

Проиграйте анимацию — теперь шар возобновляет движение в той точке, где закончился
предыдущий цикл. Однако бросается в глаза другая проблема: в начале траектории шар явно
ускоряет свое движение, а в конце замедляет — нам же требуется равномерное движение.
Поэтому при нажатой клавише Ctrl выделите обе ключевые точки и щелкните на кнопке Set
Tangents to Linear (Установка касательных для линейной анимации) — криволинейная
траектория превратится в прямолинейную (рис. 50).

451
Рис. 50. Корректировка вида касательных

Теперь движение шара станет действительно линейным — без ускорений и замедлений,


однако качением такое движение не назовешь, ведь шар перемещается, но не поворачивается
вокруг своей оси (для того чтобы четко увидеть отсутствие вращения, присвойте шару
клетчатую текстуру). Поэтому зададим шару еще и вращение по оси X. Откройте редактор
кривых, найдите для шара строку X Rotation, активизируйте кнопку Add Keys (Добавить
ключи) и дважды щелкните по пунктирной линии с небольшим смещением по ней. На линии
появятся две ключевые точки (рис. 51) — изначально местоположение их на кривой не имеет
значения, так как его все равно придется корректировать. Для корректировки активизируйте
инструмент Move Keys (Переместить ключи), выберите первую точку на кривой и в левом
поле ввода укажите значение 0 для номера кадра и значение 0 для величины поворота, так как
в начальном кадре шар поворачиваться пока не должен (рис. 52). Далее выберите вторую
точку и укажите для 75-го кадра (четверть временной шкалы) значение 360 (рис. 53) — это
будет означать, что за 75 кадров шар сделает полный оборот вокруг своей оси. При желании
можно более точно вычислить, за сколько кадров шар должен повернуться вокруг своей оси
(так же, как мы это делали в предыдущем примере), но сейчас ограничимся прикидочным
вариантом.

452
Рис. 51. Создание ключевых точек в редакторе кривых

Рис. 52. Ввод значения ключа для 0-го кадра

Рис. 53. Ввод значения ключа для 75-го кадра

Выделите обе ключевые точки и зациклите созданное движение — для этого кликните на
кнопке Param Curve Out-of-Range Types (Типы экстраполяции кривых) и установите вариант
Relative Repeat (Относительно повторяемый) — рис. 54. В результате вид кривой изменится
(рис. 55). И напоследок вновь выделите обе ключевые точки и щелкните на кнопке Set
Tangents to Linear, чтобы исключить ускорение и замедление в процессе вращения (рис. 56).
Запустите анимацию и убедитесь, что ожидаемый результат полностью достигнут и шар
действительно равномерно катится по окружности (рис. 57).

453
Рис. 54. Установка варианта Relative Repeat

Рис. 55. Вид кривой после смены типа экстраполяции

454
Рис. 56. Вид кривой после изменения варианта касательных

Рис. 57. Вид шара в отдельных кадрах анимации

455
3D STUDIO MAX: ПЕРВЫЕ ШАГИ. УРОК 14. КАМЕРЫ В
СЦЕНЕ
Теоретические аспекты
Управление камерами
Параметры настройки камер
Создание и настройка камеры
Примеры настройки камеры в статичных сценах
Выбор удачной точки обзора сцены с учетом глубины резкости
Интеграция 3D-объектов в фон
Анимация камер
Перемещение по прямолинейной траектории
Осмотр сцены
Слежение за движущимся объектом
Облет по криволинейной траектории

На практике чаще всего недостаточно просто смоделировать сцену с текстурированными


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

ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ

Расположение камеры определяет композицию финального изображения сцены,


подчеркивая главные и опуская второстепенные детали. Размещение камеры на уровне
происходящего в сцене действия создает у зрителя ощущение участия в сцене — данный
прием эффективен при создании анимаций, в ходе которых предполагается осмотр отдельных
элементов сцены с близкого расстояния. Размещение камеры высоко над сценой создает
ощущение отстраненности и позволяет наблюдать за сценой со стороны, поэтому
практикуется при отображении масштабных объектов или сцен с большим количеством
действующих персонажей. В случае расположения камеры у земли у зрителя создается
впечатление, что его окружают предметы гигантских размеров, — такой прием применяется
для визуального увеличения высоты персонажей.
Камера — это невизуализируемый объект, который отображает сцену с определенной точки
обзора. Теоретически выбрать нужную точку обзора можно вручную в окне проекции
Perspective, но это не очень удобно, к тому же при этом отсутствует возможность точной
регулировки параметров обзора.
В 3 D Studio MAX используются камеры двух типов (рис. 1):

 TargetCamera (Нацеленная камера) — состоит из двух элементов: самой камеры и


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

456
 FreeCamera (Свободная камера) — состоит из одного элемента — камеры и
настраивается как единый объект. Данные камеры сложнее установить и нацелить,
поскольку они не имеют цели, на которую необходимо смотреть, зато они не
ограничены во вращении, поэтому лучше подходят для сложных анимаций, например
перелетов по сцене по сложной извилистой траектории.

Рис. 1. Типы камер: нацеленная камера (слева), свободная камера

За создание камер отвечает категория Cameras (Камеры) панели Create (Создать) — рис. 2,
при выборе которой становятся доступны оба типа камер. Технология их создания напоминает
создание объектов геометрии. Нужно выбрать тип камеры и либо просто щелкнуть в точке ее
создания в одном из окон проекций (FreeCamera), либо перетащить мышь при нажатой левой
кнопке, указав, таким образом, не только местоположение камеры, но и ее Target-точку.
Созданным камерам (так же, как и объектам геометрии) присваиваются имена: Camera01,
Camera02 и т.п., которые лучше заменять на более информативные. Любую камеру можно
перемещать и вращать на видовых экранах так же, как и другие стандартные объекты.
Теоретически камеры можно и масштабировать, но делать это не рекомендуется, поскольку
возможно искажение настроек. Обзор камеры, определяющий вид отображения сцены,
зависит от ее положения, ориентации и параметров и всегда ограничен ее полем зрения (то

457
есть областью сцены, видимой наблюдателю). Поле зрения камеры имеет форму пирамиды: в
ее вершине находится сама камера, а в центре основания (в случае нацеленной камеры) — ее
точка цели.

Рис. 2. Категория Cameras

Чтобы посмотреть, как выглядит сцена с точки зрения конкретной камеры, нужно щелкнуть
на названии рабочего окна проекции и из ниспадающего меню выбрать команду
Views=>Camera (Отображение=>Камера) или нажать клавишу C — это приведет к замене
рабочего окна конкретной проекции окном проекции камеры. Если в сцене присутствует более
одной камеры и ни одна из них не выделена, то появится диалоговое окно выбора камеры из
списка, где следует указать требуемую камеру. Нередко выделить камеру, а тем более ее цель
бывает сложно, например цель, как правило, расположена за объектами сцены — в таких
случаях стоит выделять нужный объект через команду Select by Name (Выделить по имени).
Кроме того, мишень можно выделить, выделив саму камеру, щелкнув на ней правой кнопкой и
выполнив команду Select CameraTarget из всплывающего меню.

УПРАВЛЕНИЕ КАМЕРАМИ

Для управления окном проекции камеры предназначена специальная панель, появляющаяся


в нижней части программного окна вместо стандартной навигационной панели. Имеющиеся
на ней кнопки позволяют задавать точное положение и ориентацию камер и осуществлять их
анимацию (рис. 3):

Рис. 3. Панель управления окном проекции камеры

 DollyCamera/DollyCamera + Target/DollyTarget (Откат камеры/Откат камеры и


мишени/Откат мишени) — перемещает камеру (либо камеру с мишенью, либо мишень)
вдоль ее локальной оси к остающейся неподвижной точке цели, фокусное расстояние
объектива не изменяется;
 Perspective (Перспектива) — осуществляет откат камеры с одновременным
изменением ее фокусного расстояния;
 RollCamera (Крен камеры) — поворачивает камеру вокруг ее локальной оси так, что
создается впечатление наклона снимаемой камерой сцены;
 Field of View (Поле зрения) — изменяет ширину поля зрения; положение камеры и
цели не меняются. При увеличении поля зрения вид сцены раздвигается, а перспектива
подчеркивается сильнее, при сужении — перспектива становится более плоской и
кажется, что глубина сцены уменьшается;

458
 TruckCamera (Сопровождение камеры) — перемещает камеру и мишень параллельно
плоскости окна проекции камеры; угол зрения и расстояние от камеры до цели не
меняются. Получается, что камера как бы следит за объектом, передвигаясь в
горизонтальной и вертикальной плоскостях;
 OrbitCamera (Орбитальное вращение камеры) — поворачивает камеру вокруг мишени
по орбите, то есть камера совершает облет вокруг цели. При этом создается ощущение,
что объекты сцены тоже вращаются вокруг мишени камеры;
 PanCamera (Панорамное вращение камеры) — поворачивает мишень по орбите вокруг
камеры.

Свободные камеры при применении команд Dolly, Truck, Pan и Orbit используют
виртуальные мишени.

ПАРАМЕТРЫ НАСТРОЙКИ КАМЕР

Параметры камер либо устанавливаются сразу при их создании на панели Create, либо
изменяются позднее через панель Modify. Основные параметры настройки камер находятся в
свитке Parameters (Параметры) — рис. 4, уточним их назначение:

 взаимосвязанные счетчики Lens (Фокусное расстояние объектива) и FOV (Поле


зрения) — управляют величиной поля зрения камеры: при увеличении фокусного
расстояния значение счетчика FOV уменьшается, а поле зрения соответственно
сужается, и наоборот. Поле зрения может измеряться по горизонтали, по вертикали или
по диагонали в зависимости от установленного режима, который выбирается через
выпадающее меню (кнопка со стрелкой слева от параметра FOV);
 панель StockLenses (Набор объективов) — представляет собой альтернативный
вариант установки поля зрения посредством выбора одного из стандартных объективов
с фокусными расстояниями от 15 до 200 мм. Фокусное расстояние человеческого глаза
составляет 50 мм, поэтому обзор сцены, полученный объективом с таким фокусным
расстоянием, обеспечивает наиболее естественное для человеческого глаза
отображение сцены. Линзы размером меньше 50 мм (их называют широкоугольными)
имеют большее поле обзора и приводят к преувеличению перспективы. Как правило,
широкоугольные объективы используются при отображении больших сцен и сцен, в
которых объектам необходимо придать большую значительность или масштабность.
Очень маленькие линзы — размером 10-15 мм — способны охватить очень большие
сцены, но их применение ведет к сильным искажениям (к эффекту рыбьего глаза),
особенно явным по краям сцены. Линзы с фокусным расстоянием более 50 мм
(длиннофокусные) отличаются меньшим полем обзора — они могут охватить лишь
небольшой угол сцены и уменьшают перспективу вплоть до ее полного уплощения.
Длиннофокусные объективы обычно применяются при съемке удаленных объектов,
потому данный вариант объектива в 3D Studio MAX может потребоваться для придания
реалистичности подобным сценам. Кроме того, длиннофокусные объективы могут
использоваться для усиления общего драматизма и напряжения сцены за счет ее сжатия
и приближения главного героя к зрителю;
 выпадающий список Type (Тип) — позволяет изменить тип камеры с Target на Free
уже после ее создания;
 группа настроек ClippingPlanes (Плоскости отсечения) — представлена параметрами
Near Clip (Ближняя плоскость отсечения) и Far Clip (Дальняя плоскость отсечения),
определяющими расстояния от камеры до соответствующих плоскостей, — рис. 5.
Плоскости отсечения ограничивают в пространстве поле зрения камеры — камера
видит только те объекты (или части объектов), которые расположены между
плоскостями NearClip и FarClip. Объекты, оказавшиеся вне поля зрения камеры,
станут невидимыми и не будут визуализироваться, поэтому плоскости отсечения
разумно использовать для ускорения отладочных визуализаций сцены, а также для

459
того, чтобы взглянуть на геометрию сцены изнутри, что актуально, например, при
создании сечений строений, механизмов и пр. По умолчанию плоскости отсечения не
отображаются в окнах проекций — для включения отображения следует активировать
флажок Clip Manually;
 группа настроек EnvironmentRanges (Диапазоны влияния окружающей среды) —
представлена параметрами NearRange (Ближняя граница) и FarRange (Дальняя
граница) — рис. 6. Данные границы, являющиеся плоскостями, используются для
ограничения зоны отображения таких эффектов окружения, как туман (Fog), объемный
свет (VolumeLight) и пр. (с ними мы познакомимся в следующем уроке). По
умолчанию границы не отображаются в окнах проекций — для включения
отображения следует активировать флажок Show;
 группа настроек Multi-PassEffects (Многопроходные эффекты) — позволяет
имитировать работу настоящей камеры посредством размытия по глубине резкости
(Depthoffield) и размытия движения (Motionblur). Первый вариант используется для
статичных изображений — он обеспечивает размытие фрагментов сцены, находящихся
вне фокуса камеры. Второй — для анимации: с его помощью быстро движущиеся
объекты получаются размытыми (как на снимке или в кинокадре), благодаря чему
движение выглядит более естественно.

Рис. 4. Свиток Parameters

460
Рис. 5. Вид сцены без отображения плоскостей отсечения (слева) и с их отображением

Рис. 6. Вид сцены без отображения ближней и дальней границ (слева) и с их отображением

Кроме того, в свитке Parameters имеется ряд переключателей:

 OrthographicProjection — включает/выключает ортографическую проекцию, в


которой отсутствует перспектива и все объекты отображаются точно под углом в 90°;

461
 ShowCone — включает/выключает отображение в окне проекции зоны FOV даже для
неактивной камеры;
 ShowHorizon — делает линию горизонта видимой или невидимой.

СОЗДАНИЕ И НАСТРОЙКА КАМЕРЫ

Для примера создайте сцену с несколькими примитивами — рендеринг сцены в проекции


Perspective представлен на рис. 7. Попробуем получить такой же вид сцены с помощью
камеры. Для создания камеры откройте на панели Create категорию Cameras (Камеры),
щелкните по кнопке Target (Нацеленная камера) и создайте камеру в окне проекции Тор,
щелкнув мышью в точке желаемого местоположения камеры и перетащив курсор на цель (рис.
8). Перейдите в окно проекции Perspective, нажмите на клавишу С и увидите, как выглядит
сцена из созданной камеры (рис. 9). К сожалению, начальное положение камеры оказалось
неудачным, так как сцена показана явно не в нужном ракурсе. Попробуем изменить
положение камеры так, чтобы в фокусе оказался чайник. Для этого вначале вернитесь в
проекцию Top, выделите камеру с мишенью, перетащите ее слегка вправо и разверните так,
чтобы она смотрела на сцену в направлении чайника. А затем нацельте камеру на чайник, для
чего требуется выделить мишень и перетащить ее прямо на чайник (рис. 10). Перемещая
мишень в проекции Top, наблюдайте за видом сцены из проекции камеры, чтобы выбрать
наилучшее положение мишени. Если выделить мишень обычным образом мышью
проблематично (из-за скопления объектов в точке ее расположения), можно выделить камеру,
щелкнуть на ней правой кнопкой мыши и из всплывающего меню выбрать команду Select
CameraTarget.

Рис. 7. Исходная сцена в проекции Perspective

462
Рис. 8. Создание нацеленной камеры

Рис. 9. Начальный вид сцены из камеры

Рис. 10. Нацеливание камеры на чайник

463
Перейдите в проекцию камеры, в панели управления камерами активируйте команду
TruckCamera (Сопровождение камеры) и немного переместите камеру и мишень параллельно
плоскости поля зрения так, чтобы показать сцену под небольшим углом (рис. 11). Щелкните
на кнопке DollyCamera (Откат камеры) и немного приблизьте камеру к объектам (рис. 12). По
окончании в проекции Left инструментом Select and Move переместите камеру немного вверх
(рис. 13) — в итоге вид отображения сцены станет примерно таким же, каким был изначально
в окне Perspective.

Рис. 11. Перемещение камеры с мишенью при помощи команды TruckCamera

Рис. 12. Откат камеры к объектам

464
Рис. 13. Перемещение камеры инструментом Select and Move

Немного поэкспериментируем с настройками камеры в свитке Parameters панели Modify.


Увеличьте значение фокусного расстояния, введя в поле Lens, например, число 85, — это
автоматически приведет к уменьшению значения параметра FOV и соответственно к сужению
поля зрения (что видно по уменьшению основания пирамиды), в результате чего объекты в
окне проекции камеры приблизятся (рис. 14). Откажитесь от изменений, а затем выберите на
панели StockLenses стандартный объектив с фокусным расстоянием 85 мм — результат будет
тот же самый.

465
Рис. 14. Вид сцены с исходным (слева) и увеличенным фокусным расстоянием

Теперь установите стандартный объектив с фокусным расстоянием 50 мм, для сохранения


размера объектов без изменений переместите камеру ближе к объекту и визуализируйте сцену.
Затем смените объектив на широкоугольный в 15 мм, отрегулируйте положение камеры для
примерного сохранения размеров объектов и визуализируйте сцену. По окончании установите
длиннофокусный объектив в 200 мм, также отрегулируйте положение камеры и проведите
рендеринг. Если сравнить между собой результаты визуализации, то окажется, что в первом
случае пропорции объектов естественны, а во втором и третьем — сильно искажены: во
втором наблюдается эффект рыбьего глаза (при большем поле обзора), а в третьем (при
меньшем поле обзора) — перспектива практически плоская (рис. 15). Получается, что
уменьшение фокусного расстояния позволяет увеличить поле зрения и захват камеры (в поле
обзора которой попадет больше объектов), но при чрезмерном уменьшении приводит к
появлению эффекта рыбьего глаза. А увеличение фокусного расстояния уменьшает поле
зрения и соответственно захват камеры (которая отображает меньшее пространство сцены), но
чрезмерное увеличение приводит к нереально плоской перспективе.

466
Рис. 15. Визуализация сцены при разном фокусном расстоянии: 50 мм (слева),— 15 мм (в
центре), 200 мм (справа)

Рассмотрим, как влияет на вид сцены добавление плоскостей отсечения. Выделите камеру и
в группе ClippingPlanes (Плоскости отсечения) установите флажок ClipManually (Отсечение
вручную) — это приведет к появлению дальней плоскости (она представлена
прямоугольником с красными диагоналями). Ближняя плоскость отсечения изначально не
видна, поскольку по умолчанию она находится на нулевом расстоянии от камеры. Установите
для параметров NearClip (Ближняя плоскость отсечения) и FarClip (Дальняя плоскость
отсечения) такие значения, чтобы ближняя плоскость отсекла небольшой фрагмент передней
части сцены, а дальняя — часть заднего плана (рис. 16). Обратите внимание, что области,
находящиеся за дальней или перед ближней плоскостью отсечения, в окне проекции камеры
стали невидимыми (рис. 17).

Рис. 16. Возможное положение плоскостей отсечения

467
Рис. 17. Возможный вид сцены: исходный (слева) и с ограничивающими плоскостями

Прежде чем переходить к примерам, рассмотрим особенности расфокусировки сцены на


примере размытия по глубине резкости (Depthoffield), когда размываются передний и задний
планы сцены в зависимости от установленной точки фокусировки. Включите многопроходную
визуализацию, активировав в группе Multi-PassEffects (Многопроходные эффекты) свитка
Parameters (Параметры) флажок Enable (Разрешить), и выберите метод DepthofField.
Проведите рендеринг — изображение визуализируется не сразу, а будет проявляться
постепенно, при этом процесс рендеринга займет гораздо больше времени. В конечном счете
объекты, расположенные перед точкой фокуса и за ней, окажутся слегка размытыми, зато вид
сцены будет более естественным (рис. 18). Теоретически результат можно было просмотреть
прямо в окне проекции камеры, перейдя в полноэкранный режим работы (кнопка
Min/MaxToggle) и щелкнув на кнопке Preview. Увеличьте значение параметра SampleRadius
(Радиус выборки) до 2 и вновь визуализируйте сцену — размытие усилится (рис. 19).

Рис. 18. Результат визуализации сцены: исходный вид (слева) и после стандартного
размытия

468
Рис. 19. Вид сцены после усиленного размытия

ПРИМЕРЫ НАСТРОЙКИ КАМЕРЫ В СТАТИЧНЫХ СЦЕНАХ

ВЫБОР УДАЧНОЙ ТОЧКИ ОБЗОРА СЦЕНЫ С УЧЕТОМ ГЛУБИНЫ РЕЗКОСТИ

Создайте произвольную сцену с большим числом объектов — лучше, если это будет один и
тот же многократно продублированный объект (в данном случае мы остановились на
шахматной доске с множеством пешек). Наша задача — выбрать наиболее удачную точку
обзора сцены с учетом фокусного расстояния и глубины резкости. Последнее не менее важно,
так как особенности строения человеческого глаза таковы, что четкими могут быть лишь
объекты, попавшие в фокус, остальные в той или иной степени размыты.
Создайте плоскость, наложите на нее шахматный материал. В левом верхнем углу
плоскости поместите любой небольшой объект, включая обычный примитив (рис. 20).
Выделите созданный объект и создайте на его основе массив объектов, применив команду
Tools=>Array (Инструменты=>Массив), активизируйте флажок 2D и определите число
объектов в ряду и смещение их друг относительно друга по оси X (рис. 21) — появится первый
ряд объектов. Выделите все объекты ряда и вновь примените к ним команду Tools=>Array, но
уже со смещением по оси Y (рис. 22), что и приведет к получению задуманного массива
объектов. Визуализируйте сцену — все объекты в ней будут отражены с абсолютно
одинаковой четкостью, что выглядит неестественно (рис. 23).

469
Рис. 20. Исходная сцена

Рис. 21. Настройка параметров окна Array для смещения по оси X

Рис. 22. Настройка параметров окна Array для смещения по оси Y

Рис. 23. Рендеринг сцены в окне Perspective

Изменить ситуацию проще всего путем внедрения камеры. Поэтому активируйте режим
создания нацеленной камеры (команда Create=> Cameras=>Target —
Создать=>Камеры=>Нацеленная камера). В окне проекции Top установите камеру, щелкнув
мышью в его правом нижнем углу и направив мишень камеры в центр объектов (рис. 24).

470
Активируйте проекцию камеры, нажав в проекции Perspective клавишу C. Используя
инструменты перемещения и вращения либо кнопки панели управления камерой, настройте
мишень камеры и камеру так, чтобы выбрать оптимальный обзор объектов в сцене (рис. 25).
Обратите внимание на настройку мишени — объект, на который она направлена, всегда будет
в фокусе, а значит, размытие (которое мы добавим чуть позже) на нем не скажется. В
результате удастся добиться того, что камера будет охватывать все объекты в нужном ракурсе,
правда отображаться они будут пока с одинаковой четкостью (рис. 26).

Рис. 24. Появление камеры

Рис. 25. Вид окон проекций после настройки камеры

471
Рис. 26. Результат визуализации проекции камеры до настройки размытия

Включите многопроходную визуализацию, активировав в группе Multi-PassEffects


(Многопроходные эффекты) свитка Parameters (Параметры) флажок Enable (Разрешить).
Установите метод размытия DepthofField (Размытие по глубине резкости). Увеличьте
значение параметра SampleRadius (Радиус выборки) примерно до 1,5 и проведите рендеринг
— все объекты, находящиеся на переднем и заднем плане, будут отображаться размытыми,
что гораздо ближе к действительности (рис. 27).

Рис. 27. Результат визуализации проекции камеры после настройки размытия

ИНТЕГРАЦИЯ 3D-ОБЪЕКТОВ В ФОН

Предположим, у нас есть подходящий фоновый рисунок или снимок (рис. 28), в который
необходимо вписать созданную в среде 3D Studio MAX модель, чтобы в итоге получилось
цельное изображение. Установите данный рисунок в качестве фона при рендеринге,
воспользовавшись командой Rendering=>Environment=>EnvironmentMap=>Bitmap. Затем
для удобства ориентации сделайте фон видимым в окне проекции Perspective, применив
команду Views=>ViewPortBackground, щелкнув на кнопке Files (Файлы) и указав имя файла.
Создайте нацеленную камеру, замените окно перспективы на вид из камеры (клавиша C) и
отрегулируйте положение и ориентацию камеры примерно так, как показано на рис. 29.
Обратите внимание, что камеру разместили чуть наклонно в направлении сверху вниз, потому
что по виду фонового рисунка создается ощущение, что наблюдатель находится на некоторой
возвышенности. Проведя рендериг, вы получите следующий результат (рис. 30).

472
Рис. 28. Фоновый рисунок

Рис. 29. Исходное изображение с камерой

473
Рис. 30. Начальный вид сцены

Теперь нужно согласовать линию горизонта камеры с линией горизонта на фоновом


изображении. Для этого в свитке Parameters камеры включите флажок ShowHorizon — линия
горизонта станет видимой. В данном случае она оказалась выше линии горизонта фона,
последняя для наглядности нарисована красным цветом (рис. 31). Инструментом
SelectandMove передвиньте мишень камеры по оси Y так, чтобы черная горизонтальная линия
(линия горизонта камеры) совпала с предполагаемой линией горизонта фона (рис. 32 и 33).
Теперь осталось провести расфокусировку и размыть внедряемый в фон домик так, чтобы он
естественно вписывался в фон. Выделите камеру, в списке ее параметров в группе Multi-
PassEffects (Многопроходные эффекты) установите флажок Enable (Разрешить) для
включения многопроходного режима визуализации, увеличьте значение параметра
SampleRadius (Радиус выборки) примерно до 2, подберите для домика более подходящий к
стилю фона материал и визуализируйте сцену — домик станет смотреться гораздо
реалистичнее (рис. 34).

Рис. 31. Окно проекции камеры с линиями горизонта: камеры (черная) и фона (красная)

474
Рис. 32. Перемещение мишени по оси Y

Рис. 33. Вид сцены после согласования линий горизонта

Рис. 34. Домик на нарисованном фоне

475
АНИМАЦИЯ КАМЕР

Как было отмечено в предыдущем уроке, анимировать можно самые разные параметры,
включая камеры, причем у target-камеры может анимироваться как сама камера, так и ее
мишень (как вместе, так и по отдельности). Анимация камеры позволяет добиваться
интересных вариантов представления сцены зрителю. Например, анимируя откат камеры
(DollyCamera), несложно добиться эффекта постепенного приближения к интересующему
объекту или удаления от него, анимация орбитального вращения камеры (OrbitCamera)
позволяет создать эффект облета интересующего объекта. Сопровождение камеры
(TruckCamera) может применяться для имитации вида из движущегося объекта, крен
(RollCamera) и панорамное вращение (PanCamera) — для создания эффекта переворота и т.д.

ПЕРЕМЕЩЕНИЕ ПО ПРЯМОЛИНЕЙНОЙ ТРАЕКТОРИИ

Смоделируйте произвольный текстовый объект (в нашем случае текст объемный за счет


применения лофтинга) и две плоскости — под текстом и за текстом (рис. 35). В проекции Top
создайте нацеленную камеру (команда Create=> Cameras=>Target —
Создать=>Камеры=>Нацеленная камера), в проекции Perspective нажмите клавишу C, чтобы
активировать проекцию камеры. Подберите для нее фокусное расстояние так, чтобы высота
поля обзора была немногим больше высоты букв, а саму камеру с помощью инструмента
Select and Move (а при необходимости и инструмента Select and Rotate) разместите
перпендикулярно первой букве текста (рис. 36). Включите режим создания анимации с
автоматическим созданием ключей, передвиньте ползунок таймера анимации в последний
кадр и переместите камеру (вместе с мишенью) вдоль линии расположения текста так, чтобы
она оказалась на последней букве текста (рис. 37). Выйдите из режима создания анимации,
проиграйте ролик и сразу увидите, что камера перемещается параллельно тексту, буквы
которого по очереди появляются в поле ее зрения. Правда, камера движется неравномерно: в
начале траектории она явно ускоряется, а в конце — замедляется. Поэтому откройте редактор
кривых (команда GraphEditor=>TrackView-CurveEditor — Редактор графов=>Просмотр
треков-Редактор кривых) и найдите строки, которые отвечают за перемещение камеры и ее
мишени — в нашем случае это X Position. При нажатой клавише Ctrl выделите обе ключевые
точки для первого параметра X Position и щелкните на кнопке SetTangentstoLinear
(Установка касательных для линейной анимации) — криволинейная траектория превратится в
прямолинейную. Аналогичную операцию проведите для второго параметра X Position (рис.
38) — движение камеры станет равномерным.

476
Рис. 35. Исходная сцена

Рис. 36. Результат настройки камеры

477
Рис. 37. Положение камеры в последнем кадре

Рис. 38. Корректировка вида касательных в редакторе кривых

ОСМОТР СЦЕНЫ

Попробуем посредством анимации камеры добиться эффекта постепенного приближения к


объекту и его последующего осмотра с противоположной стороны. Смоделируйте
произвольную простую сцену, например такую, как представлена на рис. 39, — дерево,
растущее на холме. Создайте Target-камеру с фокусным расстоянием в 50 мм, слегка
наклоните ее и нацельте на дерево, установите проекцию камеры, нажав клавишу C (рис. 40).
Щелкните на кнопке DollyCamera (Откат камеры) и перетащите курсор отката вниз, чтобы
камера отодвинулась от дерева (рис. 41).

478
Рис. 39. Исходная сцена

Рис. 40. Появление камеры

Рис. 41. Результат отката камеры

479
Включите режим создания анимации с автоматической генерацией ключей, пе