如何创建一个.bat文件来启动Maya并在启动时使用EvalFerred调用python脚本?

2024-09-30 04:35:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试运行python脚本,当打开.bat文件以启动Maya时,该脚本会在Maya中创建自定义菜单。python脚本不在Maya项目中,我想在批处理文件中添加路径。我在.bat文件中有以下内容:

start D:\TOOLS\Maya2019\bin\maya.exe -command evalDeferred(python('execfile(\"D:\CustomMenu_startup.py\")'))

已经尝试了几次,但返回了语法错误


Tags: 文件项目路径脚本bin菜单toolsexe
2条回答

我建议,作为一项规则,最好将延迟的计算推进python本身。这样,您就不必在所有3种语言(BAT、MEL和Python)中考虑它

在主Maya事件循环开始之前,您还可以执行部分工作,这将节省一些启动时间。在触摸Maya UI或场景之前,EvalDerred是安全的选择,但您可能有其他工作(如下载文件或检查用户的磁盘)这可以在Maya本身仍在加载时安全完成。这是在Python中而不是在最外层的MEL调用中执行延迟部分的另一个原因

如果您对生成这样的启动器感兴趣,您可以简单地分发mel文件而不是BAT;Maya可以将MEL作为文件参数执行,因此命令行变得更简单,如果设置了正确的文件关联,则可以双击MEL

您可能还想查看以下关于如何为Maya创建python启动器的博客文章: https://theodox.github.io/2018/pythonception#pythonceptionhttps://theodox.github.io/2018/keystone#keystone

通过以下方式解决:

start D:\TOOLS\Maya2019\bin\maya.exe -command evalDeferred(python(\"execfile('D:\\CustomMenu_startup.py')\"))

相关问题 更多 >

    热门问题