Очередную статью цикла начнем хорошей новостью вышел update 3D Studio Max 5.1 (см. 3D-новость «Примеряем обновки», МК № 5 (228)). Как показала практика, этот патч убирает большое количество ошибок, и производительность программы в целом существенно возрастает. К тому же пакет 3D Studio Max 5.1 по-прежнему совместим с большинством плагинов, написанных под четвертую версию. Так что, если вы еще не успели обновить Макс, вот ссылка: ftp://ftp1.discreet.com/web/support/3dstudio/3dsmax_51_Update.exe. Сегодня мы рассмотрим некоторые плагины, которые, надеемся, будут полезны всем, работающим в Максе.
Splash!
Начнем с плагина Digimation Splash! (http://www.digimation.com). Он добавляет два объекта, которые можно увидеть здесь:
Splash! предназначен для имитации волн на водной поверхности, вызванных падением тела в некоторую жидкость, или для воспроизведения следа от плавающего объекта (например, от проплывающего корабля). Работа Splash чем-то напоминает специфику плагина Fragile (cм. МК № 26 (197)). Как и Fragile, он не производит точных вычислений динамики сцены, поэтому все настройки условные (рис. 1).
Приведем пример работы плагина. Чтобы получить эффект падающего в воду тела, необходимо проделать следующие действия. Во-первых, при помощи кнопки Splash!Max создать поверхность Pool (она будет имитировать поведение водной поверхности). Большая часть настроек Pool Mesh сопровождается схематическими пояснениями, так что трудностей с определением, какой параметр за что отвечает, у вас возникнуть не должно.
Над созданной плоскостью размещаем объект категории Helpers I-Stone, который предназначается для воспроизведения эффекта всплеска жидкости. Теперь при помощи ключевых кадров остается анимировать «полет» I-Stone и указать в настройках объекта Pool (свиток Setup кнопка Select Stones). Падающее тело выравниваем и привязываем с I-Stone. Нажав кнопку проигрывания анимации, можно увидеть плагин Splash! в действии модель пройдет сквозь поверхность Pool и оставит после себя расходящиеся круги.
Заметим, что настройки Pool Mesh очень капризны, и зачастую не удается избежать эффекта «цунами», когда расходящиеся волны не затухают, а наоборот, начинают расти. Следует помнить, что для нормального поведения воды нужно правильно подбирать соотношение параметров Pool. Так, чем большее значение имеет Mesh Density (разрешение), тем больше должен быть параметр Damping Ripples (затухание колебаний волн) и меньше SpeedRipples (скорость распространения волн).
Другой эффект, достигаемый при помощи этого плагина, эффект следа на воде от проплывшего корабля (кильватер). Принцип создания сцены тот же, единственное отличие в том, что вместо I-Stone используется другой вспомогательный объект W-Stone.
Водная поверхность совсем не обязательно должна быть прямоугольной. Для того чтобы придать ей иную форму, воспользуемся кнопкой Select Mask. После этого создаем объект типа Editible Mesh такой формы, чтобы контуры будущего водоема оказались «вырезанными» в редактируемой сетке. Теперь выравниваем Editible Mesh с объектом Pool в плоскости XY (координата Z в данном случае не играет роли, созданная плоскость может быть расположена над или под объектом Pool), нажимаем кнопку Select Mask (выбрать маску) и указываем ее в сцене. Чтобы увидеть результат, нажимаем кнопку Use Mask. Если необходимо изменить положение маски, нужно передвинуть Editible Mesh и нажать Update Pool.
Deep Valley
С помощью плагина Deep Valley от CoreVision (http://www.ann.hi-ho.ne.jp/inforest) вы сможете создать реалистичные горы и возвышенности. Данный плагин устанавливается почти также, как и Darwin (см. МК № 24 (195)), поскольку тоже является скриптом. Для инсталляции нужно выполнить следующие действия: перейти на закладку Utilities командной панели, далее поочередно нажать на кнопки MaxScript и RunScript, и наконец выбрать файл deepvalley.mse.
После запуска скрипта появится окно, где нужно нажать кнопку Create DeepValley Object. В окне проекции возникнет объект, который будет выполнять роль гор. Если попытаться создавать такой объект вручную, то на это уйдет очень много времени. В этом можно убедиться, перейдя на закладку Modify (там перечислены модификаторы, которые скрипт использовал при формировании гор).
Одновременно с созданием объекта вы получаете в свое распоряжение свиток с многочисленными настройками объекта.
Если нажать кнопку Start Calculation Erosion (свиток Erosion), горы станут еще реалистичнее, поскольку им будет присвоено свойство эрозии. Однако прежде чем это делать, необходимо разобраться с настройками объекта. Так, например, если увеличить количество сегментов в свитке Object, горы будут прорисованы с большей точностью.
Свиток Generator отвечает за алгоритм генерации объекта. С его помощью можно создавать горы самой различной формы.
После того как вы придадите объекту нужную форму, необходимо наложить текстуру. Плагин предоставляет и такую возможность. В комплект его поставки входит библиотека высококачественных материалов DeepValleyMaterials.mat.
Power Booleans от nPowerSoftware (http://www.npowersoftware.com) это альтернатива стандартному алгоритму просчета булеановских объектов в 3D Studio Max. После установки он появится по такому адресу: Командная панель > закладка Create > категория Geometry > строчка CompoundObjects > кнопка PwrBoolean. Это плагин является настолько удачным решением, что, на наш взгляд, он должен быть установлен у каждого любителя 3D-моделирования. Power Booleans устраняет ошибки, возникающие с геометрией булевых операций в 3D Studio Max. Принцип работы плагина основан на том, что он собирает мета-информацию о каждом геометрическом объекте и убирает невидимые топологические грани перед самой операцией. Такой подход позволяет создавать модели с улучшенной геометрией, в результате меньше полигонов, меньше граней, меньше треугольников и лучше модель.
При использовании стандартного булеановского объекта могут возникнуть проблемы с корректным нанесением текстуры. Если вы работаете с Power Booleans, такого никогда не случится. Углубляться в настройки плагина нет смысла, потому что большинство из них очень просты и аналогичны параметрами стандартного объекта Boolean (рис. 2).
Rubik’s Cube Animator
В середине восьмидесятых годов во всем мире начался настоящий бум вокруг головоломки кубик Рубика. Проводились даже чемпионаты по сборке этой игрушки, а подарить кубик Рубика можно было не только ребенку, но и академику. Головоломка «пролазила» в кино, книги, на телевидение, одним словом, становилась всенародной.
Для того чтобы смоделировать кубик Рубика в 3D Studio Max, особых усилий не требуется это можно сделать при помощи нескольких стандартных примитивов box. Однако на это потребуется какое-то время. Разработчики EffectWarе (http://www.effectware.com) уже сделали эту работу за нас. Бесплатный плагин Rubik’s Cube Animator поможет создать головоломку одним нажатием мышки.
Для начала нужно извлечь плагин из дебрей интерфейса Командная панель > закладка Utilities > кнопка More… > строчка Rubik’s Cube Animator. Теперь нажимаем на кнопку Create, и объект появляется в окне проекции. Числовое значение Size определяет размер кубика, Сhamfer скос грани каждого составляющего элемента.
Для того чтобы нанести текстуру на каждую из сторон кубика, необходимо установить значение цвета для всех граней или выставить для каждой грани свой рисунок при помощи соответствующих кнопок: Left, Right, Bottom, Top, Frame, Front, Back. Обратите внимание, что назначать текстуры нужно перед созданием объекта.
Группа настроек Animation позволяет анимировать кубик Рубика. Пользователь может задать число поворотов (Count), а также количество кадров, отведенное на каждое действие (Step). Для получения анимации собирающегося кубика нажмите кнопку Solve Animation.
Как порой вместо стандартного булеановского объекта имеет смысл использовать Power Booleans, так иногда можно отдать предпочтение плагину Scalpel от Cebas Computer (http://www.cebas.com) перед модификатором Slice.
Напомним, что модификатор Slice служит для разрезания сетчатой оболочки объекта на две части. Основное преимущество Scalpel состоит в использовании метода Best Guess, позволяющего создавать цельные сечения объектов (в то время как Slice формирует полые). В отличие от стандартного модификатора, у плагина больше настроек, что обеспечивает лучший результат (рис. 3). Среди возможностей Scalpel создание сплайна на основе сечения объекта. Для этого в опциях плагина нужно отметить «галочку» Shape.
Плагин Grow от Digimation (http://www.digimation.com) тоже напоминает стандартный модификатор Slice. Однако он имеет гораздо больше возможностей и настроек. Эта программа была разработана для того, чтобы было легче моделировать процесс роста органических объектов. Так, например, используя данный модификатор, ничего не стоит сымитировать рост травы и деревьев. Однако Grow можно использовать не только для анимации, но и для создания моделей.
Настройки плагина расположены в свитке Parameters. Параметр Growth изменяется от нуля до единицы. При значении 1 объект имеет полный рост, при значении 0 его высота равна нулю. Направление роста определяется группами параметров Start From и Grow Path. Кроме манипуляций с растительностью, с помощью Grow можно создавать интересные эффекты, например, эффект неожиданного возникновения объекта.
Следующий плагин под названием Blur Decay Noise представляет собой усовершенствованный стандартный модификатор Noise (рис. 4). Программисты Blur Studio (http://www.blur.com) добавили к настройкам Noise параметр затухания Decay.
Свиток Parameters содержит настройки, аналогичные Noise: прилагаемую силу вдоль каждой из осей (StrengthX, Y, Z), возможность анимации шума (опция Animate Noise), создание фрактального шума (опция Fractal). Параметр Decay имеет два значения Start и End, которые позволяют указать ближнюю и дальнюю границу затухания.
Напомним, что настройки Blur Decay Noise, как и многих других подобных модификаторов, дублируют параметры объемных деформаций (spacewarps). Программу можно бесплатно скачать по адресу http://www.max3d.com/plugins/r4/blurdecay.zip.
Плагин GhostTrails от Andrew Reid (http://www.snotmonster.com) позволяет воссоздать эффект, чем-то напоминающий эффект постобработки Motion Blur. Данный модификатор применяется к объектам категории Shape. Если он работает c движущимися объектами данного типа, будет оставаться след в виде поверхности, созданной методом Extrude (выдавливание). GhostTrails поможет смоделировать сцену, в которой присутствует движущийся светящийся объект. Если применить модификатор, этот объект будет оставлять «хвост». При этом очень важно выбрать для «хвоста» соответствующую текстуру.
Настройки GhostTrails определяются тремя значениями. С помощью Frames регулируется количество кадров, во время которых будет отображаться «хвост». Segments и Spline Steps отвечают за степень разрешения поверхности («хвоста»), образованной методом Extrude. Опция Flip Normals обращает нормали, в результате чего стороны поверхности меняются местами. Это может пригодиться при работе с текстурами, если поверхность имеет неодинаковую фактуру с разных сторон.