1 Уроки Maya Нелинейные деформаторы 3 Пт Окт 01, 2010 9:14 pm
Admin
Admin
Попробуем решить более сложную задачу — смоделировать столик, боковая поверхность столешницы которого, равно как и ножки, украшены витым металлическим прутом, а ножки еще и эффектно изогнуты. Начнем с создания металлического прута. Сформируйте NURBS-окружность (команда Create=>NURBSPrimitives=>Circle) с числом секций ( Sections), равным 20, и линейным вариантом соединения вершин (для параметра Degree вариант Linear) — рис. 51. Перейдите в режим редактирования вершин (клавиша F8), выделите все нечетные (или, наоборот, только четные) вершины и масштабируйте их так, чтобы получилась многоугольная звездочка (рис. 52). Создайте ее копию, переместите копию вверх по оси Y на достаточно большое расстояние, последовательно выделите обе звездочки, сформируйте на их основе лофт-объект (команда Surfaces=>Loft), а затем увеличьте число его секций в окне каналов до 150 (рис. 53). Поверните его на 90° по оси Z, назначьте лофт-объекту деформатор скручивания, также поверните данный деформатор вокруг оси Z на 90° и присвойте параметру Start Angle максимально возможное значение, а параметру End Angle — минимально возможное (рис. 54). Выделите скрученный лофт-объект, назначьте ему деформатор Bend, поверните деформатор по осям Y и Z на 90° (он должен быть расположен в горизонтальной плоскости) и подберите значение параметра Curvature (Кривизна) так, чтобы лофт-объект свернулся кольцом (рис. 55). Полученное витое кольцо при рендеринге будет выглядеть примерно так, как показано на рис. 56. Создайте столешницу из полигонального цилиндра и совместите ее с витым кольцом так, чтобы получилось единое целое (рис. 57).
Выделите витое кольцо, создайте его копию, разверните копию на –90° по оси Z, удалите у нее деформатор Bend — должен получиться вертикальный витой прут. Масштабированием уменьшите его длину так, чтобы она была соизмерима с длиной ножки стола. Рядом с прутом создайте полигональный цилиндр такой же длины и обязательно увеличьте число его разбиений в обоих направлениях как минимум до 20 — это будет заготовка для ножки (рис. 58). Объедините оба объекта в группу, назначьте ей деформатор Bend и настройте его так, чтобы оба объекта (витой прут и цилиндр) немного изогнулись (рис. 59). Примерный результат показан на рис. 60. Как видно из рисунка, верхняя и нижняя части ножки получились неровными, поэтому их следует обрезать. Создайте плоскость и поместите ее в месте предполагаемого верхнего разреза (рис. 61). Выделите сначала ножку, а потом плоскость и примените команду Polygons=> Booleans=> Intersection (Полигоны=>Булевы операции=>Пересечение) — основная часть ножки будет обрезана сверху (прут обрезан не будет, так как на него операция Booleans не распространяется) — рис. 62. Аналогичным образом обрежьте нижнюю часть ножки, отрегулируйте масштабированием высоту прута и добавьте ножке еще один декоративный элемент — шар. Вид полученной в итоге ножки стола показан на рис. 63.
Для удобства работы объедините все элементы ножки в группу и продублируйте (команда Edit=> Dublicate) ее с параметрами как на рис. 64 — появится вторая ножка, которая будет находиться как раз напротив исходной. Теперь нужно создать сразу две ножки, образующие вторую пару, — для этого воспользуйтесь дублированием, но уже с другими параметрами: Rotate X = 180, Rotate Y = 0, Rotate Z = 180, Number of Copies = 2. Разместите ножки требуемым образом, назначьте материалы элементам стола (для витых элементов желательно создать металлический материал, например под бронзу), визуализируйте сцену и получите примерно такой же результат, как представлен на рис. 65.
Откидной календарь
Воспользуемся возможностью анимирования деформаторов для создания анимации пролистывания листов откидного календаря, при которой каждый лист по очереди должен отгибаться примерно на половину. Для ускорения процесса ограничимся тремя листами. Создайте плоскость (ее размер должен соответствовать размеру предполагаемого календарного листа) и в окне каналов увеличьте для нее число разбиений в каждом направлении до 15. Под плоскость подложите полигональный куб — он будет имитировать стопку лежащих друг на друге листов, а под куб — вновь плоскость, которая в нашем демонстрационном примере заменит столешницу стола (рис. 66).
Выделите верхнюю плоскость, назначьте ей деформатор Bend, в окне каналов поверните последний на 180° вокруг оси X и на 90° вокруг оси Z, а в окне атрибутов установите нижнюю границу воздействия деформатора (LowBound) равной нулю. В итоге направление деформатора совпадет с направлением листа, а сам деформатор будет располагаться в его нижней части (рис. 67). В окне Outliner выделите плоскость календарного листа вместе с Bend-деформатором, объедините их в группу и создайте две копии данной группы: первая копия будет соответствовать второму листу, а вторая — третьему. Выделите Bend-деформатор верхнего листа, в режиме анимации с ручным созданием кадров активируйте первый кадр и откройте редактор атрибутов. При выделенном деформаторе нажмите в поле Curvature (там по умолчанию установлено нулевое значение) правую кнопку мыши и создайте ключ, выбрав из контекстного меню команду SetKey (рис. 68). Перейдите по временной шкале на 30-й кадр, увеличьте кривизну так, чтобы лист отогнулся примерно наполовину, и опять создайте ключ в поле Curvature (рис. 69). Выделите Bend-деформатор среднего листа, активируйте 31-й кадр и создайте в поле Curvature ключ при нулевом значении параметра. Затем перейдите в 50-й кадр, увеличьте значение кривизны и создайте ключ для данного параметра. Аналогичные операции проведите в отношении Bend-деформатора нижнего листа, с той лишь разницей, что первый (при нуле) ключ нужно будет создать в 51-м кадре, а второй — в последнем.
Проиграйте анимацию в окне Perspective, нажав комбинацию клавиш Alt+V, — если все сделано правильно, то листы будут последовательно отгибаться. Для большей эффектности откройте редактор материалов и настройте материалы для листов календаря и полигонального куба, имитирующего стопку листов. Подходящие для текстурирования изображения можно создать в любом графическом редакторе — в данном примере для текстурирования первого листа (остальные листы аналогичны — на них лишь другие даты) был использован рис. 70, а куба — рис. 71.
Для сохранения полученной анимации откройте окно настройки параметров визуализации, щелкнув на кнопке RenderGlobals (Общие параметры визуализации) в правом верхнем углу экрана или последовательно применив команды Window=>RenderingEditors=>RenderView (Окно=>Редакторы визуализации=>Просмотр визуализации) и Options=>RenderGlobals (Параметры=>Общие параметры визуализации). Настройте параметры рендеринга в соответствии с рис. 72, указав имя файла (в данном случае animation01), формат расширения (AVI), введя номера первого и последнего кадров и проконтролировав, чтобы визуализировалось изображение в проекции Perspective. Закройте окно диалога RenderGlobals (Общие параметры визуализации). Для визуализации всех кадров анимации перейдите в режим Rendering (для перехода в этот режим можно нажать клавишу F5) и воспользуйтесь командой Render=>BatchRender (Визуализация=>Пакетная визуализация), что приведет к формированию AVI-файла, который по умолчанию будет помещен в папку Мои документы\maya\projects\default\images\. После сохранения проиграйте анимацию в окне Windows-проигрывателя (рис. 73).
Волнующееся море
Деформаторы Sine и Wave нередко используются для моделирования водных поверхностей и для их анимации: Sine удобно применять для имитации волн, а Wave — для создания ряби на волнах. Мы ограничимся волнами, которые и попробуем анимировать. В качестве основы для моря создайте NURBS-плоскость с 30 вертикальными и горизонтальными изопармами. Выделите ее, активируйте инструмент SculptSurfacesTool, установите максимальный радиус равным 4, а максимальное смещение — 0,5, загрузите кисть Splat и в режиме Pull обработайте всю поверхность плоскости до нужного эффекта. Аналогичную операцию проведите в режиме Push, что приведет к получению довольно ровной водной поверхности (рис. 74).
Для создания волн назначьте плоскости деформатор Sine и разверните его на 90° вокруг оси Z (рис. 75). Активируйте редактор атрибутов и измените параметры настройки деформатора в соответствии с рис. 76, причем для параметров Wavelength, Offset и Dropoff изменение значений завершите созданием ключей анимации. Не забудьте перед созданием ключей убедиться в том, что находитесь на первом кадре. Переключитесь на 20-й кадр, подходящим образом (оценить это можно лишь визуально) измените значения параметров Wavelength, Offset и Dropoff и вновь создайте для них ключи (рис. 77). И так далее — чем больше вы создадите ключевых кадров с разными вариантами настроек, тем интереснее и естественнее получится анимация. После создания очередного ключевого кадра проигрывайте анимацию в окне Perspective, чтобы оценить результат и при необходимости произвести коррекцию настроек.
По окончании добавьте к сцене небо, для чего лучше воспользоваться NURBS-сферой — благодаря искривлению ее поверхности небо выглядит более правдоподобно. Создайте сферу очень большого диаметра и поместите ее на заднем плане сцены (рис. 78). Затем назначьте материалы. В качестве материалов для воды был использован Ocean Shader (цветовые оттенки его были изменены), а для оформления неба — растровое изображение (рис. 79). Для сохранения полученной анимации настройте параметры визуализации так же, как это было сделано в предыдущем задании, и проведите пакетный рендеринг (команда Render=>BatchRender). Проиграйте созданную анимацию (рис. 80). Только имейте в виду, что процесс генерации AVI-файла может оказаться длительным (это зависит от аппаратных ресурсов), поэтому, если вы не уверены в результате, при промежуточных рендерингах число кадров лучше ограничивать (параметры Start Frame и End Frame) только теми, которые действительно интересуют вас в данный момент.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 51. Параметры NURBS -окружности
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 52. Результат масштабирования вершин
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 53. Лофт-объект
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 54. Скручивание лофт-объекта
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 55. Сворачивание лофт-объекта кольцом
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 56. Витое кольцо
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 57. Столешница
Рис. 51. Параметры NURBS -окружности
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 52. Результат масштабирования вершин
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 53. Лофт-объект
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 54. Скручивание лофт-объекта
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 55. Сворачивание лофт-объекта кольцом
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 56. Витое кольцо
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 57. Столешница
Выделите витое кольцо, создайте его копию, разверните копию на –90° по оси Z, удалите у нее деформатор Bend — должен получиться вертикальный витой прут. Масштабированием уменьшите его длину так, чтобы она была соизмерима с длиной ножки стола. Рядом с прутом создайте полигональный цилиндр такой же длины и обязательно увеличьте число его разбиений в обоих направлениях как минимум до 20 — это будет заготовка для ножки (рис. 58). Объедините оба объекта в группу, назначьте ей деформатор Bend и настройте его так, чтобы оба объекта (витой прут и цилиндр) немного изогнулись (рис. 59). Примерный результат показан на рис. 60. Как видно из рисунка, верхняя и нижняя части ножки получились неровными, поэтому их следует обрезать. Создайте плоскость и поместите ее в месте предполагаемого верхнего разреза (рис. 61). Выделите сначала ножку, а потом плоскость и примените команду Polygons=> Booleans=> Intersection (Полигоны=>Булевы операции=>Пересечение) — основная часть ножки будет обрезана сверху (прут обрезан не будет, так как на него операция Booleans не распространяется) — рис. 62. Аналогичным образом обрежьте нижнюю часть ножки, отрегулируйте масштабированием высоту прута и добавьте ножке еще один декоративный элемент — шар. Вид полученной в итоге ножки стола показан на рис. 63.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 58. Прямая заготовка для ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 59. Изгибание элементов ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 60. Изогнутая заготовка для ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 61. Размещение плоскости для обрезания верхней части ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 62. Результат булева пересечения
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 63. Готовая ножка стола
Рис. 58. Прямая заготовка для ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 59. Изгибание элементов ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 60. Изогнутая заготовка для ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 61. Размещение плоскости для обрезания верхней части ножки
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 62. Результат булева пересечения
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 63. Готовая ножка стола
Для удобства работы объедините все элементы ножки в группу и продублируйте (команда Edit=> Dublicate) ее с параметрами как на рис. 64 — появится вторая ножка, которая будет находиться как раз напротив исходной. Теперь нужно создать сразу две ножки, образующие вторую пару, — для этого воспользуйтесь дублированием, но уже с другими параметрами: Rotate X = 180, Rotate Y = 0, Rotate Z = 180, Number of Copies = 2. Разместите ножки требуемым образом, назначьте материалы элементам стола (для витых элементов желательно создать металлический материал, например под бронзу), визуализируйте сцену и получите примерно такой же результат, как представлен на рис. 65.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 64. Настройка параметров дублирования
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 65. Готовый столик с инкрустацией
Рис. 64. Настройка параметров дублирования
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 65. Готовый столик с инкрустацией
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение] |
Воспользуемся возможностью анимирования деформаторов для создания анимации пролистывания листов откидного календаря, при которой каждый лист по очереди должен отгибаться примерно на половину. Для ускорения процесса ограничимся тремя листами. Создайте плоскость (ее размер должен соответствовать размеру предполагаемого календарного листа) и в окне каналов увеличьте для нее число разбиений в каждом направлении до 15. Под плоскость подложите полигональный куб — он будет имитировать стопку лежащих друг на друге листов, а под куб — вновь плоскость, которая в нашем демонстрационном примере заменит столешницу стола (рис. 66).
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 66. Исходный вид сцены
Рис. 66. Исходный вид сцены
Выделите верхнюю плоскость, назначьте ей деформатор Bend, в окне каналов поверните последний на 180° вокруг оси X и на 90° вокруг оси Z, а в окне атрибутов установите нижнюю границу воздействия деформатора (LowBound) равной нулю. В итоге направление деформатора совпадет с направлением листа, а сам деформатор будет располагаться в его нижней части (рис. 67). В окне Outliner выделите плоскость календарного листа вместе с Bend-деформатором, объедините их в группу и создайте две копии данной группы: первая копия будет соответствовать второму листу, а вторая — третьему. Выделите Bend-деформатор верхнего листа, в режиме анимации с ручным созданием кадров активируйте первый кадр и откройте редактор атрибутов. При выделенном деформаторе нажмите в поле Curvature (там по умолчанию установлено нулевое значение) правую кнопку мыши и создайте ключ, выбрав из контекстного меню команду SetKey (рис. 68). Перейдите по временной шкале на 30-й кадр, увеличьте кривизну так, чтобы лист отогнулся примерно наполовину, и опять создайте ключ в поле Curvature (рис. 69). Выделите Bend-деформатор среднего листа, активируйте 31-й кадр и создайте в поле Curvature ключ при нулевом значении параметра. Затем перейдите в 50-й кадр, увеличьте значение кривизны и создайте ключ для данного параметра. Аналогичные операции проведите в отношении Bend-деформатора нижнего листа, с той лишь разницей, что первый (при нуле) ключ нужно будет создать в 51-м кадре, а второй — в последнем.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 67. Настройка параметров деформатора
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 68. Создание ключа для 1-го кадра
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 69. Создание ключа для 30-го кадра
Рис. 67. Настройка параметров деформатора
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 68. Создание ключа для 1-го кадра
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 69. Создание ключа для 30-го кадра
Проиграйте анимацию в окне Perspective, нажав комбинацию клавиш Alt+V, — если все сделано правильно, то листы будут последовательно отгибаться. Для большей эффектности откройте редактор материалов и настройте материалы для листов календаря и полигонального куба, имитирующего стопку листов. Подходящие для текстурирования изображения можно создать в любом графическом редакторе — в данном примере для текстурирования первого листа (остальные листы аналогичны — на них лишь другие даты) был использован рис. 70, а куба — рис. 71.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 70. Изображение для первого календарного листа
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 71. Текстура для куба
Рис. 70. Изображение для первого календарного листа
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 71. Текстура для куба
Для сохранения полученной анимации откройте окно настройки параметров визуализации, щелкнув на кнопке RenderGlobals (Общие параметры визуализации) в правом верхнем углу экрана или последовательно применив команды Window=>RenderingEditors=>RenderView (Окно=>Редакторы визуализации=>Просмотр визуализации) и Options=>RenderGlobals (Параметры=>Общие параметры визуализации). Настройте параметры рендеринга в соответствии с рис. 72, указав имя файла (в данном случае animation01), формат расширения (AVI), введя номера первого и последнего кадров и проконтролировав, чтобы визуализировалось изображение в проекции Perspective. Закройте окно диалога RenderGlobals (Общие параметры визуализации). Для визуализации всех кадров анимации перейдите в режим Rendering (для перехода в этот режим можно нажать клавишу F5) и воспользуйтесь командой Render=>BatchRender (Визуализация=>Пакетная визуализация), что приведет к формированию AVI-файла, который по умолчанию будет помещен в папку Мои документы\maya\projects\default\images\. После сохранения проиграйте анимацию в окне Windows-проигрывателя (рис. 73).
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 72. Настройка параметров визуализации
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 73. Демонстрация анимации в окне Windows -проигрывателя
Рис. 72. Настройка параметров визуализации
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 73. Демонстрация анимации в окне Windows -проигрывателя
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение] |
Деформаторы Sine и Wave нередко используются для моделирования водных поверхностей и для их анимации: Sine удобно применять для имитации волн, а Wave — для создания ряби на волнах. Мы ограничимся волнами, которые и попробуем анимировать. В качестве основы для моря создайте NURBS-плоскость с 30 вертикальными и горизонтальными изопармами. Выделите ее, активируйте инструмент SculptSurfacesTool, установите максимальный радиус равным 4, а максимальное смещение — 0,5, загрузите кисть Splat и в режиме Pull обработайте всю поверхность плоскости до нужного эффекта. Аналогичную операцию проведите в режиме Push, что приведет к получению довольно ровной водной поверхности (рис. 74).
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 74. Деформированная плоскость
Рис. 74. Деформированная плоскость
Для создания волн назначьте плоскости деформатор Sine и разверните его на 90° вокруг оси Z (рис. 75). Активируйте редактор атрибутов и измените параметры настройки деформатора в соответствии с рис. 76, причем для параметров Wavelength, Offset и Dropoff изменение значений завершите созданием ключей анимации. Не забудьте перед созданием ключей убедиться в том, что находитесь на первом кадре. Переключитесь на 20-й кадр, подходящим образом (оценить это можно лишь визуально) измените значения параметров Wavelength, Offset и Dropoff и вновь создайте для них ключи (рис. 77). И так далее — чем больше вы создадите ключевых кадров с разными вариантами настроек, тем интереснее и естественнее получится анимация. После создания очередного ключевого кадра проигрывайте анимацию в окне Perspective, чтобы оценить результат и при необходимости произвести коррекцию настроек.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 75. Установка положения деформатора
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 76. Настройка параметров деформатора для 1-го кадра
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 77. Настройка параметров деформатора для 20-го кадра
Рис. 75. Установка положения деформатора
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 76. Настройка параметров деформатора для 1-го кадра
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 77. Настройка параметров деформатора для 20-го кадра
По окончании добавьте к сцене небо, для чего лучше воспользоваться NURBS-сферой — благодаря искривлению ее поверхности небо выглядит более правдоподобно. Создайте сферу очень большого диаметра и поместите ее на заднем плане сцены (рис. 78). Затем назначьте материалы. В качестве материалов для воды был использован Ocean Shader (цветовые оттенки его были изменены), а для оформления неба — растровое изображение (рис. 79). Для сохранения полученной анимации настройте параметры визуализации так же, как это было сделано в предыдущем задании, и проведите пакетный рендеринг (команда Render=>BatchRender). Проиграйте созданную анимацию (рис. 80). Только имейте в виду, что процесс генерации AVI-файла может оказаться длительным (это зависит от аппаратных ресурсов), поэтому, если вы не уверены в результате, при промежуточных рендерингах число кадров лучше ограничивать (параметры Start Frame и End Frame) только теми, которые действительно интересуют вас в данный момент.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 78. Добавление сферы
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 79. Растровое изображение
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 80. Демонстрация анимации в окне Windows-проигрывателя
]Рис. 78. Добавление сферы
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 79. Растровое изображение
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рис. 80. Демонстрация анимации в окне Windows-проигрывателя