3DMAX 批量 场景 对象 导出 .X格式 脚本
一、首先你需要下载一个 Total Commader文件管理软件。利用这个软件你可以收集文件夹下包含子文件夹下的max文件(或完整路径)
打开TotalCMD后使用查找文件:(如图红框中的操作)
1.
2.
3.
复制文件名和完整路径后粘贴到文本文件中并保存为如"maxFiles.txt"
二、脚本代码:
//使用导出.x文件前请先安装导出.x文件的插件,如:PandaDirectXMaxExporter
//使用脚本前先设置好导出.x文件的相关参数,具体设置在max文件里找到导出.x文件的UI配置中。
-------------------------------------
- fn HandleMax obj=
- (
- --有必要可以优化一下材质
- --........
- obj_name=obj.name
- filepath = maxfilepath
- --输出这个文件成一个.x文件
- exportfile (filepath + obj_name+".x") #noprompt
- )
- ---------------------------------------
- --main()
- global allmaxFileNames =#()
- --打开的是上一步新建的文本文件,里面是max完整路径
- allmaxFilename = openFile "maxFiles.txt"
- while not(eof allmaxFilename) do
- (
- iline = readLine allmaxFilename
- append allmaxFileNames iline
- )
- close allmaxFilename
- --开始遍历收集到的每一个max文件
- for maxfile in allmaxFileNames do
- (
- loadmaxfile maxfile --打开max文件
- max select all
- ungroup $selection
- for obj in objects do
- (
- HandleMax obj--导出每一个物体 )
- resetMaxFile #noPrompt--重置max软件
- )
- quitMax #noPrompt--退出max程序
(编辑了好多次,代码还是乱的。)
------------------------------
三、最后新建一个文本文件。
文本文件的内容为:echo 使用说明:构造maxFiles.txt,确保max文件执行路径正确
(含引号)"D:\Program Files\Autodesk\3ds Max 2010\3dsmax.exe“(空格)-U(空格)MAXScript aaa.ms
解释:以上为cmd命令,第一个参数为max的安装路径,第二个参数为执行的脚本命令,第三个参数为你保存的脚本插件的文件名。具体详细说明请参考max脚本帮助文档。
写好内容后并保存为***.bat。例如”expotXFile.bat“
----------------------
四、把以上一,二,三步那件的三个文件(*.ms、*.txt、*.bat)放在同一个目录下(一定)。然后直接双击***.bat文件。等待.x文件的导出,结果在max文件夹下可找到对应的.x文件。本人只是粗略的测试了一下代码,可以导出.x文件(批量)。具体使用得出的结果等待LZ的反馈。谢谢使用~!
五、以上内容非转摘。属于本人原创,阅读者可以复制粘贴使用。不能用于商业用途。谢谢!
--Yvi
----------------------------------------附件分隔线-----------------------------------
[attach]导出.x文件[/attach]