Первые шаги в Maya. Урок 25. Работа с модулем Maya Hair

Светлана Шляхтина

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

Примеры создания сцен с использованием Hair-систем

Монстр со стрижкой

Шевелящая щупальцами медуза

Качающиеся на ветру провода

Анимированный телефонный провод

Шевелящая щупальцами медуза

Применим Hair-систему для моделирования и анимирования щупалец медузы. Создайте сцену с двумя Nurbs-поверхностями — торусом и шаром (рис. 44). Удалите у шара нижнюю половину — перейдите в режим работы с изопармами (команда Isoparm из контекстного меню), выделите центральную изопарму (рис. 45), переключитесь в режим Surfaces, примените команду Edit Nurbs=>Detach Surfaces (Редактирование Nurbs-поверхностей=>Отделить поверхность) и удалите отделенную нижнюю половину шара (рис. 46). Увеличьте у торуса число разбиений по оси Y (параметр Spans в окне каналов) до 8. Перейдите в режим работы с изопармами, выделите на нижней поверхности торуса указанную на рис. 47 изопарму и разбейте по ней поверхность при помощи команды EditNurbs=>DetachSurfaces — нижний фрагмент торуса окажется представленным в виде отдельной поверхности (рис. 48).

 

Рис. 44. Исходная сцена

Рис. 44. Исходная сцена

 

Рис. 45. Выделение изопармы на шаре

Рис. 45. Выделение изопармы на шаре

 

Рис. 46. Результат удаления нижнего полушария у шара

Рис. 46. Результат удаления нижнего полушария у шара

 

Рис. 47. Выделение изопармы на торусе

Рис. 47. Выделение изопармы на торусе

 

Рис. 48. Результат вырезания нижнего фрагмента торуса

Рис. 48. Результат вырезания нижнего фрагмента торуса

 

Выделите нижнюю поверхность торуса, переключитесь в режим Dynamics и щелкните на квадратике у команды Hair=>CreateHair. В окне настроек установите параметры U count и V count равными 5, увеличьте параметры Randomization — до 0,5, Pointsperhair — до 20, а Length — до 30 и включите флажок Equalize (рис. 49) — будут созданы щупальца (рис. 50). Запустите проигрывание анимации и дождитесь момента, когда щупальца займут свое естественное положение, полностью опустившись вниз. Запомните данное положение в качестве стартового, выделив все щупальца и применив команду Hair=>SetStartPosition=>FromCurrent.

 

Рис. 49. Настройка Hair-параметров

Рис. 49. Настройка Hair-параметров

 

Рис. 50. Первоначальный вид Hair-кривых

Рис. 50. Первоначальный вид Hair-кривых

 

Переключитесь к редактированию стартового положения (Hair=>Display=>Start Position), выделите все Hair-кривые и примените к ним команду Hair=>Modify Curves=>Bend (Волосы=>Изменить кривые=>Изгиб) с настройками как на рис. 51. Щупальца изогнутся (рис. 52). После этого сгладьте Hair-кривые командой Hair=>ModifyCurves=>Smooth (рис. 53). Примените к щупальцам Curl-модификатор (команда Hair=>Modify Curves=>Curl — Волосы=>Изменить кривые=>Завиток), установив параметры CurlAmount и Curl Frequency равными 0,5 и 1,4 соответственно (рис. 54). Запомните измененное стартовое положение в качестве Rest-положения, воспользовавшись командой Hair=>Set RestPosition=>From Start.

 

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

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

 

Рис. 52. Вид медузы с изогнутыми щупальцами

Рис. 52. Вид медузы с изогнутыми щупальцами

 

Рис. 53. Результат сглаживания щупалец

Рис. 53. Результат сглаживания щупалец

 

Рис. 54. Применение модификатора Curl

Рис. 54. Применение модификатора Curl

 

Выделите все кривые, в редакторе атрибутов раскройте раздел Dynamics и в секции Turbulence увеличьте интенсивность воздействия турбулентной силы (параметр Intensity) примерно до 0,579. Установите текущее положение (Hair=>Display=>Current Position), проиграйте анимацию до понравившегося вида щупалец и сохраните данное положение в качестве стартового (команда Hair=>SetStartPosition=>FromCurrent). Убедитесь при проигрывании анимации, что щупальца шевелятся вполне правдоподобно (рис. 55).

 

Рис. 55. Вид медузы со щупальцами в одном из кадров анимации

Рис. 55. Вид медузы со щупальцами в одном из кадров анимации

 

Выделите все щупальца, переключитесь в режим Rendering и выберите в меню PaintEffects команду GetBrush (Выбрать кисть). В открывшемся окне Visor (Просмотр образцов) в разделе Glows укажите понравившийся образец неонового свечения (рис. 56), вернитесь в режим Dynamics и примените команду Hair=> Assign Paint Effects Brush to Hair. Если на данном этапе визуализировать один из кадров анимации, то увидим, что щупальца текстурированы вполне подходящим образом, а вот прочие элементы нет (что естественно, ведь материала им не назначалось). Можно создать такой материал с нуля, но гораздо проще воспользоваться материалом, использованным для текструирования щупалец. Правда, в явном виде — то есть как материала — его не существует, ведь щупальца созданы в модуле PaintEffects. Но это можно исправить, конвертировав их в полигональный объект. Для этого выделите щупальца и примените к ним команду Modify=>Convert=>Paint Effects to Polygons (Изменить=>Конвертировать=>Paint Effects в полигоны). Откройте редактор материалов и назначьте появившийся там новый материал шару и торусу. По окончании создайте подходящий для медузы фон в виде океанской глади (команда FluidEffects=>Ocean=>CreateOcean — Fluid эффекты=>Океан=>Создать океан). В итоге будет получена задуманная анимации — возможный вид сцены в некоторых ее кадрах показан на рис. 57.

 

Рис. 56. Выбор образца неонового свечения

Рис. 56. Выбор образца неонового свечения

 

Рис. 57. Шевелящая щупальцами медуза

Рис. 57. Шевелящая щупальцами медуза

В начало В начало

Качающиеся на ветру провода

Применим возможности Hair-моделирования для получения слегка качающихся на ветру проводов. Создайте исходную сцену с двумя антеннами (можно обойтись просто двумя вытянутыми по оси Y цилиндрами) и Nurbs-кривыми, на базе которых и будем моделировать провода. Данные кривые сформированы инструментом EPCurveTool, у которого для параметра CurveDegree был установлен вариант «1 Linear» (рис. 58), и имеют достаточное количество вершин (в нашем случае 20), последнее необходимо для получения естественных изгибов проводов. Выделите все кривые и объедините их в группу (команда Edit=>Group) и превратите в Hair-систему, применив команду Hair=>Assign Hair System=>New Hair System. Проиграйте анимацию и убедитесь, что провода пока закреплены лишь с левой стороны (рис. 59).

 

Рис. 58. Исходная сцена

Рис. 58. Исходная сцена

 

Рис. 59. Вид проводов при первоначальной анимации

Рис. 59. Вид проводов при первоначальной анимации

 

Нужно закрепить правые концы проводов. Для этого выделите первый Hair-объект и создайте для него Stick-ограничитель, воспользовавшись командой Hair=>CreateConstraint=>Stick. Переместите данный ограничитель в правый конец провода (рис. 60). Затем аналогичную операцию проведите для всех остальных Hair-объектов (рис. 61). Щелкните на кнопке Play — теперь провода окажутся закрепленными с обеих сторон (рис. 62).

 

Рис. 60. Появление первого Stick-ограничителя

Рис. 60. Появление первого Stick-ограничителя

 

Рис. 61. Вид сцены с четырьмя Stick-ограничителями

Рис. 61. Вид сцены с четырьмя Stick-ограничителями

 

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

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

 

Увеличьте число кадров анимации до ста и внимательно просмотрите, как меняется вид проводов — сразу в глаза бросаются две проблемы: во-первых, провода деформируются практически идентично (что неестественно), во-вторых, явно чрезмерно. Для разрешения первой проблемы подвергнем их воздействию турбулентной силы (секция Turbulence раздела Dynamics), подобрав ее параметры по своему усмотрению (рис. 63). Что касается второй проблемы, то решать ее придется в несколько этапов. Вначале при проигрывании анимации остановите ее на подходящем с точки зрения деформации проводов кадре (рис. 64), выделите провода и зафиксируйте данный кадр в качестве стартового, применив команду Hair=>SetStartPosition=>FromCurrent. Точно также подберите кадр для положения покоя и зафиксируйте его при помощи команды Hair=>Set RestPosition=>FromCurrent. Увеличьте жесткость проводов, установив значение параметра Stiffness (секция Solve раздела Dynamics) равным 1 и изменив форму кривой жесткости в секции StiffnessScale в соответствии с рис. 65 (последнее действие позволит сделать уровень жесткости одинаковым на всем протяжении проводов). Кроме того, визуально ориентируясь по уровню деформации проводов при анимации, увеличьте число итераций (параметр Iterations в секции Solve) до приемлемой величины (мы остановились на значении 40).

 

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

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

 

Рис. 64. Кадр, выбранный в качестве стартового

Рис. 64. Кадр, выбранный в качестве стартового

 

Рис. 65. Настройка параметров жесткости

Рис. 65. Настройка параметров жесткости

 

Теперь осталось сделать провода визуализируемыми. Выделите их и переключитесь в режим Rendering. Откройте окно кистей Paint Effects (команда Paint Effects=>Get Brush), в разделе Metal укажите понравившийся образец (рис. 66), вернитесь в режим Dynamics и примените команду Hair=>AssignPaintEffectsBrushtoHair. Увеличьте масштаб сцены и увидите, что каждый провод состоит из множества отдельных находящихся друг от друга на расстоянии Hair-кривых (рис. 67), чего быть не должно. Поэтому выделите провода и в редакторе атрибутов уменьшите значение параметра Hairs Per Clump (раздел ClumpandHairShape), регулирующего число Hair-объектов в группе, до 1 (рис. 68). Кроме того, нужно отрегулировать толщину проводов (она должна быть одинакова на всем их протяжении) и сделать их более фрагментированными для большей гибкости. Для этого в разделе ClumpandHairShape увеличьте число подсегментов (SubSegments) до 10 и уменьшите ширину Hairs-кривых (HairsWidth) примерно до 0,003. А также превратите кривую на графике в секции HairsWidth Scale в прямую, перетащив правый маркер на ней вверх (рис. 69). Внедрите в сцену подходящий фон и проиграйте анимацию — провода будут покачиваться вполне естественно (рис. 70).

 

Рис. 66. Выбор кисти для текстурирования проводов

Рис. 66. Выбор кисти для текстурирования проводов

 

Рис. 67. Вид сцены в увеличенном виде

Рис. 67. Вид сцены в увеличенном виде

 

Рис. 68. Уменьшение значения параметра HairsPerClump

Рис. 68. Уменьшение значения параметра HairsPerClump

 

Рис. 69. Дополнительная корректировка параметров раздела ClumpandHairShape

Рис. 69. Дополнительная корректировка параметров раздела ClumpandHairShape

 

Рис. 70. Качающиеся на ветру провода

Рис. 70. Качающиеся на ветру провода

В начало В начало

next

КомпьютерПресс 9'2008

Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует