Как расширить функционал 3ds Max с помощью Max Creation Graph
Александр Бакушкин
Автор — менеджер по продуктам Media & Entertainment, компания Softline
Привет! В данной статье мы расскажем вам об инструменте 3ds Max для процедурного моделирования – Max Creation Graph.
Что такое процедурное моделирование и почему стоит обратить на него внимание?
Процедурное моделирование является “non-destructive” и позволяет менять параметры объекта или модификатора в любое время. К тому же, благодаря интерфейсу, основанному на нодах (далее я более подробно расскажу, что это такое), вы легко сможете менять созданные процедуры, а также расширять функционал 3ds Max.
Что собой представляет интерфейс, основанный на нодах? Примерно следующее:
Каждый блок, который вы видите на картинке, является нодой или определённым параметром, функцией, которую мы закладываем в создаваемую «программу».
Создание функции параметрической лестницы
Для более полного понимания принципов нод сделаем функцию, которая позволит нам создавать в любой момент времени и в различных сценах лестницу с настраиваемыми параметрами длины, высоты и количества ступенек, как на картинке ниже:
Итак, первым делом откроем редактор Max Creation Graph: в главном меню 3ds Max в разделе Scripting выберите Max Creation Graph Editor. Появится следующее окно:
Теперь давайте добавим первую ноду в нашу функцию:
Для быстрого добавления нод в редактор нажмите клавишу X и в открывшемся меню введите команду Output: Geometry. После применения данной команды в редакторе мы увидим первую ноду:
Эта нода будет последней в нашей структуре функции и добавит кнопку создания объекта в меню Create > Geometry > Max Creation Graph.
Для нашей лестницы необходимо будет контролировать количество ступеней с помощью ноды Tool Input: Integer node. Данный параметр будет находиться в меню создания лестницы с именем «Количество»:
Далее соединим ноду «Количество» с новой нодой 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 обычно очень полезна для начала работы с элементами, которые повторяют что-то в определённом диапазоне значений.
Далее нам необходимо указать общую длину и высоту лестницы. Для этого мы используем две ноды Tool Input: Float, которые соединим с нодой Vector from XZ:
Чтобы представить этот вектор в виде последовательности промежуточных значений, соединим его с нодой Multiply Vector, а параметр value – c нодой Array of Floats Inclusive. Обратите внимание, что соединение массива десятичных чисел и параметра value ноды Multiply Vector принудительно меняет результат ноды Multiply Vector на массив.
Далее нам необходимо создать одну ступеньку будущей лестницы. Используем ноду Tool Input: Vector для определения X, Y, Z размеров ступеньки. Затем разделим этот вектор на три отдельных параметра с помощью нод Vector X, Vector Y, и Vector Z. Сам примитив ступеньки будет создан после создания ноды Box Mesh Primitive.
Чтобы разместить каждую ступеньку на нужную позицию, соединим её с нодой Offset Mesh. Также необходимо соединить входное значение vector ноды Offset Mesh с результатом ноды Multiply Vector. Такое соединение нод будет генерировать массив ступеней.
Чтобы сконвертировать массив объектов в единый объект, используем ноду Attach All Meshes и далее соединим её с нодой Output: Geometry.
Далее сохраним нашу функцию путём нажатия Ctrl+S – откроется диалоговое окно сохранения. Укажите в поле Tool Name имя «Лестница» и нажмите Save As… Стандартное размещение файлов функций находится по адресу C:\Users\*имя пользователя*\Autodesk\3ds Max 2020\User Tools\Max Creation Graph\Tools
Далее нам необходимо запустить созданную нами функцию. Для этого нажмите Ctrl+E, в логах редактора вы увидите, что скрипт запущен успешно.
Чтобы создать лестницу, в меню Create > Geometry > Max Creation Graph выберите объект с именем «Лестница», кликните в любой точке рабочего пространства для создания объекта. Теперь мы можем менять параметры лестницы.
Выводы
Таким образом, мы рассмотрели простейший пример применения процесса моделирования, основанного на нодах. Как я уже упоминал в начале статьи, с помощью Max Creation Graph можно не только создавать процедурные объекты. Он позволяет расширять функционал 3ds Max, создавая новые комплексные функции, которые раньше можно было реализовать только с помощью знания принципов программирования и Max Script в частности. Max Creation Graph же, в свою очередь, обладает дружественным интерфейсом и практически не имеет ограничений в применении нод.
Действительно, в большинстве публикаций по СИ отсутствует учет особенностей производства. Много внимания управлению требованиями. И производство должно их сформулировать, но часто этого нет. Не...
Разрешите поинтересоваться, при чем тут учет особенностей производства? При правильном определении требований нюансы производства должны фиксироваться как ограничения и попадать в спецификацию...
Приглашаем публиковать на сайте isicad.ru новости и пресс-релизы о новых
решениях и продуктах, о проводимых мероприятиях и другую информацию. Адрес для корреспонденции - info@isicad.ru
Проект isicad нацелен на
укрепление контактов между разработчиками, поставщиками и потребителями
промышленных решений в областях PLM и ERP...
У Николенко есть ссылка на Аирбас, где есть ограничения на уровень технологии при проектировании.
Реализация MBSE-подхода при проектировании сложной продукции в PLM-решении АСКОН
Действительно, в большинстве публикаций по СИ отсутствует учет особенностей производства. Много внимания управлению требованиями. И производство должно их сформулировать, но часто этого нет. Не...
Реализация MBSE-подхода при проектировании сложной продукции в PLM-решении АСКОН
Разрешите поинтересоваться, при чем тут учет особенностей производства? При правильном определении требований нюансы производства должны фиксироваться как ограничения и попадать в спецификацию...
Реализация MBSE-подхода при проектировании сложной продукции в PLM-решении АСКОН