MAXScript是3ds Max内置的脚本语言,它展现的是-个崭新的动画设计世界。MAXScript不仅提高了动画创作的品质,使其看上去更加完美,还能够实现3ds Max传统交互操作很难实现的效果,也大大提高了工作的效率。
MAXScript在游戏特效制作中也起到了很重要的作用。例如,将做好的游戏特效导入游戏引擎中,发现特效很大或是很小,要解决这个问题,有两种方法,第-就是在3ds Max中对特效进行缩放,第二就是在引擎中通过编写脚本进行缩放,其中第一种方法比较麻烦, 第二种很便捷。另外,使用MAXScript也可以控制游戏特效在引擎中的颜色,以及整体的缩放、旋转和移动等。
下面我们就来学习一下MAXScript的基础操作吧!
1.创建对象
创建对象的方法有以下两种。
方法1:
01 打开MAXScript Listener面板, 键入以下程序。
box length:50 width:50 height:50
02 按Enter键执行程序,然后在MAXScript Listener显示区显示创建对象的位置信息,如下图(左)所示;创建的BOX如下图(右)所示。

对话框中会出现盒子的名字“Box001” , 这是默认的名字。box length:50 width:50 height:50这- -行代码就是一个box构造器,它创建了-一个长度为50、宽度为50、 高度为50的box。
构造器由两部分组成,类名和创建参数。整个构造器就是-个函数调用,函数名box是基类的名字,创建参数由参数名后加一个冒号“:”和参数值组成。
NOTE:由于3ds Max版本不同,创建的BOX名称是有区别的,低于3ds Max 2011的版本,其对话框中会以“Box01" 作为创建盒子的默认名称。
方法2:
如果调用函数没有输入任何参数,那么必须在类名后加上一对“( )”括号,这样才能创建缺省参数的BOX。
01 键入以下程序:
mybox= box ( )
02 按Enter键执行代码,如下图(左)所示,同样创建了一个BOX,如下图(右)所示。

2.改变对象
改变对象是改变对象所具有的特性,统称为对象的属性( Properties),如改变BOX的长度、宽度、名字、线框颜色半径等,访问对象属性的语法是由对象的路径名( PathName)后加上点“." 和属性名组.成的,路径名由美元符号$后加上对象在场景中的名称组成,$表示当前场景。
例1:访问属性参数
01 键入以下代码:
box length: 100 width: 100 height:10
02 执行代码,如下图(左)所示;创建的BOX如下图(右)所示。

03 要访问BOX的高度,可键入以下代码: :
$box001.height
04 执行代码,返回高度值为10.0, 如下图所示。

例2:改变线框颜色
01 键入以下代码:
$box001.wirecolor-blue
02 执行代码,如下图(左)所示; BOX的线框颜色发生了改变,如下图(右)所示。

例3:改变属性
01 键入以下代码:
$Box001.height = 50
02 执行代码,返回50,如下图(左)所示;改变后的BOX如下图(右)所示。

例4:显示属性
01 键入以下代码:
showProperties $box001
02 执行代码,返回box001的属性参数,如下图所示。

显示物体属性还可以写成showclass "box001"或show $box001。
showclass"box001*用于显示所有3dsMax里面级别是BOX的物体。
showclass "box001.*"用于显示所有级别是BOX的物体的可存取参数。
3.变换对象
例1:改变位置
01 键入以下代码:
$box001.pos = [0,0,20]
02 执行代码,返回[0,0,20],如下图(左)所示; BOX沿z轴移动了20个单位,如下图(右)所示。

若键入“move Sbox001[0,0,20]”,-样可以改变BOX沿z轴方向的移动。$box001.pos = [0,0,20]具有绝对性,而move $box001[0,0,20]具有相对性。[0,0,20]表示3个轴向, 分别为x、y和z轴。
例2:缩放对象
01 键入以下代码:
box( )
创建的BOX如下图所示。

02 键入以下代码
scale Sbox001[2,2,2]
将创建的物体放大了两倍,如下图所示。

同样键入Sbox001.scale=[2,2, 2]也可以将物体放大两倍。scale Sbox001[2, 2, 2]具有相对性,而5box001.scale= [2, 2, 2]具有绝对性。
例3:旋转对象
01 键入以下代码:
rotate $box001 45x_ axis
02 执行代码,如下图(左)所示;旋转后的对象如下图(右)所示。

也可以键入rotate Sbox001 ( eulerangles 45 00 )实现物体旋转,eulerangles 表示欧拉角度,后面3个值分别表示x轴、y轴和z轴。rotate SBox001 45 x_ _axis 旋转x轴45°,rotate $Box001 45 y_ _axis 旋转y轴45°,rotate $Box001 45z axis旋转z轴45°
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答为给新片造势,迪士尼这次豁出去了,拿出压箱底的一众经典IP,开启了梦幻联动朱迪和尼克奉命潜入偏远地带卧底调查 截至11月24日......
此前Q2问答环节,邹涛曾将《解限机》首发失利归结于“商业化保守”和“灰产猖獗”,导致预想设计与实际游玩效果偏差大,且表示该游戏......
2025 Google Play年度游戏颁奖:洞察移动游戏新趋势
玩家无需四处收集实体卡,轻点屏幕就能开启惊喜开包之旅,享受收集与对战乐趣库洛游戏的《鸣潮》斩获“最佳持续运营游戏”大奖,这不仅......
说明:文中所有的配图均来源于网络 在人们的常规认知里,游戏引擎领域的两大巨头似乎更倾向于在各自赛道上激烈竞争,然而,只要时间足......
在行政服务优化层面,办法提出压缩国产网络游戏审核周期,在朝阳、海淀等重点区将审批纳入综合窗口;完善版权服务机制,将游戏素材著作......
未毕业先就业、组团入职、扎堆拿offer...这种好事,再多来一打!
众所周知,火星有完善的就业推荐服务图为火星校园招聘会现场对火星同学们来说,金三银四、金九银十并不是找工作的唯一良机火星时代教育......
同学您好!