
- •Материалы и текстуры
- •Введение
- •Присвоение материалов
- •Присвоение материалов объектам
- •Создание основного материала
- •Цвет и свет Ambient
- •Создание прозрачности
- •Карты и текстурные координаты
- •Создание материала Multi/Sub-Object
- •Использование материалов и карт Raytrace
- •Создание шахматной доски
- •Моделирование поверхности картойDisplacement
- •Создание звездного неба
- •Создание материала кожи
- •Материалы в сцене интерьера
- •Материал Standard
- •Применение в материалах карт
- •Материал Multi/Sub-Object
- •Создание материалов 3d: Другой подход к дереву
- •Применение материала Architectural к стене
- •Сочетание материалов: Материал Blend для пола
- •Модификатор uvw Map для пола
- •МатериалInk 'n Paint
- •Раскраска с просвечиванием (Translucent)
- •Управление текстурными координатами
- •ПрименениеUnwrapUvw, часть 1
- •ПрименениеUnwrapUvw, часть 2
- •ИспользованиеRelaxв текстурных координатах
- •Использование средстваChannelInfo
- •Материалы для персонажа
- •Наложение материала рубашки
- •Наложение материала шлема
- •Наложение материала брюк
- •Цвета вершин и интерактивная раскраска
- •Применение Vertex Color
- •Добавление Radiosity к Vertex Color
- •Раскрашивание гаража с VertexPaint
- •Анимация прозрачности слоя Vertex Paint
ИспользованиеRelaxв текстурных координатах
Важным инструментом модификатора Unwrap UVW является Relax, который растягивает по алгоритму координаты текстуры, чтобы дать более ровное наложение текстуры. Это упрощает присвоение текстурных координат требуемым областям текстуры. Это пособие кратко знакомит с использованием Relax в отдельном приложении к текстуре.
Настройка урока:
Загрузка файла clown_head.max из папки tutorials\materials_and_rendering.
Сцена содержит модель головы. К лицу применен модификатор UVW Map в режиме Planar. К лицу также применен материал с картой Checker. Карта помогает увидеть, где следует изменить положение вершин.
Применение модификатора Unwrap UVW:
Выбор объекта head, переход на панель Modify и применение модификатора Unwrap UVW.
Модификатор Unwrap UVW возникает сверху стека, но не дает подобъектов, поскольку был применен к существующему набору подобъектов.
Правка наложения UVW:
В свитке Parameters щелчок кнопки Edit открывает диалог Edit UVWs.
Появляются только выбранные части сети, и все вершины текстуры выбраны.
Видно, что вершины текстуры наиболее плотны вокруг детальных частей лица: глаз, носа и рта. Здесь применением Relax можно растянуть вершины для удобства правки вручную.
Растягивание рамки выделения вокруг глаз.
Из меню диалога Edit UVWs выбор Tools > Relax открывает диалог Relax Tool.
Диалог Relax Tool предлагает различные алгоритмы разрежения наложения. Рекомендуется вариант по умолчанию Relax By Edge Angles, поскольку он уменьшает перекрытие ребер.
Два щелчка кнопки Apply.
Выбранные вершины немного раздвигаются.
Далее Relax используется для вершин вокруг носа и рта.
Использование средстваChannelInfo
Это пособие показывает ряд различных методов использования средства Channel Info . Для работы с пособием необходимо знать создание и присвоение материалов в 3ds Max.
Уровень мастерства: Промежуточный. Время урока: 90 минут.
Уменьшение занимаемой сетевым объектом памяти:
Мастер создания 3D игр может получить модели, при работе с которыми уже были наложены карты, причем трудно сказать, что это за наложение. Вдобавок карты могли быть наложены неэффективно, требуя больше памяти, чем необходимо по строению модели. Этот урок показывает, как с помощью Channel Info подправить наложение карт с экономией памяти для других аспектов игры.
Загрузка файла ostrich.max из папки \tutorials\materials_and_rendering.
Применение модификатора UVW Map к модели ostrich (страус). Ввод Map Channel = 4.
Обращение объекта ostrich в Editable Mesh (Collapse).
Это создает ситуацию, с которой сталкивается мастер разработки коммерческих 3D игр. Получен сетевой объект, к которому уже применены карты, но нет доступа к инструментам (модификаторам), использованным для наложения карт, и необходимо уменьшить отводимую объекту память для вставки в игру.
Создание материала Standard с картой Checker в компоненте Diffuse. Для карты Checker ввод U и V Tiling по 4.0 и Map Channel = 4.
Включение Show Map In Viewport и применение материала к модели ostrich.
Карта появляется на модели, наложенная в плоском режиме параллельно сетке окна.
Переход на панель Utilities, щелчок кнопки More, затем загрузка Channel Info двойным щелчком. На панели Utility щелчок кнопки Channel Info.
Открывается диалог Map Channel Info:
Список диалога дает все относящиеся к делу сведения о каналах объекта. Он подробно описан в разделе Interface.
Последний канал с ID (“4:map”) представляет примененную с модификатором UVW Map карту. Перед ним стоят три пустых канала, каждый требует 33 kilobytes памяти для объекта. Они были созданы программой из-за требования последовательной нумерации каналов, но их память никогда не потребуется.
Инструмент Channel Info позволяет удалить пустые каналы, уменьшая используемую память. Каналы можно удалять только с конца, поэтому следует сохранить наложение первого нужного канала.
Правый щелчок по последнему каналу и выбор Copy.
Это помещает информацию о наложении текстуры модификатором UVW Map в буфер.
В строке состояния (ниже ряда кнопок) появляется надпись “Copy Buffer Info: Node: ostrich Map Channel 4”.
Правый щелчок по строке (ID “1:map”) (первый доступный канал карты текстуры) и выбор Paste.
Возникает диалог Channel Name с возможностью указать имя канала.
Ввод Planar Mapping и щелчок OK (или клавиша Enter).
Теперь канал 1 также содержит данные о наложении карты из канала 4. Можно удалить оставшиеся каналы, однако прежде следует убедиться, что канал 1 содержит данные.
Примечание: Если объект имеет текстурные координаты по умолчанию, например, примитив, следует делать вставку в канал 2 вместо канала 1. Это сохранит оба варианта наложения текстуры в двух разных каналах.
В Material Editor переход на уровень карты Diffuse. Ввод в счетчик Map Channel = 1.
В каналах 2 и 3 карты для модели ostrich нет, поскольку каналы не содержат текстурных координат. Однако в Map Channel 1 текстура вновь появляется на объекте.
Правый щелчок по 3:map channel и выбор из меню Clear.
Однако канал остается и использует 33 килобайта памяти. Это показывает, что нельзя удалить промежуточный канал. Следует провести удаление с конца: 4:map channel, 3:map channel, и, наконец, 2:map channel.
Правый щелчок по каналу 4:map и выбор Clear. Канал исчезает.
Очистка канала Clear 3:map, затем 2:map.
Остается только канал карты 1. Удалением трех неиспользуемых каналов для объекта сохранено около 99 килобайт памяти.
Стек объекта на панели Modify содержит модификатор UVW Mapping Paste и четыре модификатора UVW Mapping Clear. Эти модификаторы утилита Channel Info использует для своей работы. Для избавления от них можно просто свернуть стек.
Создание возможности наборам подобъектов пережить изменение топологии и замену типа объекта:
Поскольку Channel Info дает доступ к каналам, которые сохраняют текущий набор вершин и позволяют копировать эти данные в другие каналы, можно сохранять набор вершин. Если это сделано, набор вершин уцелеет при изменении топологии типа разрешения сети и даже замену типа объекта.
Однако важно помнить, что канал набора вершин содержит только одну компоненту, а каналы карты – три. Так что необходимо копировать канал набора вершин в компоненту карты.
Этот урок также показывает использование модификатора Select By Channel в союзе с Channel Info.
Загрузка файла octopus.max.
Этот осьминог (octopus) взят на ранней стадии создания. Он будет использован для изучения, как поддержать выделение подобъектов после деления сети.
Выбор объекта octopus, загрузка Channel Info, выбор трека, и создание канала щелчком Add.
Можно использовать дополнительный канал карты для сохранения набора вершин, сохраняя данные исходного канала карты.
На панели Modify переход на уровень Vertex объекта Editable Poly.
На главной панели из списка Region Selection выбор Lasso Selection Region, и в окне Left выбор всех вершин головы модели. Смещением набора следует убедиться, что лишних вершин не выделено.
Далее будет определено, уцелеет ли набор при изменении топологии сам по себе. Можно использовать в Editable Poly прием обращения набора вершин в набор полигонов.
В свитке Selection Ctrl+щелчок кнопки Polygon дает переход на уровень Polygon с выделением содержащих вершины полигонов.
В свитке Edit Geometry щелчок кнопки Tessellate, затем возврат на уровень Vertex.
В старое выделение вкраплены новые вершины, созданные разбиением сети. Выделение вершин не уцелело при изменении топологии. Не все вершины головы сохранились в наборе.
Клавишами Ctrl+Z отмена разбиения.
Программа восстанавливает исходное выделение вершин.
В диалоге Map Channel Info правый щелчок канала vsel и выбор Copy.
Надпись “vsel” является сокращением от vertex selection. Этот канал сохраняет текущий набор вершин.
Правый щелчок канала 2:map, созданного действием 2.
Команда Paste недоступна, поскольку каналы карт имеют три компоненты, а канал набора вершин только один. Нельзя выполнять операции copy /paste между каналами с одной и тремя компонентами. К счастью, средство Channel Info дает доступ к отдельным компонентам каналов.
В заголовке диалога Map Channel Info щелчок кнопки SubComp (subcomponents).
Все трехкомпонентные каналы раскрывают свои подкомпоненты. Канал vsel остается единственным каналом с одной компонентой.
Правый щелчок канала 2:map:X и выбор Paste. В диалоге Channel Name ввод Head Vertices и нажатие Enter. Программа добавляет модификатор UVW Mapping Paste в стек объекта.
Переход к уровню Vertex в Editable Poly и выбор всех вершин ног осьминога.
Копирование канала vsel в канал 2:map:Y, именование его Leg Vertices.
В стеке модификаторов правый щелчок одного из модификаторов UVW Mapping Paste и выбор Collapse All.
Все дополнительные модификаторы исчезают, а вставленные данные запекаются (“baked”) в сеть объекта.
Применение модификатора Tessellate к модели. Подробность сети возрастает.
Применение модификатора Select By Channel к модели осьминога.
Этот модификатор позволяет выбрать каналы, которым дано имя в Channel Info.
В модификаторе Select By Channel открытие ниспадающего списка Selection Channel.
В списке те же наборы вершин, что созданы с copy/paste для подкомпонент.
Выбор каждого пункта списка по очереди.
На объекте возникают соответствующие сохраненные наборы вершин, включая все новые вершины, созданные разбиением. Видно, что программа создает плавное выделение для созданных разбиением вершин между исходно выбранными и не выбранными вершинами на границе выделения.
Можно было бы получить тот же результат копированием сохраненных каналов назад в канал vsel в диалоге Map Channel Info, однако Select By Channel упрощает доступ к различным сохраненным наборам. Можно перенести набор в активный канал добавочного модификатора в стеке.
При смене типа геометрии можно утратить выделение подобъектов. Однако с Channel Info сохраненные выделения остаются невредимы, как будет показано в завершающей части урока.
Правый щелчок по octopus и обращение его в Editable Patch. Снова применение модификатора Select By Channel и поиск различных сохраненных каналов.
Каналы пусты. Поскольку Channel Info не поддерживает сохраненные наборы вершин для объектов patch. Однако, как будет показано через мгновение, сохраненные наборы вершин сети (mesh) доступны.
Преобразование octopus в Editable Mesh. Применение другого модификатора Select By Channel и поиск различных сохраненных каналов.
Выделения вершин остаются невредимы. Если провести ту же серию преобразований, начиная от editable mesh с набором вершин, набор должен был бы постоянно теряться после первого преобразования.
Примечание: Если при выполнении такого рода работы оказалось, что не получается вставка скопированного канала, который, как представляется, должен вставляться, можно попробовать щелчок кнопки Update в диалоге Map Channel Info. Этот шаг необходим, например, после преобразований типа объекта и изменений топологии.
Следующая операция продолжает это действие. Если исполнение откладывается, следует сохранить файл.
Применение смешивания текстур с картой Vertex Color:
В 3ds Max карта Vertex Color работает в сочетании с Channel Info, давая доступ к различным поименованным каналам. Этот урок показывает. Как применить возможности карты Vertex Color вместе с сохраненными наборами вершин для смешивания текстур на поверхности объекта.
Этот урок продолжает предыдущий урок. Перед началом следует выполнить его операции.
Будет создан материал Composite и использовано opacity для указания, где подматериал должен появиться.
Продолжение предыдущего урока, загрузка сохраненного файла или файла octopus01.max.
В Material Editor применение первого материала (01-Default) к octopus.
В Material Editor кнопкой Standard вызов Material/Map Browser и двойной щелчок Composite. В диалоге Replace Material щелчок OK.
В свитке Composite Basic Parameters щелчок кнопки Base Material.
Щелчок поля цвета Diffuse и выбор ярко зеленого цвета.
Щелчок кнопки Go To Parent и щелчок кнопки Mat. 1. Выбор для него материала Standard.
Материал Composite использует opacity для определения наложения различных материалов на основную сеть в месте применения карты Vertex Color. Будет использована карта Vertex Color, поскольку она дает доступ к поименованным сохраненным каналам.
В свитке Blinn Basic Parameters щелчок кнопки карты Opacity и выбор карты Vertex Color.
В свитке Vertex Parameters поиск поля Channel Name и щелчок стрелки счетчика.
Выпадает список со вставленными и поименованными каналами наборов вершин.
Выбор канала Head Vertices.
Щелчок кнопки Go To Parent и выбор ярко красного цвета Diffuse.
Применение модификатора UVW Map к объекту, чтобы при визуализации не возникло сообщение об отсутствии проекционных координат.
Визуализация окна Perspective.
Небольшая зона смешивания цветов является результатом плавного выделения вершин, созданных разбиением.
Щелчок кнопки Go To Parent и для Mat. 2 выбор материала Standard с синим цветом Diffuse и картой Vertex Color с каналом Leg Vertices для Opacity.
Визуализация.
Получен
объект octopus
в цветах RGB.
Законченную сцену хранит файл octopus_final.max.
Можно попробовать разные компоненты материала с разными картами, например, Checker и Cellular.
Это очень мощный метод использования каналов карт для сочетания различных материалов на поверхности объекта.
Создание возможности для объекта morph уцелеть при изменении топологии:
Иногда после настройки анимации морфинга с применением модификатора Morpher, требуется изменить геометрию объекта. Например, заказчик требует сделать бородавку на лице, что требует разбиения сети.
Обычно при изменении топологии базового объекта Morph анимация морфинга полностью теряется, поскольку топология базового объекта отличается от топологии целей Morph. Потребуется менять топологию целей, что потребует много труда.
Вместо этого можно вновь использовать исходную анимацию морфинга при посредстве функций Copy и Paste в Channel Info, сберегая много времени и сил.
Создание базового объекта, обращение его в Editable Mesh или Editable Poly, создание ряда копий. Изменением копий создание целей Morph. Использование модификатора Morpher для настройки анимации морфинга базового объекта.
Можно использовать свою сцену или открыть файл octopus_morph.max. В оставшейся части урока предполагается, что используется сцена из файла с малополигональным объектом octopus, который двигает головой и ногами с использованием трех целей morph.
Просмотр анимации.
Левый объект, анимированный с помощью модификатора Morpher, двигает головой и ногами.
Это основной объект, остальные три – цели Morph. Базовый объект использует эти позы в разных фазах анимации. Все четыре объекта имеют одинаковую геометрию, как требует анимация морфинга.
Перед началом можно проверить, как изменение геометрии объекта теряет анимацию морфинга.
Выбор главного объекта – octopus base, и в стеке модификаторов панели Modify щелчок Editable Poly дважды для перехода на уровень Vertex.
В свитке Edit Vertices щелчок кнопки Extrude, и затем в окне Perspective выдавливание одной из вершин шеи вытягиванием ее.
Щелчок по строке Editable Poly в стеке закрывает уровень Vertex.
Просмотр показывает утрату анимации.
Так получается потому, что топология объекта (число ребер и граней) отличается от топологии целей.
Нажатием клавиш Ctrl+Z несколько раз (до снятия выделения с объекта) отмена выдавливания. Просмотр анимации. Анимация восстановлена.
Сначала при помощи Channel Info будут созданы копии каждого канала сети цели Morph в разных каналах базового объекта.
Выбор базового объекта octopus base, вызов средства Channel Info.
В диалоге Map Channel Info выбор любого канала и три щелчка кнопки Add для создания трех новых каналов карт.
Можно сохранить данные о сети в имеющихся каналах, например, Alpha, Illum и vc, или создать три новых, не затрагивая их. В этом уроке каналы будут созданы.
Каналу дается имя octopus head forward.
Выбор первой цели morph – octopus head forward. В диалоге Map Channel Info правый щелчок по первому каналу (poly), и выбор Copy из меню.
Канал
poly
содержит данные о сети объекта.
Снова выбор octopus base, и в диалоге Map Channel Info вставка в канал 2:map, первый новый канал, созданный кнопкой Add. Его имя будет octopus head forward.
Сходным образом копирование каналов poly от объектов octopus legs 1 и octopus legs 2 (вторая и третья цели morph) в каналы объекта octopus base соответственно 3:map и 4:map, именуя каналы octopus legs 1 и octopus legs 2, соответственно.
Примечание: При выделении нескольких объектов все они появляются в диалоге Map Channel Info, так что можно copy/paste каналов без изменения выделения.
Выделение основного объекта и перетаскивание в стеке модификатора Morpher на вершину стека над всеми модификаторами UVW Mapping Paste/Add.
Правый щелчок по самому верхнему модификатору UVW Mapping Paste и выбор из меню Collapse To.
Каналы added/pasted объединены в главный объект; остается только его модификатор Morpher.
На уровне Editable Mesh/Poly уточнение сети. Например, можно применить Slice, Cut или Tessellate для добавления разрешения. Можно так: Выбор нескольких полигонов спереди шеи, щелчок кнопки QuickSlice, по одному щелчку на каждой стороне выделения полигонов. Закрытие уровня Polygon.
Просмотр анимации.
Из-за изменения топологии главный объект не перетекает в формы целей.
Удаление (Delete) всех целей morph.
Создание трех копий измененного главного объекта.
Каждая копия имеет топологию измененного главного объекта и содержит все исходные формы целей в своих каналах карт.
Выбор первой копии. В диалоге Map Channel Info копирование канала octopus head forward в канал poly. Нет нужды менять имя канала poly при вставке.
Первая цель morph восстанавливает позу с головой вперед.
Сходным образом копирование каналов octopus legs 1 и octopus legs 2 в каналы poly второй и третьей копий, соответственно.
Необязательно: Удаление используемой в каналах карты лишней памяти о данных сети целей Morph функцией Clear.
Наконец, будет настроен модификатор Morpher на использование новых целей.
Выбор главного объекта, переход на панель Modify, выбор модификатора Morpher в стеке.
В свитке Channel List правый щелчок кнопки имени первой цели (octopus head forward), выбор Pick From Scene и щелчок первой целевого объекта morph в окне (octopus base01).
Старое имя цели на кнопке заменяется новым.
Сходным образом с использованием кнопок Channel List настройка octopus base02 и octopus base03 как вторую и третью цели morph.
Просмотр анимации.
Анимация морфинга восстановлена в полном объеме с измененной топологией.
Окончательный результат содержится в файле octopus_morph_final.max.
Способность сохранения различного типа данных в каналах карты для последующего возврата средство Channel Info Utility может помочь во многих задачах 3ds Max. Варианты:
Удаление неиспользуемых каналов карт объекта для экономии памяти.
Создание наборов подобъектов, чтобы уцелеть при изменении топологии и типа объекта.
Сглаживание границ текстуры на поверхности объекта в сочетании с картой Vertex Color.
Сообщение имен каналам карт и подканалам для доступа к модификатору Select By Channel.
Восстановление анимации морфинга объекта после изменения его топологии.