3dmax批量导入obj_一个要批量完成的项目:如何让通过3DMAX脚本语言加快效率

本文介绍了一位开发者如何利用3DMAX的脚本语言提高工作效率,详细阐述了如何通过脚本批量创建、修改和渲染1000个具有不同尺寸和位置的模型。文章涵盖了从创建基本形状(如长方体和四棱锥)到设置材质、贴图、渲染以及导出模型数据的整个过程,适合3DMAX脚本初学者参考。
摘要由CSDN通过智能技术生成

783fc3a95ccf415de735b63863ccefa3.png

前言:

项目太大太复杂,还不能偷懒直接买,那我只能使用3DMAX脚本语言来增加效率了,正好整理出来所有细节,全文大约3500字,请耐心阅读,都是认真整理出来的。

这几天就是有这么个需求,要批量建出1000个在尺寸/相对位置上有所差异,但组装方式比较相似的模型。用来做实验。本来是想在网上买的,哎,果然并不可能买到和需求一样的现成的模型。只好自己来,用3DMAX建模的速度实在是太慢了。这时候就发现了菜单栏上有一个仿佛是脚本语言的东西。

0944605c4a4852070075fa619b502476.png

很好,简直救人于水火之中!当机立断放弃手动建模了。不过网上的maxscript教程参差不齐,很多就是小片段,还不是入门级的,要么又是丢出一大本API让人自己慢慢看。

作为maxscript的新手基础教程,所以写的教程也是自己对着API摸索清楚的超级入门教程。仅供参考。

255a2422e63f6b48c2152c78804dd6ed.png

我的目标是批量建模1000个这样的小房子,长方体是房子主体,四棱锥是屋顶,墙面配置1门,2窗,要能批量贴材质,批量渲染。并且脚本自动计算出各个零件的空间关系,导出文本数据供后续实验,导出渲染截图,保存max文件。

反正感觉基本上都是3dmax里很常用的形状拼接,但需要大批量建模,所以必须靠脚本!

一、第一部分: maxscript的基本用法:

看名字就觉得和javascript有点像,因为我自己以前是写过前端的,所以用的sublime编辑器写这种轻量级脚本。跟那些脚本语言一样,用记事本也可以写。直接在文件夹里创建一个demo.ms文件,自己改后缀为Ms就可以。并不是一定要在3dmax里头写。我是用sublime打开空的demo.ms,直接在3dmax外写代码,然后3dmax内运行代码就可以了。

切到3dmax,菜单- Maxscript- maxscript侦听器。把这个东西打开。(感觉就像一个交互式命令行)

05400616018193d20f0be157d17d5f06.png

在命令行里交互式创建长方体:

侦听器里打一句:

Box()

就会交互式的弹出下面这句话,是创建好的一个空间坐标@在0,0,0的box对象(就是长方体对象)名字是默认的Box001

$Box:Box001 @ [0.000000,0.000000,0.000000]

【我叫你一声Box001你敢答应吗?】【undefine】

试过就知道,虽然这对象名为Box001,但无法直接召唤,需要用$Box001,带上$符号,才能选中对象。

老麻烦了,试试下一种创建Box的方法。

a = Box()

跟其他编程语言一样,定义了一个a变量当它的名字。这样创建的Box,名字还是叫Box002,但我们喊一句“a”他也能选中。

我正式用来创建房体的时候是在脚本文件里写:

house01 = Box name:"house01"

maxscript里头的Box,Pyramid这

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值