isicad.ru :: портал САПР, PLM и ERP :: версия для печати

Статьи

31 июля 2019

Как расширить функционал 3ds Max с помощью Max Creation Graph

Александр Бакушкин

Александр Бабушкин

Автор — менеджер по продуктам Media & Entertainment, компания Softline

Привет! В данной статье мы расскажем вам об инструменте 3ds Max для процедурного моделирования – Max Creation Graph.

Что такое процедурное моделирование и почему стоит обратить на него внимание?

Процедурное моделирование является “non-destructive” и позволяет менять параметры объекта или модификатора в любое время. К тому же, благодаря интерфейсу, основанному на нодах (далее я более подробно расскажу, что это такое), вы легко сможете менять созданные процедуры, а также расширять функционал 3ds Max.

Что собой представляет интерфейс, основанный на нодах? Примерно следующее:

3ds Max Max Creation

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

Создание функции параметрической лестницы

Для более полного понимания принципов нод сделаем функцию, которая позволит нам создавать в любой момент времени и в различных сценах лестницу с настраиваемыми параметрами длины, высоты и количества ступенек, как на картинке ниже:
3ds Max Max Creation

Итак, первым делом откроем редактор Max Creation Graph: в главном меню 3ds Max в разделе Scripting выберите Max Creation Graph Editor. Появится следующее окно:
3ds Max Max Creation

Теперь давайте добавим первую ноду в нашу функцию:

Для быстрого добавления нод в редактор нажмите клавишу X и в открывшемся меню введите команду Output: Geometry. После применения данной команды в редакторе мы увидим первую ноду:

3ds Max Max Creation

Эта нода будет последней в нашей структуре функции и добавит кнопку создания объекта в меню Create > Geometry > Max Creation Graph.

Для нашей лестницы необходимо будет контролировать количество ступеней с помощью ноды Tool Input: Integer node. Данный параметр будет находиться в меню создания лестницы с именем «Количество»:

3ds Max Max Creation

Далее соединим ноду «Количество» с новой нодой Array of Floats Inclusive. Это позволит генерировать массив десятичных чисел между значениями 0.0 и 1.0 включительно. Так как значение ноды «Количество» по умолчанию 16, массив значений будет иметь 16 элементов, например: {0, 0.067, 0.133, 0.2, 0.266, 0.333, 0.4, 0.467, 0.533, 0.6, 0.667, 0.733, 0.8, 0.867, 0.933, 1.0}.

Генерация значений от 0.0 до 1.0 обычно очень полезна для начала работы с элементами, которые повторяют что-то в определённом диапазоне значений.

3ds Max Max Creation

Далее нам необходимо указать общую длину и высоту лестницы. Для этого мы используем две ноды Tool Input: Float, которые соединим с нодой Vector from XZ:
3ds Max Max Creation

Чтобы представить этот вектор в виде последовательности промежуточных значений, соединим его с нодой Multiply Vector, а параметр value – c нодой Array of Floats Inclusive. Обратите внимание, что соединение массива десятичных чисел и параметра value ноды Multiply Vector принудительно меняет результат ноды Multiply Vector на массив.
3ds Max Max Creation

Далее нам необходимо создать одну ступеньку будущей лестницы. Используем ноду Tool Input: Vector для определения X, Y, Z размеров ступеньки. Затем разделим этот вектор на три отдельных параметра с помощью нод Vector X, Vector Y, и Vector Z. Сам примитив ступеньки будет создан после создания ноды Box Mesh Primitive.
3ds Max Max Creation

Чтобы разместить каждую ступеньку на нужную позицию, соединим её с нодой Offset Mesh. Также необходимо соединить входное значение vector ноды Offset Mesh с результатом ноды Multiply Vector. Такое соединение нод будет генерировать массив ступеней.
3ds Max Max Creation

Чтобы сконвертировать массив объектов в единый объект, используем ноду Attach All Meshes и далее соединим её с нодой Output: Geometry.

Далее сохраним нашу функцию путём нажатия Ctrl+S – откроется диалоговое окно сохранения. Укажите в поле Tool Name имя «Лестница» и нажмите Save As… Стандартное размещение файлов функций находится по адресу C:\Users\*имя пользователя*\Autodesk\3ds Max 2020\User Tools\Max Creation Graph\Tools

3ds Max Max Creation

Далее нам необходимо запустить созданную нами функцию. Для этого нажмите Ctrl+E, в логах редактора вы увидите, что скрипт запущен успешно.

Чтобы создать лестницу, в меню Create > Geometry > Max Creation Graph выберите объект с именем «Лестница», кликните в любой точке рабочего пространства для создания объекта. Теперь мы можем менять параметры лестницы.

3ds Max Max Creation

Выводы

Таким образом, мы рассмотрели простейший пример применения процесса моделирования, основанного на нодах. Как я уже упоминал в начале статьи, с помощью Max Creation Graph можно не только создавать процедурные объекты. Он позволяет расширять функционал 3ds Max, создавая новые комплексные функции, которые раньше можно было реализовать только с помощью знания принципов программирования и Max Script в частности. Max Creation Graph же, в свою очередь, обладает дружественным интерфейсом и практически не имеет ограничений в применении нод.

Все права защищены. © 2004-2024 Группа компаний «ЛЕДАС»

Перепечатка материалов сайта допускается с согласия редакции, ссылка на isicad.ru обязательна.
Вы можете обратиться к нам по адресу info@isicad.ru.