MaxPlus Python - 3Ds Max - Добавить модификатор Worldspace
Я пытаюсь выучить MaxPlus/Python в 3Ds Max, и я застрял в создании модификатора мирового пространства. (Модификатор привязки пути деформации WSM)
mod = MaxPlus.Factory.CreateWorldSpaceModifier(MaxPlus.ClassIds.PathDeformSpaceWarp)
MaxPlus.ModifierPanel.AddToSelection(mod)
Выше код дает следующую ошибку:
File "C:\Program Files\Autodesk\3ds Max 2017\MaxPlus.py", line 30534, in CreateWorldSpaceModifier
return _MaxPlus.Factory_CreateWorldSpaceModifier(*args)
RuntimeError: creation failure
Не уверен, почему это происходит, может быть, неправильный идентификатор класса? Добавление модификаторов пространства объектов работает как шарм.
Мой текущий обходной путь использует новые pymxs:
# pymxs part
rt.execute("meshObj=$")
rt.modpanel.addmodtoselection(rt.SpacePathDeform())
rt.meshObj.modifiers[0].path = rt.s
Но это кажется действительно хакерским. Есть идеи?
1 ответ
Достаточно близко, здесь вы идете:
mod = MaxPlus.Factory.CreateWorldSpaceModifier(MaxPlus.Class_ID(0x000110b4, 0x00007f9e))
MaxPlus.ModifierPanel.AddToSelection(mod)
Помимо поиска #define в SDK, вы можете получить classID, например, получив свойство classID существующего объекта. $.modifiers[1].classID
,