命令行执行脚本

时间:2022-11-08 23:47:32

3ds Max 可以直接在命令行中输入 MAXScript 命令。从 DOS 命令行启动 3ds Max 后,可以运行指定的启动脚本。这对自动批处理渲染这样的任务来说非常有用。当启动 3ds Max 时,该功能使用 -U 命令行切换命名一个要运行的工具。-U 切换使用一个可选的外部参数,对 MAXScript 来说,该参数是要运行的脚本名。必须将 MAXScript 的大小写(大写)按以下示例中所示显示(打开 CD 后进入程序目录): 3dsmax -U MAXScript rendercams.ms 此示例命令行将启动 3ds Max 可执行文件,启用 MAXScript,然后让其运行启动脚本 rendercams.ms。 在下例中,启动脚本加载两个场景,从各自的摄影机进行帧渲染,然后退出 3ds Max: loadMaxFile "foo.max" for c in cameras do render camera:c outputfile:("foo_"+c.name+".bmp") loadMaxFile "baz.max" for c in cameras do render camera:c outputfile:("baz_"+c.name+".bmp") quitMax #noPrompt 在该例子中当脚本调用结束时,使用 quitMax() 方法退出 3ds Max。启动脚本不一定是本例中的批处理脚本,但可以作为条件 3ds Max 交互使用,例如加载一个场景文件并设置一些用户界面选项。 通常的启动脚本为startup.ms 以及位于 \scripts\startup 目录中的其他脚本文件,在启动脚本之前运行。也可以在单独的场景文件中添加脚本,当场景打开或关闭或遇到其他事件的时候自动运行这些脚本。 注意在 3ds Max 完全启动之后且标准脚本和启动脚本已运行后,运行命令行 -U MAXScript 启动脚本。 MAXScript 命令行开关 下面开关专门使用 MAXScript 文件和功能。 开关 效果 -mip 以最小化模式启动 3ds Max – 但绝不会允许您打开交互使用的窗口。 -mxs 该切换本质上与-U MAXScript file.ms 相同,但取消了必须为 .ms 文件的限制。可以遵照具有 MAXScript 命令的开关。 -silent 与 MAXScript 命令相比,setSilentMode 开关会取消所有 MAXScript 和 3ds Max UI 对话框,以使 -U 命令指定的批处理脚本不被中断。 -u MAXScript <文件名> 打开指定的 MAXScript 文件。 语法示例: 3dsmax.exe -silent -mxs "for c in cameras do render c outputFile:(c.name + ".bmp") vfb:off " file.max 此示例将以无提示模式启动 3ds Max,打开 file.max 并将每个摄影机视图渲染为 BMP 文件,但不显示渲染帧窗口。 3dsmax.exe -q -mi -U MAXScript \\server1\folder\myScript.ms \\server2\folder\file.max 该示例在最小化状态中启动 3ds Max 后抑制初始屏幕,网络服务器打开 file.max 并运行另一个服务器上的 myScript.ms。如果 myScript.ms 包含第一个示例中的相同命令,那么这两个示例将得到相同的结果。 3dsmax.exe -q -silent -mip -mxs "for c in cameras do render c outputFile:(c.name + ".bmp") vfb:on; quitMAX() #nopromptfile.max" file.max 最后一个示例会在以无提示模式和永久最小化状态启用 3ds Max 时取消启动屏幕,打开 file.max,将每个摄影机视图渲染为显示渲染帧窗口的 BMP 文件,然后退出 3ds Max。