maxscript教程
- 格式:doc
- 大小:276.50 KB
- 文档页数:40
【MAXScript】3DMax批量修改贴图名及模型名一堆废话想不到自己还会接触3DMAX的脚本语言——MAXScript。
首先申明一下,本人不是建模组的,对建模什么的不甚了解。
倒是想学来着,会点建模如果自己要独立开发一些小项目,也可以不麻烦人,如果可以,什么事情还是自己亲力亲为来得快。
可是同事说怕我抢了他的饭碗,愣是没有教我。
嘿嘿!其实我知道那不过是他的玩笑话,主要还是我自己没有时间去学啦,毕竟不是一朝一夕就能够学会的。
“这么多模型,这么多贴图要怎么改?”又听见建模组同事在仰天长哮~~~公司早期有很多项目是使用一款叫virtools(我也有幸用过一段时间,oh no!跟unity真的不是一个等级的,最关键的是网上完全没有资料可寻,碰到一个问题,可以折腾你一个星期也束手无策~)的引擎来开发的,后来客户要求将一些virtools项目改成unity3D,而virtools引擎支持中文命名的模型及贴图,但是众所周知,unity对中文的支持不是很好,经常因为中文发生莫名的错误,或者乱码之类的问题,所以不得不将这些模型和贴图的名称全部改成英文的。
“你们3DMAX有没有什么脚本之类的,可以使用脚本来批量改啊,一般软件都会自带脚本,以解决软件自身功能局限的问题。
”我刚说完,就感受到了来自对面的‘杀气’,只见同事恶狠狠的盯着我。
好吧!我错了,忘了同事压根没有写过代码,说了也是白说(我不是有意要打击你们的哟)。
“好吧,我帮你看看3DMAX有没有脚本,研究一下要怎么写。
”同事听罢,嘴角上扬。
唉,这奸笑意味着我又要折腾一番了。
于是,便开始了MAXScript编程之旅。
批量修改模型名没有任何MAXScript基础该怎么开始呢?总要先了解一下该脚本语言的语法规则和常用API吧,于是上网下载了本电子书《3ds MAXScript 脚本语言完全学习手册》(各位看官可自行搜索下载,很好找哦,一搜一大把)。
(由于自己机子上没有装3DMAX,所以也不方便附上测试的截图,但是代码之前都是在同事机子上实验过的,成功帮助他们改了模型名以及贴图名,所以在特定条件下是没有问题的,关于这个“特定条件下”以及可能会出现的问题在后面也会提到。
Maxscript是3ds Max中的脚本语言,可以用于创建和修改3D模型,进行动画和渲染等操作。
其中,旋转轴心是一个常用的功能,可以用来实现模型的旋转。
本文将介绍如何使用Maxscript编写旋转轴心的代码。
1.获取选中对象的中心点坐标在编写旋转轴心的代码之前,我们首先需要获取选中对象的中心点坐标。
这可以通过以下代码实现:```selectedObject = selection[1]center = [0,0,0]for i=1 to (getNumSubObjects selectedObject) do(center += (polyOp.getVert selectedObject i))center /= (getNumSubObjects selectedObject)```上述代码中,我们首先获取选中对象的顶点坐标,然后将这些坐标累加起来,并最终求得平均值,即为对象的中心点坐标。
2.旋转对象接下来,我们可以编写旋转对象的代码。
在这个示例中,我们将选中对象绕Y轴旋转90度,代码如下:```selectedObject.rotation *= (eulerAngles 0 90 0)```这段代码中,我们使用了eulerAngles函数来表示旋转角度,将Y轴旋转90度,并将结果赋值给选中对象的旋转属性。
3.指定旋转轴心如果我们需要指定旋转的轴心,可以使用以下代码来实现:```axis = [0,1,0]angle = 90selectedObject.rotation *= (rotationMatrix (angle as quaternion) (center as point3) axis)```上述代码中,我们首先定义旋转轴心的坐标和旋转角度,然后使用rotationMatrix函数来实现围绕指定轴心的旋转操作。
通过以上代码示例,我们可以看到如何使用Maxscript编写旋转轴心的代码。
max脚本教程MAX脚本是3ds Max软件中的一种高级脚本语言,用于自动化完成各种任务,提高工作效率。
本教程将介绍MAX脚本的基础知识和常用功能,共计1000字。
第一部分:MAX脚本基础知识(300字)MAX脚本是一种基于MAXScript语言编写的脚本,使用简单但强大。
MAXScript是3ds Max中的一种脚本语言,可以通过脚本编写程序来完成各种任务。
在开始编写MAX脚本之前,需要了解一些基础知识。
首先是MAXScript的语法,包括变量的定义、循环、条件语句等。
其次是了解3ds Max的对象模型,包括场景、物体、材质等。
第二部分:MAX脚本常用功能(400字)MAX脚本可以完成各种任务,下面介绍几个常用的功能。
1. 创建和修改物体:使用MAX脚本可以通过编写代码来创建、复制、修改3D物体,可以修改物体的位置、旋转、缩放等属性。
可以根据自己的需要编写代码来快速创建和调整物体。
2. 自动化渲染设置:使用MAX脚本可以自动设置场景的渲染参数,包括光照、材质、渲染器等。
可以通过编写脚本来快速设置场景的渲染参数,提高渲染效率。
3. 批量导入和导出:使用MAX脚本可以批量导入和导出模型,可以自动化完成这个过程。
可以根据自己的需要编写脚本来批量处理模型的导入导出。
4. 自动化建模:使用MAX脚本可以自动化完成建模的过程,可以编写脚本来生成各种形状的物体,或者根据规则生成复杂的模型。
可以根据自己的需要编写脚本来提高建模效率。
第三部分:MAX脚本编写实例(300字)这里以一个实际的例子来介绍MAX脚本的编写过程。
假设需要编写一个脚本来自动创建一个车库的场景,包括墙壁、地板、天花板、门等。
首先,定义一些基本参数,比如车库的尺寸、墙壁的高度等。
然后,使用MAX脚本来创建墙壁、地板、天花板等物体,可以根据参数来确定物体的位置和尺寸。
接着,使用MAX脚本来创建门,并设置门的位置和尺寸。
最后,使用MAX脚本来设置渲染参数,添加光源等,最终完成整个车库场景的创建。
maxscript脚本语言的(五十)【图文教程】【正文】今天的内容简单,但是却非常必要。
我们都知道,观看别人的脚本源码,学习每一个功能的具体写法,是脚本提升最快的一种方式。
但是因为基础薄弱,想要看懂别人的脚本太难了。
比如下面这个截图:满屏幕的 fn ,这到底是个啥表达式,这么厉害。
其实这个我们前面讲过的。
fn 相当于自己的预定义函数。
也就是你设定一个变量的名称,然后让他等于一个表达式。
然后后面界面设定完成后,想要设置一个按钮,调用这个功能的话,只需要写上变量名再加上一对小括号,就可以用了。
举个例子:下图的 fn 定义了变量名 updatelistMat 这个变量名,它等于下面的一大堆计算。
有预设,有for循环,有if判断,好大的一坨。
后面还跟了一大堆收尾组啥的。
然后底下写完按钮了,点击btnref这个按钮时,就调用前面写的那个updatelistMat() 变量预设函数就好了。
多简单。
这是一个思维习惯的问题。
程序员在思考一个功能时,是独立的。
知道把这个功能解决。
然而合入截面时,不想重新写一遍了。
也就是功能是功能,界面编写是界面编写。
那么咋办呢?就用fn在前面定义一下自己写的脚本等于个变量名。
然后后面再去调用这个自己定义的变量名。
好的理解了fn这个设定后,我们再来看一个常见的表达式书写try() catch()如图,这里面有两个try表达式的书写。
第一种是比较常用的写法。
前面不论写了一堆啥,后面直接跟一个catch()第二种是完整的写法,但是一般不这么写。
还是前面不管写了一堆啥,后面调用一个结果。
下来看看官方的解释。
下图是从王华老师的书上截取的中文翻译。
红线画的位置写的已经很清楚了。
我们再从字面上来翻译一下。
try的意思是常识catch的意思是引用调用那意思非常明白了。
就是我不知道我写的对不对,但是我怕它影响整个脚本的运行,所以我加个try的表达式试一下。
能成功那最好,成功不了,也别影响整个脚本的运行。
飞浪脚本零起点入门系列(三)MAXScript算术表达式与赋值表达式著作:飞浪制作:【WEWE】声明:本教程为CG++原创,未经本人允许,禁止一切形式的转载,谢谢合作:)上一节:飞浪脚本零起点入门系列(二)MAXScript数据类型飞浪脚本零起点入门系列(三)MAXScript算术表达式与赋值表达式本节关键词:+-*/^as=+=-=*=/=本节跟上节紧密联系,希望没学过程序的朋友把开始这几节一定要弄懂。
你要是学过程序,了解一下MAXScript的规则吧。
算术表达式MAXScript算术表达式与我们小学时学的算术一个道理,都是对数值进行运算如加、减、乘、除等。
MAXScript数学运算符有:+数学中的加号,如1+1,a+b-数学中的减号,如2-1,a-b*数学中的乘号,如5*6,a*b/数学中的除号,如4/2,a/b^数学中的幂运算,如2^6即2的6次方as强制类型转换,严格说这不是数学运算符,以后会发现as会用在很多地方。
好,现在打开MAXScript Listener试试以上数字运算:运算符可以对数字进行运算,同时运算符左右还可以是函数调用或另外的数学表达式,即复合运算,如:(a+b)/c;(sin x)*-d。
as,具体表达式为:操作数as类型,这里的类型就包括上节讲的部分数值类型,用法如下:1.234as integer--1.234是float类型数值,integer是整形数值,这句就是强制把1.234变为整形数值,它不是四舍五入,而是直接将小数点后面的尾巴去掉,所以上面那句跟1.934as integer一个效果得到结果1。
123456789as string--强制把数值123456789转化为字符常量,结果为"123456789"。
下面大家试试数值转换的结果:我们知道,数学运算有优先级,以前背的口决:先算乘除,后算加减,有括号先算括号,那么在MAXScript里面也是一样的,唯一不同的是,MAXScript 运算里面只有小括号(),那么如果我想括号里面再加括号怎么办呢?还是小括号。
maxscript 旋转轴心代码-回复Maxscript(3dsMax脚本语言)中的旋转轴心是一个非常常用的功能,可以帮助我们在3D建模和动画制作中实现复杂的旋转效果。
本文将一步一步回答关于Maxscript旋转轴心的使用和代码实现问题。
首先,让我们了解一下旋转轴心的概念。
在3D空间中,物体的旋转通常是相对于某一个轴心进行的。
这个轴心可以是物体本身的中心点,也可以是用户自定义的点。
Maxscript提供了一个内置的属性叫做“pivot”,用来表示一个物体的旋转轴心。
我们可以通过Maxscript对这个属性进行控制,从而实现旋转轴心的改变。
在Maxscript中,我们可以通过以下步骤来实现旋转轴心的改变:第一步:选择要操作的物体我们首先需要选择一个要操作的物体。
在Maxscript中,可以使用“_”这个关键字表示当前被选中的物体。
我们可以通过以下代码来获取当前被选中的物体:selectedObj =第二步:获取轴心数据在Maxscript中,物体的旋转轴心数据是保存在一个叫做”pivot“的属性中的。
我们可以通过以下代码来获取当前物体的旋转轴心数据:pivotPos = selectedObj.pivot这个代码会将物体的旋转轴心位置保存在一个三维坐标变量“pivotPos”中。
第三步:设置新的轴心位置接下来,我们可以通过修改“pivot”属性来设置新的轴心位置。
下面的代码演示了如何将轴心位置设置为物体的顶部:newPivotPos = selectedObj.max - [0,0,selectedObj.max.z] selectedObj.pivot = newPivotPos在这个代码段中,我们首先计算了物体的顶部“newPivotPos”位置。
然后,我们将这个位置赋值给物体的“pivot”属性,从而改变物体的旋转轴心位置。
第四步:验证轴心位置为了验证轴心位置的改变,我们可以使用一个辅助工具来显示物体的旋转轴心位置。
maxscript常用方法MaxScript是一种用于Autodesk公司的3D建模和动画软件3ds Max 的脚本语言。
它提供了一系列的函数和方法来帮助用户自动化工作流程,增加工作效率,并且可以创建自定义工具和插件。
在这篇文章中,我将一步一步详细回答与MaxScript常用方法有关的问题和内容。
第一部分:MaxScript简介1. 什么是MaxScript?MaxScript是一种用于3D建模和动画软件3ds Max的脚本语言,它可用于自动化工作流程和创建自定义工具和插件。
2. MaxScript的用途是什么?MaxScript可以用于自动化任务,创建自定义用户界面,进行批量操作,修改对象属性和参数,生成复杂的几何体,以及大量其他的应用。
3. 如何运行MaxScript脚本?在3ds Max中,可以通过打开“MaxScript编辑器”窗口并将脚本粘贴或加载预先保存的脚本来运行MaxScript。
4. MaxScript的语法是怎样的?MaxScript的语法类似于其他编程语言,包括变量定义、条件语句、循环和函数定义等。
第二部分:常用的MaxScript方法1. 创建对象MaxScript可以使用一系列函数来创建不同类型的对象,例如盒子、球体、平面等。
其中,createBox()函数可以创建一个盒子对象。
2. 对象操作MaxScript提供了各种函数来操作对象,例如移动(move)、旋转(rotate)和缩放(scale)等。
3. 材质和贴图MaxScript可以设置对象的材质和贴图属性,例如设置颜色、漫反射、高光和纹理等。
4. 动画控制MaxScript可以控制对象的动画,例如设置关键帧、曲线插值和自动化运动等。
5. 用户交互MaxScript可以创建自定义的用户界面,例如对话框、按钮和滑块等,以便用户与脚本进行交互和操作。
6. 文件操作MaxScript可以进行文件的读取和写入操作,例如打开和保存场景文件、导入和导出模型文件等。
飞浪脚本零起点入门系列(四)MAXScript对物体的初步控制著作:飞浪制作:【WEWE】声明:本教程为CG++原创,未经本人允许,禁止一切形式的转载,谢谢合作:)查看上一节:MAXScript算术表达式与赋值表达式飞浪脚本零起点入门系列(四)MAXScript对物体的初步控制本节关键词:Macro Recorder show(showproperties)move rotate s cale point3angleaxis eulerangles.$上面几节我们学习了一些程序方面的基础知识,这节开始我们学习MAXScript的实际操作,MAXScript并没有大家想像的那么神秘,如果你不打算深入学习,那么掌握一些基本的MAXScript操作,对你的工作和学习肯定很有帮助,而MAXScript有时候就像说话一样简单,而且MAX还告诉了你该怎样通过脚本控制一些节点,这就是下面要讲的Macro Recorder。
Macro Recorder宏记录器现在打开MAX,找到MAXScript--Macro Recorder勾上,这样就打开了宏记录器。
现在用鼠标拉一个BOX,打开MAXScript Listener看到有什么变化没?上面紫色区域出再了一行代码:Box lengthsegs:1widthsegs:1heightsegs:1length:45.7164 width:51.0396height:28.8314mapcoords:on pos:[-2.12866,-1.29646,0]isSelected:on这个代码就是创建一个BOX的代码,在MAXScript Listener工具栏上也有个Macro Recorder,勾选里面的Enabled就打开Macro Recorder,不勾选就关掉Macro Recorder。
这个代码很长很长,是不是看的头晕呢?Macro Recorder的功能是把我们的鼠标和键盘操作转化为脚本形式记录下来,但是有些操作是Macro Recorder无法记录的,还有的时候它会给你一些错误的信息,并且像上面的例子一样,它生成的代码总是包含大量不必要的默认参数。
3Dmax插件开发指南:定制您自己的插件和脚本3Dmax是一款强大的三维建模、动画和渲染软件,广泛应用于电影、游戏、建筑和工业设计等领域。
为了满足用户的个性化需求,3Dmax支持插件和脚本开发,使用户能够根据自己的需求定制功能和工具。
本文将提供一个详细的指南,教你如何开发定制化的3Dmax插件和脚本。
一、了解3Dmax插件和脚本开发的基础知识1.1 插件和脚本的定义插件是一种可以扩展3Dmax功能的外部工具,可以添加新的命令、工具栏按钮或菜单项等,以实现特定的功能。
脚本是一种自动化操作的计算机程序,可以通过编写脚本语言来控制3Dmax软件的各种操作。
1.2 插件和脚本的开发环境3Dmax提供了一个强大的开发环境用于插件和脚本的编写和测试,主要包括Maxscript和.NET插件开发两种方式。
Maxscript是一种基于脚本语言的开发方式,适用于简单的功能和小型工具的开发;而.NET插件开发则提供了更多的灵活性和功能扩展的可能性。
二、使用Maxscript进行插件和脚本开发2.1 学习Maxscript语法和基本命令Maxscript是一种易学易用的脚本语言,可以轻松地执行各种3Dmax操作。
你可以通过阅读相关的文档和教程来学习Maxscript语法和常用命令,如创建对象、修改对象属性、运行动画等。
2.2 开发自定义的脚本功能首先,你需要确定你的脚本的功能和目的,然后使用Maxscript编辑器编写脚本。
例如,你可以编写一个用于自动创建树木的脚本,包括树干和树叶的生成、形状调整和材质设置等。
你可以使用Maxscript提供的一些内置函数和方法进行开发,也可以利用Maxscript的编程能力实现更复杂的功能。
2.3 创建自定义的工具栏按钮和菜单项在3Dmax的用户界面中,你可以创建自己的工具栏按钮和菜单项,以方便调用你的自定义脚本功能。
你可以通过Maxscript编辑器的界面设计工具来创建和调整工具栏按钮和菜单项的样式和位置,然后将它们与你的脚本函数关联起来。
MAX脚本安装调用方法及彻底卸载脚本安装调用方法:一。
如果你的脚本是ms或者是mse格式,请直接执行MAXScript--Run Script 打开你的脚本。
注:有些ms格式的脚本代码也写成macro script形式,即跟mcr格式一样,判断方式是用记事本打开脚本,看里面是否有macroScript 这个词,如果有就跟mcr格式一样。
二。
如果你的脚本是mcr格式,或mzp格式,请先按照上述方法执行,但你不能马上看到效果。
调用方法参照下面图片说明。
PS:对于mzp格式的文件,你可以直接把格式mzp改成rar,然后解压,就可以看到压缩的源文件,找到你想用的脚本。
三。
如果你下载的脚本是安装文件(比如场景助手),那么你确定正确安装以后,也参照以下图片说明调用。
下面我就是以场景助手来举例说明:第一步,打开用户设置面板:相关图片如下(点击图片查看原图):000.jpg第二步,你有下列方式可以调用脚本:相关图片如下(点击图片查看原图):0.jpg相关图片如下(点击图片查看原图):00.jpg相关图片如下(点击图片查看原图):000.jpg相关图片如下(点击图片查看原图):00.jpg脚本彻底卸载:一。
卸载,反安装即可。
首先你通过以上四种方法调用过脚本后,有以下情况删除:1. 工具栏,直接在图标上右键--Delete button2.快捷键,选择设置过快捷键的脚本,右边有个remove点击即删除。
3.四格菜单或菜单栏,在拖放后,可以在右边直接delete脚本名字。
二。
删除脚本。
1.如果是安装文件式的脚本,一般会安装到以下目录:MAX根目录\Scripts,或者MAX根目录\ui\macroscripts,找到你安装的文件删除即可。
如场景助手1.0需要这样卸载。
场景助手2.0有自带的卸载功能。
2.如果你运行过mcr文件,它会自动保存脚本到用户目录,找到删除即可。
用户目录用以下方法查看:相关图片如下(点击图片查看原图):01.jpg或者:相关图片如下(点击图片查看原图):02.jpg。
[3D资源] 3D脚本 maxscript入门教程maxscript入门教程(1)作者:mediastime日期:2005-12-30 07:41:06属性:原创来源:点击数:1104内容图文并茂,语言高度概括,文采形象生动,思路清晰可见;指出要害,抓住关键,透彻理解那些难懂的编程概念;不用担心数学基础很差,无需害怕英文单词不懂,只需初中数学知识,把英文单词作图形符号看待,拿脚本编程当文字游戏把玩。
能够提高解决问题的能力,可以降低学习脚本的门槛。
不用费力看英文帮助,何需辛苦找编程资料,减轻学习负担,节省宝贵时间!发挥自己的聪明才智,运用科学的学习方法,首先认真学好入门教程,然后虚心请教各位高手,脚本编程从此不再难!-----------------------------------------------------------------------------------------------------------------------------------------入门教程内容结构本教程内容分为五个部分,用几个具体的例子讲解大多数的脚本操作和语法知识。
一、MAXScript简介1、说明什么是MAXScript以及它有什么功能,能给用户带来什么好处。
2、访问脚本,认识脚本访问的界面。
二、基本操作:创建和修改简单的对象,给对象赋材质,从而引出下面的概念构造器:创建对象的语法称为构造器;路径名;数据类型:它们是数字,字符串,数组。
对象和类(层级树);属性和方法;变换;函数和方法的联系;通用属性和动态属性;显示属性的函数;一些常用的方法;三、创建和操作具有复杂关系的对象,从而引出下面的概念变量,变量和属性的关系;对象引用:引用另外一个对象的属性值作为自己的值;数组和集合等:数组,数组和变量的关系;运算符和表达式;表达式:求值的规则。
流程控制:选择和循环,条件选择。
制作简单的动画:"at time",动画控制器。
四、换一角度——从大家熟悉的操作流程来学习脚本这是对前面知识的总结,前面是对语法基本概念的学习,现在是从大家操作流程的角度来学习,一纵一横,让我们对脚本有个相对全面的了解,理论和实际相互联系。
有了前面的基础才好学下面的内容。
第一步:创建物体一些常用物体的创建方法。
第二步:选择物体select路径名,变量名引用条件选择用类和集合选择物体组Group:是一个虚拟对象,不是集合。
第三步:变换物体变换:postion,move,scale,rotate,变换坐标系和变换中心第四步:修改器第五步:材质和贴图第六步:制作动画五、基本的语法知识现在来学语法恐怕不会那么头痛了吧?-----------------------------------------------------------------------------------------------------------------------------------------一、 MAXScript简介1、MAXScriptMAXScript语言是为了扩展3ds MAX 功能而专门设计的一种脚本语言,是面向对象编程语言中的一种。
用它创建的场景物体和材质与在3ds MAX界面中创建的场景物体和材质完全对应。
可以生成自动关键帧的动画模式,并可以通过层级路径名来访问场景中的物体。
有记录在3ds MAX界面中的交互操作过程的能力,在使用界面操作的同时可以使用MAXScript来自由创作。
可以实现3D Studio MAX的全部用途,如建模、动画、材质、渲染等。
MAXScript可以运用各种数学工具来完成高级复杂的程序设计任务。
可以对含有大量对象的集合进行操作。
例如在复杂的场景中选择物体,可以把大量物体放置在精确的位置上,例如在山或路边放置一些树木,使用MAXScript操作起来是非常的方便。
它也能将一些功能定义为界面元素,例如工具栏按钮、菜单、浮动窗口,程序面板卷帘窗。
可以建行批处理操作提高工作效率。
例如建立一次可以渲染多个场景文件的脚本程序。
可以自定义输入输出工具,可以定义修改器,渲染效果插件等。
2、访问脚本2.1、认识MAXScript界面:包括MAXScript卷帘窗,脚本监听器窗口,脚本编辑窗口。
2.1.1、MAXScript卷帘窗单击命令面板中的按钮,打开应用程序面板,再单击MAXScript按钮,在应用程序面板出现MAXScript卷帘窗,如图1-1所示。
图1-12.1.2、脚本监听器窗口脚本监听器又叫脚本跟踪器,单击MAXScript卷帘窗中的Open Listener按钮,也可选择菜单栏中的MAXScript/MAXScript Listener 命令,快捷键F11。
如图1-2所示。
图1-2也可右击用户界面左下方的Mini-Listener(迷你监听器)打开脚本监听器窗口,如图1-3所示。
图1-3脚本监听器窗口是一个命令编辑和执行窗口,它由两部分组成,上半部分为宏记录窗口,下半部分为脚本运行结果输出窗口。
如图1-4所示。
图 1-4运行脚本时,脚本监听器窗口会输出脚本的运行结果,运行正确就显示为蓝色,运行错误就显示为红色,希望你的脚本不要出现红色啊。
在窗口中可以编写新的脚本语言或对已有的脚本语言进行修改,用户输入的脚本显示为黑色。
选择主菜单中的宏记录Macro Recorder/Enable 命令,如果此时进行操作,在窗口中淡红色部分将记录所进行的操作,这就是宏记录,选择菜单栏中的File/Save as 命令可以将记录保存为一个脚本。
2.1.3、脚本编辑窗口单击MAXScript卷帘窗中的New Listener按钮,或者选择菜单中的 MAXScript/New Scrip 命令打开脚本编辑窗口,如图1-5所示。
图1-5脚本编辑窗口是一个文本编辑窗口,你能在3ds MAX内部打开、创建或者编辑扩展名为"*.ms"、"*.txt"和"*.dat"格式的文本文件。
调试文件时大键盘中的回车键与在记事本中的用法一样的,用来换行,当鼠标光标出现在某一行时,敲一下小键盘区的回车键,就可以执行本行程序。
如果选择多行程序,敲下小键盘区的回车键,可以执行选择被选择的程序。
如图1-6所示。
图1-6按住鼠标左键不放,把选择的一行或者多行程序拖到3DSMAX工具栏里,将生成一个宏脚本按钮,单击此按钮,就可以运行这个宏脚本。
在脚本编辑窗口或脚本监听器窗口里调用edit()函数,可以打开脚本编辑窗口,语法是:edit "脚本文件名称" 。
例如打开 effect.ms 文件:输入edit " effect.ms ",运行就可以打开这个脚本文件。
二、基本操作:创建和改变对象1、创建简单的对象传说天地未创建之时,是为无极,及有太极,则宇宙处于浑沌状态,就象鸡蛋一样盘旋着,在空间上无大无小无内无外,在时间上追溯到远古时代也无法知道其起源,所以把这种状态称为盘古,后来又不知那个好事者把盘古这种状态变成了一个传说——“盘古开天地”,结果“盘古”变成了一个宇宙创始人。
老子给它起了个玄之又玄的名字——道。
盘古一斧头就把这混混沌沌蛋给劈开了,结果太极判为天地,一气分为阴阳,中国就有了太极八卦和阴阳学说。
自从盘古开辟天地之后,则万物具备,轻清者上升为天,重浊者下降为地。
在天成象,在地成形,仰观天有日月星辰,俯察地有人鱼鸟兽,花草树木,种类繁多,数量庞大,不可计数。
人类为了征服大自然,掌握这些事物,就给它们进行了分类,把相同的对象归类到具有相似特征的类之中,类与类之间如果还有相似的地方,那么就把这些归纳到更高层次的类中,例如把植物类和动物类归纳到生物类。
面向对象编程中类和对象的概念就是试图对上面这些比较符合人类认识规律的概念进行描述。
好吧,现在就来看看在 MAXScript 中谁是宇宙万物的创造者——“盘古”。
选择菜单中的 MAXScript /New Scrip 命令打开脚本编辑窗口,如果想调试程序,跟踪程序执行结果,也可以把脚本监听器窗口打开,输入box length:100 width:100 height:2 sphere radius:10 segments:16按Ctrl+E 键或者选择脚本编辑窗口菜单中的File/Evaluate All 命令执行程序,还可以用鼠标全部选定,敲小键盘上的回车键执行程序(以后都按此方法,不再说明)。
欲知后事如何,且看下回分解。
Email: mediastime@[ 本帖最后由 呱唧 于 2006-12-12 18:41 编辑 ]收藏 分享 评分--香港机房免费试用 1元换购COM 域名回复 引用订阅 TOP呱唧支柱会员金币279 枚 威望10 热心度1沙发 发表于 2006-12-12 18:37 |只看该作者maxscript 入门教程(2)作者:mediastime 日期:2005-12-31 11:45:00属性:原创来源: 点击数:744内容图文并茂,语言高度概括,文采形象生动,思路清晰可见;指出要害,抓住关键,透彻理解那些难懂的编程概念;不用担心数学基础很差,无需害怕英文单词不懂,只需初中数学知识,把英文单词作图形符号看待,拿脚本编程当文字游戏把玩。
能够提高解决问题的能力,可以降低学习脚本的门槛。
不用费力看英文帮助,何需辛苦找编程资料,减轻学习负担,节省宝贵时间!发挥自己的聪明才智,运用科学的学习方法,首先认真学好入门教程,然后虚心请教各位高手,脚本编程从此不再难!----------------------------------------------------------------------------------------------------------------结果创建了一个盒子和一个球体,如图2-1所示。
现在单击工具栏按名字选择对象按钮,在弹出的对话框中会出现这个盒子的名字“Box01”和球体的名字“Sphere01”,这是默认的名字。
图2-1box length:100 width:100 height:2 这一行代码就是一个box构造器,它创建了一个长度为100、宽度为100、高度为2的box。
搞了半天,原来构造器就是“盘古”啊,伟哉,万物之始!什么是构造器?在MAXScript帮助中常常看到Constructor这个单词,中文意思就是构造器。
但是帮助中只是说明构造创建对象的语法,但并没有专门的内容来说明构造器这个概念。
我把它归纳如下:在MAXScript中创建对象的语法就叫作构造器,其实质就是调用函数来创建对象,所以可以把它看作是一个函数调用。