Модификатор camera map в 3d max упражнение. Текстурирование сложной модели с помощью Unwrap UVW

Координаты наложения карт текстур. Модификатор UVW Map (UVW-проекция текстуры)

Достаточно часто бывает так, что после применения материала при попытке визуализировать объект программа выдает сообщение об ошибке (рис. 7.18).

Рис. 7.18. Окно Missing Map Coordinates (Потеряны проекционные координаты)

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

Координаты наложения текстур (Mapping Coordinates) способствуют правильному наложению текстуры на поверхность объекта. При назначении материала, содержащего текстуры, как объект, так и текстура должны обладать координатами наложения. Только в этом случае обеспечивается правильная визуализация текстуры. При создании стандартных примитивов и составных объектов координаты наложения текстур присваиваются автоматически. Для прочих объектов координаты необходимо назначать.

Существует два способа назначения координат наложения текстур объекту:

Установить в параметрах объекта флажок Generate Mapping Coords. (Генерировать координаты наложения текстуры);

Применить модификатор UVW Map (UVW-проекция текстуры).

Параметр Generate Mapping Coords. (Генерировать координаты наложения текстуры) имеется в свитках настроек примитивов, сплайнов, объектов вращения и выдавливания. Генерирование координат наложения с помощью данного флажка – более простой способ, но применение модификатора UVW Map (UWV-проекция текстуры) предоставляет дополнительные возможности. Во-первых, его использование позволяет создавать координаты наложения текстур для объектов, которые не могут их генерировать, например для редактируемых сеток и полисеток. Во-вторых, дает возможность настраивать координаты наложения, что, в свою очередь, позволяет влиять на расположение текстуры. В-третьих, дает возможность менять каналы наложения текстур и тип координат наложения материала. И наконец, в-четвертых, позволяет выбирать систему проецирования текстуры, используя контейнер (Gizmo) модификатора, который обычно называют контейнером наложения текстуры. Форма контейнера наложения текстуры определяет метод проецирования: в плоских, цилиндрических, сферических, трехмерных, прямоугольных координатах и т. д. (рис. 7.19).

Рис. 7.19. Результат применения различных форм габаритного контейнера модификатора UVW Map (UVW-проекция текстуры)

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

По умолчанию задаются плоские координаты проецирования (Planar).

Настройки модификатора UVW Map (UVW-проекция текстуры) находятся в нескольких областях (рис. 7.20), среди которых следующие:

Рис. 7.20. Параметры модификатора UVW Map (UVW-проекция текстуры)

Mapping (Наложение текстуры) – задает тип и размеры контейнера, устанавливает параметры карты текстуры и ее кратность (количество повторений в материале (Tile)), а также позволяет изменить ориентацию карты (Flip);

Channel (Канал) – позволяет задавать до 99 различных вариантов присвоения координат наложения объекту. Чтобы отобразить тот или иной вариант наложения, канал UVW-координат наложения объекта должен совпадать с каналом UVW-координат текстуры наложения;

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

В области Alignment (Выравнивание) доступны следующие команды выравнивания контейнера:

X, Y, Z – положения переключателя, предназначенного для выравнивания контейнера наложения по соответствующим осям глобальной системы координат;

Fit (Подгонка) – изменяет размер контейнера наложения так, чтобы он соответствовал размеру объекта. При этом пропорции текстуры могут искажаться;

Center (Центрировать) – выравнивает контейнер наложения по центру объекта (или по центру выделения в случае нескольких объектов);

Bitmap Fit (Подгонка по изображению) – изменяет размер контейнера наложения в соответствии с размером растрового изображения. При этом исключается искажение пропорций изображений, связанных с используемым материалом;

Normal Align (Выравнивание по нормалям) – позволяет выровнять контейнер наложения по нормалям граней объекта, перетаскивая указатель над поверхностью объекта;

View Align (Выравнивание по окну проекции) – выравнивает контейнер наложения карты по текущему окну проекции;

Region Fit (Выравнивание по области) – позволяет изменять размер контейнера наложения, перетаскивая указатель мыши;

Reset (Сброс) – сбрасывает изменение размеров контейнера и устанавливает размеры по умолчанию;

Acquire (Взять) – подгоняет контейнер наложения к координатам другого объекта.

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

Для практического закрепления теоретического материала выполните упражнения «Упражнение 3. Текстурирование дивана и кресел», «Упражнение 4. Текстурирование телевизора» и «Упражнение 5. Текстурирование плафона» из раздела «Практика» данной главы.

Данный текст является ознакомительным фрагментом. Из книги автора

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

Из книги автора

Режимы наложения По умолчанию слой, наложенный на другой, непрозрачными участками полностью перекрывает изображение нижележащего слоя. Данный режим наложения называется Нормальный. Однако программа Adobe Photoshop предлагает несколько различных режимов наложения, при

Из книги автора

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

Из книги автора

Координаты текстуры Перед нанесением текстуры на объект осталось установить соответствие между точками на поверхности объекта и на самой текстуре. Задавать это соответствие можно двумя методами: отдельно для каждой вершины или сразу для всех вершин, задав параметры

Из книги автора

Проецирование при помощи модификатора UVW Map (UVW-проекция) Модификатор UVW Map (UVW-проекция) позволяет назначить объекту проекционные координаты для последующего наложения текстурных карт и управления их положением в пространстве.Для присвоения объекту модификатора UVW Map

Из книги автора

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

Из книги автора

Способы наложения карт Возможны следующие четыре типа наложения картинки на объект, которые можно выбрать в зависимости от основной формы объекта: Box (Параллелепипед) – тип проецирования, используемый по умолчанию; Planar (Плоское) – картинка проецируется без

Из книги автора

Модификатор out Теперь рассмотрим использование параметров out (от output – выходной). Если метод определен с выходными параметрами, то необходимо назначить этим параметрам подходящие значения до выхода из метода (если этого не сделать, будет сгенерирована ошибка

Из книги автора

Модификатор ref Теперь рассмотрим, использование в C# модификатора ref (от reference – ссылочный). Ссылочные параметры нужны тогда, когда требуется позволить методу изменять данные, объявленные в контексте вызова (например, в функциях сортировки или обмена данными). Обратите

Из книги автора

Модификатор interrupt Модификатор interrupt предназначен для объявления функций, работающих с векторами прерываний процессора 8086/8088. Для функции типа interrupt при компиляции генерируется дополнительный код в точке входа и выхода из функции, для сохранения и восстановления

Из книги автора

Способы наложения карт Возможны следующие четыре типа проектирования картинки на объект, которые можно выбрать в зависимости от основной формы объекта: Box (Параллелепипед) – тип проектирования, используемый по умолчанию; Planar (Плоский) – картинка проектируется без

Из книги автора

HeadsUp: проекция экрана смартфона на лобовое стекло автомобиля Николай Маслухин Опубликовано 19 ноября 2013 Индикаторы на лобовом стекле, или Heads-up display (HUD), в наше время используют не только в кабинах пилотов самолетов, но и в автомобилях. Существуют

Наложения Наложения Flash 8 - это режимы смешивания цвета выделенного нами фрагмента изображения и цветов всех фрагментов, которые находятся под ним. При этом не имеет значения, лежат ли все эти фрагменты на одном слое или разнесены по разным слоям.Наложения могут быть

Из книги автора

Разбиение растровой графики Модификатор Magic Wand ("Волшебная палочка") Если внимательно присмотреться к растровому изображению, находящемуся на рабочем листе, можно заметить, что оно состоит из множества частей, пикселы которых имеют одинаковый цвет. Так же думает и Flash. И,

Основы 3ds Max: UV Mapping.

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

Пол Хаттон научит, как накладывать текстуру на объекты, используя процесс UV mapping.

После моделирования объекта необходимо вдохнуть в него жизнь путем применения к нему некоторых материалов, но прежде, чем это сделать, нужно пройти процесс, который называется UV mapping. Это то, где мы сопоставляем координаты текстуры на объект. Это крайне важно, даже для самых простых предметов, но действительно необходимо на более сложных объектах, таких, как предметы мебели. Я покажу пару основных способов этого процесса, надеюсь, получится объяснить как можно проще. Ну и последнее, когда думаете о UVW, просто понимайте это, как систему координат XYZ.

Шаг 1: Модификатор UVW Map.

Самый элементарный способ назначить развёртку к текстурам простого объекта — это применить модификатор UVW Map. Вы найдёте его в панели modify в выпадающем списке. Он находится почти в самом низу. Напишите UV, чтобы отыскать его быстрее. Таким образом, вы добавите модификатор UVW Mapping в ваш стек модификаторов. Выберите его в стеке и на панели модификаторов появятся редактируемые параметры.

Я использую этот модификатор для большинства объектов, которые я создаю. Развёртка требуется только для более сложных объектов.

Шаг 2: Виды UVW развёртки

В начале свитка Parameters расположены виды развёртки Mapping. Среди них плоские развёртки Planar, которые могут покрыть только 2d координаты в пространстве U и V, как например коробка, когда координаты развёртки создаются по форме коробки в системе координат UVW. Существует также цилиндрический и сферический вид развёртки. Если у вас есть довольно простой объект, то вы вполне можете выбрать тип Box. Для более сложных объектов необходимо использовать более сложные функции, которые называются unwrapping, но об этом мы поговорим чуть позже.

Выберите тип развёртки, который лучше всего подходит для вашего объекта.

Шаг 3: Реальные размеры UVW развёртки

Мы ещё не касались темы создания текстур, но я дам краткий обзор, чтобы мы могли двигаться дальше. Вы можете задать текстурам реальные размеры. К примеру, у вас есть узор ткани, и вы знаете, что в реальном масштабе он занимает 1 на 2 метра, и вы хотите, чтобы он покрывал объект в виртуальном мире, просто укажите это в параметрах. Мы подробнее остановимся на этой теме, когда перейдём к редактору материалов. Если вы хотите использовать реальные размеры, то отметьте флажок Real-World Map Size в модификаторе UVW Mapping.

На этом примере каждая шашка равна квадрату в 5 см. Включенный параметр UVW Map real world size гарантирует, что они изображены корректно.

Шаг 4: Каналы развёртки UVW.

Прокрутив немного вниз, вы найдёте способ изменить канал развёртки. Чтобы понять, что это, представьте, что вам нужна определённая развёртка для вашей диффузной текстуры, а затем вам понадобилась другая развёртка для карты бампа или дисплейсмента. Это просто осуществить путем настройки ваших текстур на разные каналы развёртки, а затем применения несколько модификаторов UVW Mapping, каждый из которых установлен на разный канал развёртки с различными свойствами.

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

Шаг 5: UVW выравнивание.

Осталось рассказать про ещё одну вещь, перед тем как перейти к такому страшному монстру, как развёртка. Модификатор UVW Mapping позволяет вам быстро применить выравнивание для вашей развёртки в определённом направлении, X, Y или Z. Это особенно полезно при использовании типа развёртки Planar и определении особой плоскости.

Этот инструмент быстрого выравнивания позволяет быстро настроить ориентацию вашей развёртки.

Шаг 6: Введение в модификатор Unwrap UVW.

Теперь, когда мы разобрались с некоторыми основными свойствами развёртки, нам следует перейти к следующему шагу. Ранее вы были ограничены несколькими параметрами, которые идеально подходили для простых моделей. Теперь же мы будем использовать процесс под названием «развёртка», который даст гораздо больше контроля, для расположения фейсов на вашей текстуре. Просто перейдите к стеку модификаторов и добавьте модификатор Unwrap UVW.

Более сложные меши требуют развёртки, чтобы текстуры правильно применилась к геометрии.

Шаг 7: Режим редактирования Unwrap UVW

Выбрав этот модификатор, пролистайте вниз к свитку Parameters и нажмите кнопку Edit. Откроется отдельный интерфейс с меню вверху и иконками вверху и внизу. Это выглядит немного пугающе. Слишком вдаваться в детали не входит в рамки данного урока, однако мы рассмотрим некоторые основы. Здесь важно понимать, что текстуры будут располагаться в квадрате, очерченном жирной линией. Это UV пространство от 0 до 1. Мы научимся размещать фейсы наших объектов внутри этого пространства.

Режим редактирования даёт вам все необходимые инструменты для развертки даже очень сложных мешей.

Шаг 8: Отображение текстур Unwrap UVW.

Заметьте, что по умолчанию отображается шахматный узор. Это может быть полезно, чтобы видеть есть ли растяжения на вашей развертке, но чаще всего вам, скорее всего, захочется увидеть настоящую текстуру, которую вы собираетесь применить к объекту. Сделать это можно, перейдя в выпадающий список сверху и выбрав текстуру Bitmap. Найдите ваше изображение и два раза кликните по нему. В результате ваше изображение откроется в редакторе. Заметьте, если изображение не квадратное, то оно будет сдавлено в данном UV пространстве. Вот почему большинство текстур имеют квадратные пропорции, например 1024x1024 пикселя.

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

Шаг 9: Flatten Mapping для Unwrap UVW.

Теперь давайте рассмотрим наиболее востребованное решение для автоматической развёртки объектов. Оно называется Flatten Mapping и его можно найти в меню Mapping, выбрав Flatten Mapping. Прежде чем это сделать, используйте режим выделения полигонов внизу и нажмите комбинацию Ctrl+A, чтобы выделить все полигоны. Затем перейдите в Flatten Mapping. Это часто может быть хорошим первым шагом для аккуратной организации вашей UV в пространстве. Существует несколько основных параметров, о которых мы не будем беспокоиться о сейчас. Обычно параметры по умолчанию работают прекрасно. Выберите OK и вы увидите, как все грани вашего объекта аккуратно распределились в пространстве.

Быстро распределить грани в UV пространстве можно при помощи автоматического инструмента.

Шаг 10: Ручные настройки Unwrap UVW.

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

Ручная настройка граней при помощи инструментов перемещения, вращения и масштабирования.

Процесс развёртки - скучная, нудная и сложная задача. Чаще всего это приходится делать вручную, но существуют автоматические инструменты, например Unwrella или XRay Unwrap. Их использование поможет ускорить ваш рабочий процесс.

Координаты наложения карт текстур. Модификатор UVW Map (UVW-проекция текстуры)

Достаточно часто бывает так, что после применения материала при попытке визуализировать объект программа выдает сообщение об ошибке (рис. 7.18).

Рис. 7.18. Окно Missing Map Coordinates (Потеряны проекционные координаты)


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

Координаты наложения текстур (Mapping Coordinates) способствуют правильному наложению текстуры на поверхность объекта. При назначении материала, содержащего текстуры, как объект, так и текстура должны обладать координатами наложения. Только в этом случае обеспечивается правильная визуализация текстуры. При создании стандартных примитивов и составных объектов координаты наложения текстур присваиваются автоматически. Для прочих объектов координаты необходимо назначать.

Существует два способа назначения координат наложения текстур объекту:

Установить в параметрах объекта флажок Generate Mapping Coords. (Генерировать координаты наложения текстуры);

Применить модификатор UVW Map (UVW-проекция текстуры).

Параметр Generate Mapping Coords. (Генерировать координаты наложения текстуры) имеется в свитках настроек примитивов, сплайнов, объектов вращения и выдавливания. Генерирование координат наложения с помощью данного флажка – более простой способ, но применение модификатора UVW Map (UWV-проекция текстуры) предоставляет дополнительные возможности. Во-первых, его использование позволяет создавать координаты наложения текстур для объектов, которые не могут их генерировать, например для редактируемых сеток и полисеток. Во-вторых, дает возможность настраивать координаты наложения, что, в свою очередь, позволяет влиять на расположение текстуры. В-третьих, дает возможность менять каналы наложения текстур и тип координат наложения материала. И наконец, в-четвертых, позволяет выбирать систему проецирования текстуры, используя контейнер (Gizmo) модификатора, который обычно называют контейнером наложения текстуры. Форма контейнера наложения текстуры определяет метод проецирования: в плоских, цилиндрических, сферических, трехмерных, прямоугольных координатах и т. д. (рис. 7.19).


Рис. 7.19. Результат применения различных форм габаритного контейнера модификатора UVW Map (UVW-проекция текстуры)


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

По умолчанию задаются плоские координаты проецирования (Planar).

Настройки модификатора UVW Map (UVW-проекция текстуры) находятся в нескольких областях (рис. 7.20), среди которых следующие:

Рис. 7.20. Параметры модификатора UVW Map (UVW-проекция текстуры)


Mapping (Наложение текстуры) – задает тип и размеры контейнера, устанавливает параметры карты текстуры и ее кратность (количество повторений в материале (Tile)), а также позволяет изменить ориентацию карты (Flip);

Channel (Канал) – позволяет задавать до 99 различных вариантов присвоения координат наложения объекту. Чтобы отобразить тот или иной вариант наложения, канал UVW-координат наложения объекта должен совпадать с каналом UVW-координат текстуры наложения;

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

В области Alignment (Выравнивание) доступны следующие команды выравнивания контейнера:

X, Y, Z – положения переключателя, предназначенного для выравнивания контейнера наложения по соответствующим осям глобальной системы координат;

Fit (Подгонка) – изменяет размер контейнера наложения так, чтобы он соответствовал размеру объекта. При этом пропорции текстуры могут искажаться;

Center (Центрировать) – выравнивает контейнер наложения по центру объекта (или по центру выделения в случае нескольких объектов);

Bitmap Fit (Подгонка по изображению) – изменяет размер контейнера наложения в соответствии с размером растрового изображения. При этом исключается искажение пропорций изображений, связанных с используемым материалом;

Normal Align (Выравнивание по нормалям) – позволяет выровнять контейнер наложения по нормалям граней объекта, перетаскивая указатель над поверхностью объекта;

View Align (Выравнивание по окну проекции) – выравнивает контейнер наложения карты по текущему окну проекции;

Region Fit (Выравнивание по области) – позволяет изменять размер контейнера наложения, перетаскивая указатель мыши;

Reset (Сброс) – сбрасывает изменение размеров контейнера и устанавливает размеры по умолчанию;

Acquire (Взять) – подгоняет контейнер наложения к координатам другого объекта.

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

Для практического закрепления теоретического материала выполните упражнения «Упражнение 3. Текстурирование дивана и кресел», «Упражнение 4. Текстурирование телевизора» и «Упражнение 5. Текстурирование плафона» из раздела «Практика» данной главы.


| |

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


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

Давайте попробуем просто применить целиком к форме модификатор UVW Map : Для этого зайдем в главное меню Modifiers ? UV Coordinates ? UVW Map :



Получилось только на одном полигоне, на остальные текстура не легла так, как нам нужно. Теперь попробуем перебрать различные виды наложений в модификаторе: из Planar (плоскостное наложение) поставим в Box (наложение по прямоугольному контейнеру):

Затем попробуем другие наложения. Так же еще попереставляем в Alignment оси. Видим, что как ни подбирай, а желаемого результата таким образом мы не получили. Есть ли тут выход? В таких случаях как этот - есть. Для этого необходимо применять модификатор UVW Map не к целому объекту, а к каждому полигону (или группе полигонов) по отдельности. Удалим пока модификатор UVW Map с объекта. Встанем на уровень полигонов и выделим передний полигон.
T еперь к выделенному полигону применим модификатор UVW Map : Modifiers ? UV Coordinates ? UVW Map :



Теперь нужно нечто подобное проделать с остальными полигонами, вид которых нас интересует. Для того чтобы выделить следующий полигон или группу полигонов не отменяя предыдущего шага в стеке модификаторов, необходимо зайти в главное меню: Modifiers ? Selection ? Poly Select : где также надо встать на уровень полигонов. Выделяем нужный полигон (или группу полигонов):


Назначим к нему (к ним) модификатор UVW Map : заходим так же как и раньше: M odifiers- ? UV Coordinates--- ? UVW Map:

Попробуем настроить с плоскостным наложением (Planar ): Для этого, в первую очередь, нужно определить, по какой оси мы выравниваем: в опции Alignment нам подходит переставить кружок напротив X . Теперь подберем размеры: Length и Width (можно это делать на глаз или опираться на соотношение размеров в полигонах). Здесь также можно подогнать рапорт по U / V / W tile .
Проделаем все то же самое с третьей стороной крыши: Для этого снова выделили нужный полигон (полигоны) через Poly Select .

И так же применяем к нему (к ним) модификатор UVW Map :


И снова подгоняем раппорт:


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



На виде сверху вы легко себя проверите:

Замечу теперь, что не всегда удастся вам подогнать состыковку рисунка в полигонах точно при таком способе наложения текстуры, это, пожалуй, главный минус данного метода. Скажем, здесь у меня нет такой задачи – точно подогнать рисунок по сторонам крыши, швы ведь будут скрыты пластинами.
Теперь постараемся наложить текстуру на надстройку с окнами. В этой части крыши несколько компонентов, поэтому полигоны разделены на три группы ID : на черепицу отведены 1-ые ID :
Подготовим многокомпонентный материал, где для первого компонента можно взять независимую копию материала, который назначали на главную часть крыши. А можно позволить себе пофантазировать с дизайном и взять какую-нибудь еще текстурку. В данном случае логично выложить надстройку гибкой черепицей, поэтому я делаю новый материал с изображением другого покрытия: с рисунком чешуйками.
Назначим подготовленный материал на надстройку (вышли со всех подуровней). Получилось так:

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

Применим к нему модификатор UVW Map :


Теперь нужно правильно настроить параметры: переставим тип наложения в Box :


Уже лучше. Теперь поставим в Alignment кружок на ось X :


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


Вот, получилось наконец. Теперь через Poly Select выделим другой нужный полигон:


Применяем снова UVW Map , на этом полигоне нужно поправить лишь размеры, подгоняю снова на глаз:

Под этим полигоном выделим следующий:


Правим на нем:


По возможности, стараюсь так подогнать размер, чтобы рисунок на смежных полигонах мог совпасть, если его потом совместить по линиям. При этом я пока не смещаю сам раппорт, но для того чтобы окончательно точно совместить рисунок, здесь можно воспользоваться кнопкой Normal Align (выравнивание по нормали), но это сработает лишь в том случае, если направления нормалей мы не меняли, в противном случае эта кнопка развернет направление рисунка. Нажмем ее и теперь если удерживать левую кнопку мыши, можно подвинуть рисунок – совместить его по-точнее:


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


Так же поступаю со всеми остальными полигонами в данной форме. Вот тестовая визуализация крыши:
Примечание: конечно, существуют другие пути наложения текстуры на сложные объекты, например, с помощью модификатора Unwrap UVW . И, возможно, описанный здесь метод показался вам слишком утомительным и неточным. Однако, часто именно им удобней пользоваться, особенно когда текстуру накладываем лишь на видимые для визуализации полигоны, а не на все, то есть когда ракурс вида зафиксирован (часто так приходится поступать в целях экономии времени и сил). Другой плюс: этим способом можно иногда быстро подправить что-то на отдельных участках. К минусам относится то, что нельзя развернуть рисунок на не кратные 90 градусам углы, а так же уже указанную сложность стыковки рисунка в смежных плоскостях. Но возможно, вы все равно еще не раз воспользуйтесь описанным сейчас методом. Авторы: сайт Подготовлено: сайт

Некоторые иллюстрации на этой странице анимированы . Чтобы увидеть анимацию, в вашем Интернет-Эксплорере должен быть включён параметр по адресу меню: Сервис / Свойства обозревателя / Дополнительно (искать в пункте параметров "Мультимедиа").

В прошлой главе мы рассматривали главным образом наложение текстур на объект. Как мы видели, методы наложения бывают разные: привязка текстуры к мировому пространству, привязка текстуры к пространству объекта. Когда текстура помещалась в мировое пространство, она проскальзывала по трансформирующемуся объекту. Когда текстура помещалась в пространство самого объекта, при трансформации объекта текстура вела себя так, словно она нарисована на его поверхности. Но если объект деформировался, текстура всё равно начинала скользить. Особенно забавно вела себя двухмерная текстура, наложенная по методу Planar From Object.

Но был один пример, когда текстура была наложена по методу Explicit Map Channel. Объект деформировался, но текстура не плыла и не скользила, она была словно нарисована на самой поверхности. Такой метод наложения наиболее востребован. Большинство реально существующих объектов ограничены поверхностью, на которой текстура именно нарисована, а не по которой текстура причудливым образом скользит. Конечно, скольжение может пригодиться, когда наша текстура используется для имитации теней и освещения, или чтобы нарисовать какого-нибудь хитрого хамелеона, но теперь мы знаем, что это можно сделать без особых проблем.

Теперь мы будем разбираться, как сделать, чтобы текстура по поверхности не скользила. А чтобы текстура по поверхности не скользила, создаётся специальное UVW-пространство. Пространство создаётся не для текстуры, а для объекта. Для текстуры же можно выбрать, в какое пространство её поместить, то ли в мировое XYZ, то ли в пространство объекта XYZ, а можно поместить её и в пространство UVW. В параметрах текстуры нет такой опции - поместить в UVW-пространство, вместо этого есть опции Explicit Map Channel и Vertex Color Channel. Explicit Map Channel - заданный канал карты. Для него нужно выбирать номер канала. Номер канала это есть как бы номер UVW-пространства. У одного и того же объекта этих пространств может быть до 100 штук. А фактически их ещё больше - ведь Vertex Color - это тоже UVW-пространство, только оно называется по-другому и имеет несколько другое назначение. Но по сути оно подобно обычному UVW. А ещё есть два пространства Vertex Illumination и Vertex Alpha.

Как же объект помещается в UWV-пространство? На самом деле, UVW - это некое параллельное пространство. Один и тот же объект может существовать одновременно и в пространстве XYZ и в пространстве UVW. Просто пока мы для него UVW-пространство не создали, он существует только в XYZ.

Для того, чтобы создать пространство UVW к объекту надо применить модификатор UVW Map. Он не только создаёт само пространство, но и создаёт в нём координаты наложения текстуры, то есть этот модификатор определяет, какую форму будет иметь объект в пространстве, куда будет залита наша текстура.

Итак, начнём применять модификатор UVW Map.

Модификатор UVW map

Если мы не хотим, чтобы наша текстура плыла, то модификатор UVW map следует расположить в стеке таким образом, чтобы он находился под модификатором, отвечающим за деформацию объекта. У нас в случае с динозавром, который использовался в предыдущей главе для иллюстрации того, как плывёт текстура, был использован модификатор привязки шкуры к анимационному скелету. Существуют разные модификаторы, которые позволяют осуществить эту операцию, поэтому пока мы не рассматривали их подробно, будем называть их общим словом - скиннинг.

Если модификатор UVW map применить под скиннинг, то есть находится ниже по стеку, то сначала текстура накладывается на грани, а уже потом поверхность деформируется. И текстура привязана к граням жёстко, словно нарисована на поверхности. Если же модификатор UVW map применить сверху от модификатора скиннинга, то сначала будет осуществляться деформация поверхности, а уже потом на грани будет накладываться текстура, то есть накладываться она будет уже на деформированную форму, и всё равно будет плыть.

Если к нашему объекту применены другие модификаторы, например Symmetry и MeshSmooth (TorboSmooth), то они тоже взаимодействуют с UVW map . Symmetry, если применено поверх UVW map, то создавшаяся половинка полностью симметрична первой, и текстуры на ней лежат соответствующим образом. Если UVW map применить поверх Symmetry, то возможно сделать так, что на симметричных половинках текстура будет не симметрична. Модификаторы сглаживания MeshSmooth (TorboSmooth), если они применены поверх текстурирования, то они как правило несущественно искажают наложенную текстуру, но часто эти искажения либо вообще не видны, либо даже играют положительную роль - то есть когда объект скругляется и текстура располагается так, что лежит на нём хорошо.

Модификаторы MeshSmooth или TorboSmooth лучше применять уже поверх скиннига. Дело в том, что скиннинг лучше осуществлять для низкополигонной модели - меньше вершин, меньше возни. К тому же, в такой последовательности применения модификаторов, сглаживание MeshSmooth или TorboSmooth можно безболезненно выключать или менять число итераций. Если же скиннинг осуществлён поверх сглаживания, то нам придётся и прорабатывать большее число вершин, и нельзя будет наше сглаживание выключать.

Начнём с того, что попробуем наложить на объект двухмерную текстуру типа кирпичи (она же плитка), показанную на рис. 22.1.

Как изготовить такую карту, мы потом узнаем, когда будем рассматривать карты более подробно. От вас же не требуется повторять всё то, что написано в этой главе, так что создавать эту текстуру прямо сейчас вам не надо. Ваша задача прочитать и понять. А вот когда вы поймёте, тогда и будете пытаться что-то делать.

Чтобы сразу видеть, что получается, надо нажать в редакторе материалов, когда мы работаем с данной картой, нажать кнопочку Show Map In Viewport . Будьте внимательны, такая же кнопка есть и при работе с самим материалом. Лучше её нажимать именно в режиме работы с конкретной картой, потому что у одного материала может быть много карт, и если нажать кнопку для материала, не известно, какая карта пробьётся в окно проекций. Все сразу не пробьются, на то этот просмотр и предварительный, чтобы экономить время. Поэтому, показывать он будет не всё как будет в конечном счёте.

Итак, давайте рассмотрим модификатор. Для этого выделим наш объект и применим модификатор (рис. 22.2).


Рис. 22.2. Применение модификатора UVW map

У этого модификатора, как и у многих других, есть группа меню Parameters. В самом верху группа опций Mapping и в ней большой список этих самых опций. На рис. 22.2 показана ситуация, когда выбрана опция Planar. Это значит, что текстура проецируется на объект, лучами, перпендикулярными плоскости, обозначенной оранжевым прямоугольником. То есть, рисунок расположен в этой плоскости, и плоскость как бы просвечивается лучами, которые перпендикулярны ей, и эти лучи проецируют рисунок на наш объект.

Очень много интересных и красочных картинок на эту тему можно посмотреть в хелпе 3ds MAX, если набрать во вкладке хелпа "указатель" слово UVW а затем под ним выбрать map modifier. Всё настолько наглядно, что понятно и без перевода.

Плоскость эта является подобъектом модификатора, этот подобъект называется Gizmo. Если перейти в режим работы с ним, то можно эту плоскость всячески вращать, двигать и масштабировать и смотреть, что при этом происходит с рисунком, который ложится на наш объект. Если кто хочет попробовать, кликайте на этот файл . Трансформации (перемещение, вращение, масштабирование) подобъекта Gizmo так же могут быть анимированы, для чего надо нажать кнопку Auto Key (Animate) и провести соответствующие действия в нужных кадрах. В файле сделана такая анимация, пусть вас это не смущает, если вы хотите повращать и подвигать Gizmo. В меню Curve Editor (Track View) если найти имя объекта, к которому применён наш модификатор, и у него развернуть ветвь Modifier Object, то там можно найти наш модификатор UVW Map, а если его развернуть, то можно найти в нём подобъект Gizmo, для которого тоже можно развернуть плюсик и получить доступ к вращению, перемещению и масштабированию и к их контроллерам анимации.

Обратите внимание, что у гизмо есть как бы хвостик. Он обозначает верх текстуры. То есть, верх картинки, показанной на рис. 22.1 будет находиться со стороны этого хвостика. Ещё, если Gizmo выделить, у него зелёным цветом будет отображаться правая сторона (то есть та сторона, которая соответствует правой стороне текстуры, показанной на рис. 22.1).

Теперь сразу спустимся в самый низ меню Parameters. Там есть группа опций Aligment. И сразу под надписью есть три переключателя: x, y и z. Они позволяют выбрать ось, вдоль которой будет проецироваться наша текстура (вдоль которой будут светить лучи проектора). Плоскость Gizmo будет перпендикулярна выбранной оси. Толко учтите, если вы уже покрутили Gizmo при помощи инструмента "вращение", то при переключении осей, Gizmo будет уже повёрнуто относительно выбранного направления на те углы, на которые мы его повернули.

Снизу есть кнопки:

  • Fit - вписать. По умолчанию, сразу после применения модификатора UVW map , эта операция уже осуществлена. Но если мы вращали Gizmo, или переключали оси, вдоль которых должно осуществляться проецирование, то наше Gizmo может расположиться так, что объект по некоторым направлениям или не влезает в него, или занимает слишком малую площадь. По нажатию кнопки Fit размеры Gizmo устанавливаются таким образом, чтобы проекция объкета на эту плоскость полностью вписывалась в неё, касаясь границ плоскости. А текстура при этом проецируется на объект так, чтобы натянуться на него полностью, но лишнего осталось бы по минимуму.
  • Bitmap Fit - устанавливает пропорции Gizmo так, чтобы они соответствовали пропорциям какой-либо картинки или видеоролика из файла (который понимает 3ds MAX). Файл надо будет указать после нажатия кнопки.
  • View Align - выравнивает Gizmo параллельно плоскости активного вида.
  • Reset - полезная кнопка. Если мы накрутили невесть чего, можно вернуть всё в первоначальное состояние.
  • Center - центрирует Gizmo по центру объекта.
  • Normal Align - делает Gizmo перпендикулярным выбранной нормали. Если кнопку нажать, она пожелтеет а курсор превратися в крестик. Если навести его потом на наш объект, нажать кнопку мыши и водить курсор, то крестик ездит по граням, а Gizmo поворачивается так, чтобы быть перпендикулярным нормали грани (то есть, параллельным самой этой грани).
  • Region Fit - вписать область. Если кнопку нажать, можно просто мышью натянуть прямоугольник нужного размера.
  • Accure - копирует настройки UVW Gizmo от другого объекта. Чтобы эта опция работала, к другому объекту, с которого осуществляется копирование, должен быть применён и не схлопнут модификатор UVW Map. Копирование можно осуществить по двум методам: относительный Releative - когда скопированный Gizmo размещается относительно опорной точки нашего объекта так же, как и у исходника, и абсолютный Absolute, когда Gizmo размешается точно в том же месте, где и у исходника. Выбрать эти режимы можно уже после того, как нажата кнопка Accure и выбран объект, с которого надо копировать настройки Gizmo. После этого появится меню.

Вот. Самые нужные в данный момент кнопки - это Fit и Reset .

Вернёмся к группе параметров Mapping. В самом верху расположен список переключателей:

  • Planar - Плоский - текстура проецируется с плоскости. Этот режим мы уже рассмотрели.
  • Cylindrical - Цилиндрический - текстура проецируется со стенок цилиндра, в который помещается объект. Текстура как бы оборачивает объект по цилиндрической поверхности. Если включить опцию Cap , то сверху и снизу создаются плоские крышки, с которых текстура проецируется на верхнюю и нижнюю часть объекта.
  • Spherical - Сферический - текстура заворачивается вокруг нашего объекта, как наклейка на глобус вокруг самого глобуса.
  • Shrink Wrap - Оборачивание - текстура оборачивается вокруг объекта, как будто мы положили объект на середину платка, а края платка стянули так, чтобы объект оказался внутри.
  • Box - Коробка - объект помещается внутрь параллелепипеда, с каждой из стенок которого проецируется одинаковая картинка. Картинка с каждой стороны параллелепипеда проецируется на грани, которые находялся под углом не больше 45 градусов к соответствующей стороне параллелепипеда. Если этот угол больше, то на соответствующую грань проецируется картинка уже с другой стороны этого же параллелепипеда.
  • Face - грань - Текстура натягивается на каждый треугольник индивидуально.
  • XYZ To UVW - накладывает текстуру так, как если бы она не проецировалась на объект, а залилась в пространство, как мы это рассматривали в предыдущей главе. Эта опция очень хороша для трёхмерных текстур. На рис. 22.3 б) можно посмотреть пример, как деформируется поверхность, к который применён этот режим наложения текстуры (применён под скиннинг).

Итак, на рис. 22.3 мы видим, как ведёт себя текстура, наложенная при помощи модификатора UVW Map. Рисунок а) мы уже видели в прошлой главе, а на рисунке б) показано, что и трёхмерную текстуру тоже можно привязать к граням. На самом деле, трёхмерную текстуру можно накладывать не только методом XYZ To UVW , но и всеми другими тоже. Но результат, полученный другими методами наложения будет труден для понимания, пока мы не рассмотрим подробнее, что же такое пространство UVW.

На рис. 22.4 можно видеть, насколько различается окраска моделей, к которым был применён один и тот же материал с одной и той же текстурой, но осуществлено наложение UVW Map по разным методам.

Почему так произошло? Потому, что когда применяется модификатор Planar, он как бы сжимает в UVW-пространстве наш объект таким образом, чтобы он влезал в квадрат размером 1х1 (это происходит с объектом в UVW-пространстве, в обычном же пространстве он остаётся неизменным). Дело в том, что плоские (двухмерные) текстуры в UVW пространство заливаются так, что они занимают там квадратики размером 1x1, поэтому если мы хотим, чтобы текстура натянулась на объект полностью и не повторялась на нём, то надо уместить весь наш объект целиком в такой квадратик.

Что касается метода XYZ To UVW, то он не сжимает объект в пространстве UVW, а создаёт его точную копию, то есть координаты для каждой вершины в пространсве UVW в точности равны координатам соответствующей ей вершины в пространсве XYZ. (В пространстве UVW у объекта грани те же самые, а врешины для них - другие).

Трёхмерная текстура Planet, которая показана на рис. 22.4 имеет размер цветовых пятен намного больше, чем 1х1 (можно, конечно, покрутить настройки и сделать пятна мельче, но у нас этого не сделано). Поэтому динозавр, к которому был применён метод текстурирования Planar в пространсве UVW уменьшился до размеров 1x1 и целиком попал в пятно одного цвета. Так же на нём не видно чешуек, ибо при текстурировании чешуйками (для свойства Bump) произошло то же самое - динозавр полностью вместился в размер одной чешуйки. В данном случае текстура чешуек Celluar, использованная для Bump и текстура для окраски Planet были залиты в одно и то же UVW пространство.

Можно было бы залить их в два разных UVW-пространства, тогда для каждого пришлось бы отдельно применять модификатор UVW Map.

Для этого у модификатора UVW Map существует группа параметров Channel. Выбирая номер Map Channel, мы выбираем номер UVW-пространства, которое создаётся и в которое помещается наш объект при помощи модификатора UVW Map. Можно переключить с Map Channel на Vertex Color Channel. Вообще, Vertex Color Channel имеет номер "0" и предназначен для хранения цветов вершин объекта. Но при желании цвета R (красный) G (зелёный) B (синий) - могут быть пересчитаны в координаты x, y, z по формуле:

Если мы потом этот модификатор схлопнем, то у нас пропадёт сделанная нами ранее окраска вершин. Если мы вершины не раскрашивали, то после схлопывания они приобретут цвета, которые вычисляются по формулам (22.2). Лучше накладывать текстуры в Map Channel, а не в Vertex Color Channel.

Пока, наверное, это нам не очень понятно, мы потом ещё будем разбираться с этими вещами отдельно. А пока мы не разобрались, будем заливать наши текстуры в UVW-пространства типа Map Channel с разными номерами.

Итак, все способы наложения текстур, кроме XYZ To UVW главным образом предназначены для наложения двухмерных карт.

Наложение текстуры при помощи Gizmo на примере Bitmap.

Особого внимания заслуживает двухмерная карта Bitmap, которая позволяет использовать в качестве текстуры любую растровую картинку, которую поддерживает 3ds MAX. Это значит, что мы можем нарисовать практически что угодно и наложить на наш объект.

Рассмотрим простой, (пока не очень правильный) пример как можно нарисовать и наложить текстуру в виде картинки.

Пока нам не достаточно знаний, чтобы создать сложную текстуру, которая обернёт наш объект нужным образом, мы сделаем просто: нарисуем такую текстуру, которую можно спроецировать сбоку. Для этого перейдём в вид сбоку (рис. 22.5):


Рис. 22.5. Вид объекта сбоку

Сфотографируем этот вид: для этого нажмём на клавиатуре Prt. Sc - кнопка Print Screen, она копирует то, что отображено на мониторе в буфер обмена. Правда, она не копирует курсоры мыши и видео, но нам этого и не надо. Далее запустим какой-нибудь графический редатор, типа Photoshop. У кого нет специального графического редактора (очень плохо, кстати), тому придётся запустить Ms Paint - который входит в комплект Windows. Далее надо вставить картинку из буфера обмена (кнопки Ctrl + v на клавитауре или инструмент Paste/Вставить в меню Edit вашего графического редактора).

Вставится весь экран монитора. Нам надо отрезать лишние края. В Photoshop это можно сделать если выделить нужную область инструментом Select, а потом в меню Image выбрать Crop. Тогда всё, что не влезло в рамку - отрежется. В Paint придётся уменьшать аттрибуты рисунка (в меню Рисунок), при этом может отрезаться не то, что надо. Не стремитесь отрезать точно по краям нашего силуэта! Оставьте вокруг небольшие поля.

Потом, кто работает в Photoshop, может создать новый слой (чтобы сохранился исходник), а может и не создавать. Далее рисуем при помощи кисточек и карандашиков нашу текстуру (рис. 22.6).

Опять же: не стремитесь нарисовать точно по контурам, пусть немножко вылезает, ничего страшного!

Теперь сохраняем наш файл, кто работат в Photoshop может сохраниять прямо в PSD.

Внимание: файлы с картинками, в которых хранятся текстуры к нашей модели лучше сохранять в ту же папочку, где находится наша модель. Можно в той же папочке для текстур создать отдельную папочку, иногда это бывает удобно. Сами текстуры не встраиваются в файл с моделью, они всегда хранятся отдельно. Если текстуры лежат в той же папке, что и файл с моделью, то когда вся папка перемещается, 3ds MAX потом быстро находит текстуру. Так же он её находит, когда текстура лежит в папке Maps, которая находится рабочей папке 3ds MAX. Но там ваши текстуры лучше не хранить. Во-первых, потому что в одной папке нельзя хранить много файлов с одинаковыми названиями, во-вторых, там и без того много всяких текстур, вам трудно будет отыскивать нужную, в-третьих, если вы будете переустанавливать программы, можете случайно стереть ваши текстуры, ну и в-четвёртых, если вы захотите перенести файлы на другой компьютер, вам это будет сделать гораздо удобнее, когда всё лежит в одной папке.

В редакторе материалов для свойства Diffuse выберем карту Bitmap. В группе меню Bitmap Parameters сразу в самом верху есть длинная кнопка, слева от которой написано Bitmap. Надо нажать на эту кнопку и указать размещение файла с картинкой.

Все параметры оставим пока по умолчанию. Обратите внимание, что Map Channel = 1 по умолчанию. Теперь надо применить к модели модификатор UVW Map. И применить его надо для того же Map Channel, который указан для нашей текстуры (то есть, для первого) (рис. 22.8).

Во-первых, поскольку у нас вид сбоку, в группе параметров Aligment надо указать направление X. При таком расположении картинки, как показано на рис. 22.6, надо чтобы хвостик, показывающий верх, распогалался сверху модели. Для этого Gizmo надо будет повернуть вокруг оси X на углы, кратные 90°. Помните, что существует несколько вспомогательных систем координат, ориентация которых может зависеть от вида. Чтобы не было разночтений, лучше выбрать вспомогательную систему координат World (Глава 3, Системы координат в 3ds MAX). После выполнения всех поворотов, лучше нажать кнопку Fit, чтобы границы Gizmo установились по крайним точкам объекта.

Потом наш Gizmo надо будет ещё немного подвигать в плоскости XZ и помасштабировать в ней же, чтобы текстура полностью "наделась" на объект. На рис. 22.8 видно, что Gizmo несколько больше самого объекта.

Вот что получилось в итоге (Рис. 22.9):

Здесь мы редактировали Gizmo чтобы вписать наш объект в текстуру. А можно сделать другое: наложить текстуру так, чтобы она налезала не на весь наш объект, а только на его часть. Возьмём картинку, изображающую надпись (рис. 22.10).

По умолчанию к объекту Box координаты наложения применены по тому же методу Box. Применим теперь UVW Map в режиме Planar.

Здесь можно использовать опцию Bitmap Fit для того, чтобы выправить пропорции рисунка (рис.22.12).

Теперь будем равномерно масштабировать Gizmo до тех пор, пока надпись не станет нужного размера (рис. 22.13).

Рис. 22.13. При уменьшении Gizmo мы видим, что рисунок повторяется периодически.

Эффект, который можно видеть на рис. 22.13 происходит из-за того, что когда текстура заливается в UVW-пространство, она там периодически повторяется. Один период двухмерной текстуры занимает квадратик размером 1х1. Вспомогательный объект Gizmo показывает нам, какие размеры будет иметь текстура относительно нашего объекта, но на самом деле, когда мы производим операции с Gizmo, объект в просаранстве UVW меняет свои размеры. Сейчас у нас объект стал больше, чем квадратик 1x1 и охватил своей площадью несколько периодов текстуры.

А нам надо, чтобы надпись повторялась только один раз! Для этого надо зайти в редактор материалов в параметры нашей карты и в группе меню Coordinates выключить флажки Tile (повторять). Теперь порядок (рис. 22.14):

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

К слову сказать, если мы сейчас перевернём наш Box и посмотрим на него снизу, то там мы тоже увидим эту надпись, только отражённую зеркально. Чтобы этого не было в группе меню Coordinates надо выключить флажок Show Map on Back - показывать карту с задней стороны. В окнах проекций при этом она ещё может отображаться, но при рендеринге её точно не будет. О задней стороне: в пространстве UVW, когда речь идёт о двухмерных текстурах, есть некое направление проецирования текстуры. Если вектор проецирования (или, кому удобнее - луч проектора) натыкается на лицевую сторону грани, то текстура проецируется, если же на изнаночную - то при выключенном флажке Show Map on Back - текстура не проецируется на грань, повёрнутую к ней изнанкой.

Использование нескольких UVW пространств

Мы познакомились со свойствами материала Diffuse и Bump. Допустим, мы хотим, чтобы теперь наш динозавр, раскрашенный при помощи карты Bitmap покрылся выпуклыми чешуйками карты Celluar, при том, чтобы при деформации Celluar не плыл. Карту Celluar мы будем применять для свойства Bump.

Чтобы карта Celluar не плыла, для неё надо выбрать режим Explicit Map Channel. Если мы это сделаем, и оставим в качестве Map Channel первый канал, то будет ситуация, показанная на рис. 22.4 для динозавра, изображённого слева. Дело в том, что мы применили для первого канала UVW Map с методом Planar, и уже говорилось, что при этом происходит с трёхмерными текстурами. Сделать UVW Map по методу XYZ To UVW можно, но только не для первого канала, иначе мы потеряем уже сделанные настройки для Bitmap.

Напомним, что модификатор UVW Map применяется не к карте, а к объекту. И если для первого канала мы применили UVW Map, значит, мы создали UVW-пространство, в котором особым образом расположился наш объект. Мы можем в это пространство заливать разные текстуры, но накладываться они будут на такой объект, каким он стал в первом UVW-пространстве после действия модификатора UVW Map.

Для трёхмерной карты Celluar лучше прменить модификатор UVW Map в режиме XYZ To UVW. И чтобы не испортить пространство для наложения карты Bitmap, мы применим этот метод для второго канала (для второго UVW-пространства). Для этого надо ещё раз применить к объекту модификатор UVW Map, только для Map Channel указать цифру 2. И для карты Celluar, применённой в свойство Bump тоже указать Map Channel = 2, тогда она зальётся во второе UVW-пространство.

Если, к примеру, мы укажем для карты Map Channel = 2, а модификатор UVW Map для второго канала не применим, то при рендеринге нам выдастся сообщение, что мы этого не сделали. Будет указано, для какого канала и для какого объекта не создано UVW-пространство. Не забудьте, что трёхмерную карту Celluar надо наложить по методу XYZ To UVW!

Комбинирование карт

Тогда нам понадобится карта Composite - это карта-композитор, которая позволяет смешивать несколько других карт.

В нашем материале заменим карту Bitmap для свойства Diffuse на карту Composite. Для этого, в режиме работы с картой надо нажать на кнопку, на которой сейчас у нас написано Bitmap (см. рис. 22.7). Мы попадём в навигатор карт, выберем там Composite. У нас появится окошко, в котором будет предложен выбор:

  • Discard Old Map? - удалить старую карту?
  • Keep old map as sub-map? - сохранить старую карту как под-карту?

Мы выберем второй вариант, чтобы наша карта сохранилась и нажмём "Ок"

Теперь у нас вместо надписи Bitmap на кнопке написано Composite, а вместо параметров карты Bitmap параметры карты Composite.

Их немного: кнопка Set Number (выбрать число карт для компановки), а справа в сером окошке отображено число карт, которые мы будем компоновать.

Ещё ниже - в столбик надписи Map # (карта №) и напротив них кнопки с названиями карт. В одной такой кнопке должна была сохраниться наша карта Bitmap (поскольку мы выбрали второй вариант - с сохранением исходной карты). За кнопками - квадратики с флажками, если флажок стоит - карта включена. Её можно и выключить, тогда она не будет влиять.

Поскольку у нас дело набирает серьёзные обороты, пора приступить к именованию карт. Карту Composite мы назовём Dino Diffuse (название впечатывается в строку перед кнопкой, на которой написано Composite).

Теперь, если нажать на кнопку с картой Bitmap, мы попадём в её параметры, и тут же можно сменить ей имя в строке напротив кнопочки с надписью Bitmap (которая появится вместо надписи Composite). Эту карту назовём Dino Skin Color. Почему эту карту надо поместить в первый слот (первую кнопку) карты Composite? Потому, что под-карты в Composite накладываются друг на дружку, под-карты с маленькими номерами помещаются в самый нижний слой, а с большими - в верхний. Надпись нам надо поместить поверх основной раскраски, поэтму её мы поместим в кнопку номер 2. Для этого выйдем из Bitmap на верхний уровень, в карту Composite (), нажмём на кнопку напротив надписи Map 2, выберем для неё опять же карту Bitmap, для которой загрузим картинку, показанную на рис. 22.10, а саму карту Bitmap назовём её Dino tattoo.

Напоминание: кнопка Go To Parent позволяет выйти из режима работы с картой в режим работы с материалом или родительской картой, которая включает в себя исходную карту. Грубо говоря, эта кнопка выводит нас на уровень вверх. Если мы для карты Dino tattoo оставим Map Channel 1, то при нажатии для неё кнопки Show Map In Viewport увидим вот что (рис. 22.16):

Рис. 22.16

Как мы видим, в первом канале надпись накладывается плохо. Учтите! Использовать UVW Map для первого канала нельзя, иначе мы нарушем наложение карты Dino Skin Color. Второй канал у нас занят под Celluar-карту, которая тоже наложена не так, как стоило бы наложить надпись. Остаётся только залить эту карту в третий, пока ещё свободный канал и ещё раз применить UVW Map для третьего канала.

Так и поступим. Сделаем все настройки для карты Dino tattoo так же, как мы их делали, когда накладывали эту надпись на объект Box, а саму надпись смасштабируем нужным образом. Не забудем поставить для нашей карты Map Channel 3 (Рис. 22.17).

Теперь, чтобы сделать нашу надпись прозрачной, можно в группе параметров Output карты Dino tattoo включить флажок Alpha From RGB Intensity - брать непрозрачность из яркости картинки. В нашем случае это вполне преемлимо.

Теперь, для того, чтобы уяснить всё до конца, поставим такую же надпись в другое место. Скажем, закрутим вокруг шеи. Для того, чтобы разместить её в другое место, надо снова задействовать модификатор UVW Map. И как вы догадываетесь, чтобы не повредить наложение предыдущей надписи, снова придётся применить новый Map Channel (4).

К сожалению, вылить одну и ту же текстуру в два UVW-пространства нельзя, поэтому придётся создать копию нашей карты Dino tattoo, которая будет отличаться от исходной лишь тем, что у неё будет указан Map Channel = 4.

В режиме работы с картой Composite нажмём кнопку Set Nember и впечатаем 3. Внимание! Если вы уменьшите число и нажмёте Ok, то последние карты пропадут! Если вы потом снова увеличите число, то появившиеся кнопки будут пусты.

Увеличивать число можно безболезненно.

Теперь нажмём мышкой на кнопку, в которую помещена карта Dino tattoo и потащим её в свободную кнопку (Map 3). В появившемся меню выберем Copy (скопировать). Не выбирайте Instance, иначе у нас будут зависимые копии, полностью одинаковые!!! А нам надо, чтобы Map Channel отличались!

Копия карты будет иметь имя Map #, мы переназовём её в Dino Tattoo2. Не забудем указать для неё Map Channel = 4.

Теперь применим UVW Map и у него тоже поставим Map Channel = 4. На сей раз будем осуществлять наложение по методу Cylindrical. Здесь тоже можно сделать Bitmap Fit. Для работы с цилиндрическим Gizmo удобно пользоваться локлаьной системой координат.

И вот что у нас получилось в итоге.