本文转载自http://jiurong995294.blog.163.com/blog/static/195133243201192531546490/

方便以后须要时候使用

为什么要学习3D MAX脚本?

3D MAX Script是我迄今为止见过编程语言最自由的一种脚本开源环境,他的自由程度远远超过了Sun 的JAVA,她没有大写和小写的区分,以及固定的公式和程序工作流程树,MAX Script一旦被编写,人们就能够从不论什么一行进行代码的编译,不须要符合格式的束缚。并且MAX Script的功能相当强大。
具体的说明一下MAX Script功能究竟有多强大:MAX Script是全然基于OpenGL开源以及VC核心制作出来的,而当今世界上不论什么一款CG制作软件也主要依赖这两点编写,也就是说假设MAX Script使用的好,我们全然有那个能力在3D MAX里面集成Maya的全部功能!这不光光是二次开发的乐趣,我想她更是一次CGer思维的革命,非常多使用传统制作方法难以完毕的任务,在使用了MAX Script后就会变的非常简便、快捷!
我觉得想要学好MAX Script不在于你前面有多少编程的基础和学习经验,关键在于能否非常好的理解MAX Script里面每个字串符的用法和他的作用。举个非常easy的样例:“()小夸号”和“[]中夸号”有什么差别呢?他们能够在什么地方使用?两个符号能够结合在一起使用吗?怎么结合在一起使用更加科学合理?事实上就是这种几个问题解决好了,你甚至能够模仿出一些美国大片级别的视频特效!(以上的几点我会在接下来的杂志中进行具体解说)
第一讲:MAX Script基础片
认识MAX Script界面:

按下键盘上的F11,或者依照图示单鸡button,就可以弹出MAX Script窗体?

第一讲,第二节:基础应用片:
用实例解说MAX Script的基础符号.
非常多人感觉MAX Script非常难,事实上我认为他们认为非常难的原因是由于基础没有学好,而我认为的MAX Script基础就是符号,倘若能把几个基本符号理解的非常好的话,相信非常多问题就能够迎刃而解. MAX Script真的不难,关键是在于你对他的理解. 
如今我開始解说MAX Script中最基础的符号,希望大家认真学习,由于在这一节学好了,接下来的学习就会显的非常轻松?
MAX Scrip中:使用—— $、””、()、[]、和. 的理解。
接下来我向大家演示两个样例,而且在此例中向大家解说以上几个符号的用法,和怎样理解.
首先,来看一张效果图:比較抽象些,仅仅是表达个意思
一张大数量,宏观城市景观,共15376个BOX,如何制作速度最快?
最简单的方法就是——制作许很多多个BOX,然后一个一个的对他们进行高度、大小设置(— | | |)—凸—)~_~)——_—)。。。只是这个。。这个这个。。呵呵,冷不?好冷。。。
而我使用了MAX Script后,仅仅要一句就能够高定! 


1:随便拉一个BOX
2:阵列一下(我的是30*30一共900个BOX)
3:选中全部物体!写入脚本
4:渲染,完毕局部的制作。
我使用的语句是:for a in selection do a.height=(random 0 10)
有人说:“老师,你写的那句话是什么意思?”好,我如今说明一下。
首先是:for a in selection。什么意思?for a in selection是一个固定搭配,表示“被选择的物体”而被选择的物体就是用——a来表示。
然后是——do,这个不用多解释了,“做,做一件事情” 被选中的物体去做一件事情;那是去做什么事情?这就是代码运算的结果——a.height=(random 0 10)
a.   height=(random 0 10):
表示被选择的物体——a的 高度等于(0到10之间的一个随机数)
random是随机的意思; 0 10表示范围;height表示物体的高。他应该=…………
有了上面的这些解释,以下我们返回这一讲的主题:
细致观察上面所给的代码,首先我们发现一个有趣的表达式a.height,非常有意思,a表示已选择的物体,而height表示物体的高度,而者怎么联系到一起去的呢?原来是中间的一个 . 号。这个符号是关键,怎样理解?你能够把他理解成——“什么什么的属性”这个后面再跟详细属性,比方这个a.height,他的意思是说a的高的属性。然后再继续接表达式。a.height=什么什么(一个可选的数)
再细致观察,有没有发现什么?呵呵——小夸号!小夸号()怎么理解?不能说理解了,应该说怎么使用,在这里小夸号的用法为——“(加可选的客观数值,或者运算表达式)”向在这里,小夸号()里面就是一个表达式,他的取值范围在0到10之间。连接上前面的a.height,意思就是“被选择的物体高度在0到10之间随机变化。”说到这里,你已经豁然开朗了吧?
事实上原理是非常easy的,关键在于你能不能想的到。

第一讲第三部分:实例2:
完毕了上一个样例.好,有人又说了:“丁,怎么样把那些房子都做成不一样的颜色?”最简单的方法就是一个一个的点击物体,然后一个一个的对他们的线筐颜色进行调整。(— | | |)—凸—)~_~)——_—)。这个这个。呵呵。。倘若想使用MAX Script,细致想一下,事实上这也是非常easy的,学会一个属性命令——wirecolor就能够做到了,这个属性命令我是在——亓鑫辉老师的公开讲课中学到的。在此非常感谢火星培训部的亓鑫辉老师!也希望大家支持亓鑫辉老师! 

1:这里有100个BOX,选中他们。
2:然后脚本
3:然后完毕,我这里有100BOX他们的颜色都是不一样的。
来看一下代码:for a in selection do a.wirecolor=color(random 0 255) (random 0 255) (random 0 255)
有人说:“老师,什么意思?”在这里for a in selection不说了,do 后面跟的是a 及wircolor两个关键词。Wirecolor是线筐颜色的意思,中间 . 号连接表示a的线筐颜色,后面是一个新的表达式:color
如今我来说一下color的用法。
Color+RGB是理论表达式,RGB都用0到255之间的数字表示,好了这样就有人写出了这种表达式:Color 50 250 150。回车运行代码后,发现是错误的。而我就认为这些人在我前面说的内容还是没有理解?。Color后面既然想表达3个数字分别相应RGB,能这样表达吗?是3个数字,不是一个数字。50 250 150,这是什么值?尽管能够表达RGB,可是格式不正确。前面的内容我已经具体的解说过了一点了:小夸号()的用法,小夸号()里面用来表示一个具体的数值。所以在这里,写成Color (50)(250)(150),就显的更加合理?
跟上前面的表达式连起来看一下。for a in selection do a.wirecolor=color(random 0 255) (random 0 255) (random 0 255)显然,我把已选择的物体的RGB都在0到255上面进行随机取值,这样就能够做到颜色都不一样了。 

以上是MAX Script常常出现的几中情况错误,细致观察。红色的文字告诉你是什么地方出了问题。
1:-- Error occurred in a loop
-- Frame:
-- a: $Box101
-- Argument count error: Color wanted 4, got 1
这个提示应该还是比較好理解的,他告诉你BOX101没有办法依照代码被赋予正确的线筐颜色。并且也告诉了你是在“Color”这一指令后出的问题,非常明显这个就说明Color的表达有问题。
细致观察,发现错误语句中的Color表达是:Color(0 255 255)。而实际上3DMAX Scrip中的——()小夸号,里面仅仅能存一个固定的数值,0 255 255尽管是“RGB”色彩代码的表示方法,可是不符合语法,小夸号内必须存一个固定的数值,在MAX Scrip中“Color”指令后确实是要跟三个数字来表达R、G、B的,此时我们使用3个小夸号:()就比較合理了。
2:-- Syntax error: at keyword parameter, expected name
-- In line: for a in selection do a.wirecolor:color 
出错了没有关系,MAX Scrip中的错误是最好排除的,细致观察红色的提示代码,要认认真真的找下在什么地方出错。他告诉你咯,这个“for a in selection do a.wirecolor:后出现了错误,”意思是这个“等于”号不能这么打,而输入“=”就比較合理了。(我上是用“冒号”取代“等于号”的)
3:我胡乱打的虾米…...看看他告诉我什么:undefined。意思是有定义。
解决的方法比較传统,入下:“未定义的变量或者名称”=*就可以(*能够是不论什么数值或者表达式,总之必须是一个已经被定义过的语句。)
4:这是在MAX Script中一个比較典型的错误,怎样推断一个有效的表达式。MAX Script中执行代码的时候,是从上向下依次逐行运算,细致观察,发现错误代码为:
a+b/c
+d
MAX Script在进行运算的时候,在第一行,会把他当成a+b/c进行运算然后直接输出结果,运行第二行的时候,就会提示“+号”使用错误,这是一段断开的代码,没有从头到尾的连续性。VC 和JAVA在这方面都使用了——{}大夸号来表示一段完整的程序代码。然后一段代码中还能继续使用{}大夸号继续定义子程序树。在MAX Script,加上反斜杠\就显得比較合理了
a+b/c\
+d
这样效果就等同于a+b/c+d.。假设想要把几条表达式合并成一行,也能够使用分号隔离.比方如图.

3D MAX脚本教程1相关推荐

  1. 3D MAX 入门教程内容结构

    入门教程内容结构 本教程内容分为五个部分,用几个具体的例子讲解大多数的脚本操作和语法知识. 一.MAXScript简介 1.说明什么是MAXScript以及它有什么功能,能给用户带来什么好处. 2.访 ...

  2. 最简单的3D Max动画教程之路径约束

    一.随便添加一个物体   二.指定控制器(控制约束)     注意:有些版本可以在第二个红色箭头,鼠标右键可以打开选择控制器面板,有些需要点击蓝色箭头的那个小箭头(在曲线编辑器里面也可以指定 确认添加 ...

  3. 转:3d max 2013 安装教程,凭着一种互联网精神提供给广大朋友

    看到有人在ps区咨询如何安装3d max教程,当你进行第一步之前,请先断开网络连接 第一步:运行安装程序   第二步:接受安装协议,点击下一步会提示输入序列号   第三步:你会看到已经安装完成了的界面 ...

  4. 3D MAX界面操作教程及渲染技巧

    3dmax软件是一款电脑设计辅助软件,广泛应用于建筑设计.室内设计.影视动画.广告设计.游戏设计等等,是三维设计师们不可或缺的一款软件. 这里小编为大家介绍该软件的工作界面,让广大初学者和爱好者有更加 ...

  5. 3D游戏模型教程系列:3D max基础命令(零基础教学)

    3DMax是Autodesk公司开发的三维动画渲染和制作软件. 3D Max 操作简单,是很多小白的入手软件.而且3DMax应用范围比较广,它可以帮助游戏.电影和运动图形设计人员在更短的时间内创建更佳 ...

  6. 3D MAX 动画制作教程

    3D MAX 动画制作教程 可直接转到网页视频教程 转载于:https://blog.51cto.com/zyjkkk1212/68454

  7. 三维建模软件的插件安装教程——3D Max

    大家在使用三维建模软件3D Max的时候一定遇到过插件不知道如何安装的情况,今天我将把常用插件的类型和扩展名罗列如下方便大家安装收集也算抛砖引玉望各位高手查漏补缺不吝赐教. 3DSMAX的插件名后缀主 ...

  8. 3d max 安装及激活教程

    1.点击Setup文件安装 2.选择 安装在此计算机上(如果安装的3dmax与本机不对,即32位与64位冲突,会在这里提示) 3.选择中国以及接受协议,点击下一步 4.许可类型选择  单机 产品信息选 ...

  9. 3D游戏模型教程系列:3D max基础命令

    3DMax是Autodesk公司开发的三维动画渲染和制作软件. 3D Max 操作简单,是很多小白的入手软件.而且3DMax应用范围比较广,它可以帮助游戏.电影和运动图形设计人员在更短的时间内创建更佳 ...

最新文章

  1. linux下如何查看某个软件 是否安装??? 安装路径在哪???
  2. 3D姿态估计|时序卷积+半监督训练
  3. 【No.3 Ionic】超级逗表情 App
  4. 【学术相关】毕业答辩老师必问问题,并附上常见的应对话术包装
  5. 树莓派编译一个C程序
  6. json请求 post vue_Spring Boot+Vueaxios异步请求数据的12种操作(上篇)
  7. 【python项目实战入门】Python绘制爱心
  8. Redis手动failover
  9. 百度网盘查看分享的文件
  10. C#中的复制在unity中使用
  11. 黑莓9000和9900哪个好_入手黑莓9900,黑莓手机9900怎么样?
  12. 视频教程-oracle入门到大神(备mysql、java基础、javaee必经之路)-Oracle
  13. 伯努利方程实验装置QY-HGYL23
  14. 农历和阳历的之间的转换
  15. 操作员或系统管理员_什么是系统管理员?
  16. win10添加新硬盘
  17. php一年过去多少天,php获取一年有多少天
  18. Linux之setenv()/getenv()设置/获取环境变量
  19. 三分钟告诉你为什么再昂贵的普洱茶都只是用棉纸包装?
  20. 前端酷炫效果参考_纯CSS3实现的一些酷炫效果

热门文章

  1. 算法题练习系列之(一):守形数
  2. python10086查询系统_Python数字移动设备取证
  3. 《沈剑架构师训练营》第5章 - 数据库架构
  4. 8款炫酷的HTML5特效源码
  5. 软件项目管理第4版课后习题-期末复习题型分册版-带答案
  6. 【k8s权威指南】第三章 k8s核心原理
  7. 趋势顶底指标公式 通达信趋势顶底主图选股指标 清晰的趋势顶底详解
  8. 人工智能作业 - A*算法程序求解八数码
  9. 大数据开发工程师目录
  10. PHP文件怎么改tne,修改 · thinkphp6文档 · 看云