3DsMax Запускает скрипт python из интерфейса командной строки с аргументами

#python #command-line-interface #3dsmax #maxscript

Вопрос:

Я написал скрипт на Python для автоматизации некоторых задач в 3DsMax 2018. Скрипт принимает 2 параметра / аргумента для работы по мере необходимости. Более конкретно, имя входного и выходного пути.

Я запускаю скрипт из командной строки со следующей командой, и все работает нормально:

 3dsmax.exe -U PythonHost C:UsersuserDesktopScript.py
 

Но когда я передаю аргументы, они не распознаются сценарием / 3DsMax:

 3dsmax.exe -U PythonHost C:UsersuserDesktopScript.py test
 

Я проверил входящие аргументы print(sys.argv) , но в качестве аргумента указан только путь к скрипту python. Есть ли способ передачи аргументов в cli?

Ответ №1:

Я сам это понял, если у кого-то еще есть эта проблема, вот что я выяснил. Чтобы добавить какие-либо параметры, вам необходимо использовать 3dsmaxbatch.exe.

Мой пример будет выглядеть так:

 3dsmaxbatch.exe C:UsersuserDesktopScript.py -mxsString string1:"test"
 

Документация 3dsMaxbatch была очень полезна для определения возможных вариантов интерфейса командной строки.

https://knowledge.autodesk.com/support/3ds-max/learn-explore/caas/CloudHelp/cloudhelp/2019/ENU/3DSMax-Batch/files/GUID-48A78515-C24B-4E46-AC5F-884FBCF40D59-htm.html