maxscript小工具之批量导入模型


前言

不知道小伙伴们工作中有没有遇到这样一个问题,一大串的fbx文件等着你去导入。当时我就在想,能不能全选然后拖入max,一拖搞定。最后max教会了我什么是残酷的现实。但我32斤的反骨告诉我,不能就此认命,不然我就得一遍遍File - import - import o(╥﹏╥)o。刚好我懂一点点程序,翻开我的字典《3ds MaxScript脚本语言完全学习手册》一顿卡卡乱查,预知后事如何,请接着往下看


一、查找资料

功夫不负有心人,查了半小时,查到了这么一玩意儿。


我们把中心思想提取出来

importFile <filename_String> [ #noPrompt ]

importFile ,顾名思义,那不就是导入文件嘛,我心里瞬间乐开了花。直接上了一套组合拳 Ctrl + c , Ctrl + v。威力不解释,直接看结果:
在这里插入图片描述
结果啪啪打我脸!
我再半小时卡卡一顿分析,这应该是报错了。

二、解决问题

后来找了一大神(就是我自己)也算是解决了这个问题。
其实就是参数问题,importFile 是maxscript提供给我们调用的一个函数,然后max软件会帮我们执行这行代码。我们要导入文件,肯定得告诉软件我们要导入的文件路径以及导入的文件格式。
修改如下:

importFile "D:\\test.fbx" #noPrompt

在这里插入图片描述
成功导入!!!
获取文件路径,再套入一个for循环,问题搞定

folderPath = getSavePath caption:"Select Folder" initialDir:(getDir #userScripts)  
fbxFilenames = getFiles (folderPath + "\\*.fbx")

for fbxFile in fbxFilenames do  
(  
    importFile fbxFile #noPrompt  				
) 

三、测试

导出很多个fbx文件拿来做测试
在这里插入图片描述
执行代码,它会先提示你选择一个文件夹,然后就会把在这个文件夹里所有的fbx格式的文件导入进来。:
在这里插入图片描述

真男人从不回头看爆炸。

总结

我只是分享一下我遇到的问题,以及如何解决了这个问题。看到的伙伴们如果是大神级别的,可能会觉得,就这?如果是小白,也要向大神学学习,争取早日成为小黑。

我的问题已经解决,如果有需要的小伙伴,可以回复留言需要导入什么样的格式文件,如果留言过万(那是不可能的),我会根据你们需要的格式包装成一个插件,里面可以选格式导入,max支持的格式都可以,max文件也可以,还有其他常用的3D格式如3ds、fbx。CAD格式的DWG等等。如果有类似插件的小伙伴也希望你能像我一样 慷 慨 的分享一下,在这里我先替大家谢谢你,你真是个好人!
需要字典的可以看看我的另一篇文章 maxscript脚本语言,不想看的直接到文章末尾提取即可

最后还是看一下爆炸吧!!!
导入成功 ,打完收工~~~
在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐