您需要 登录 才可以下载或查看,没有账号?注册
x
由于站长的极力邀请,已经转做策划4年的我决定更新一波maxscript教程;为了加快教程的编写速度,我暂时不给图示说明了。
由于当年编写脚本时的版本较低(max 9.0 sp2),我也这些年没再研究maxscript了,所以有些自定义函数在高版本中是否已由官方实现,这个我不知道(如果出现同名函数,请自行修改替换函数名称,或使用官方函数替代,否则会报错);所以这一波教程的脚本只保证在max9.0 sp2中能够正常运行,其它版本是否报错不能保证,但如果出错,各位还请指正。
这一波教程主要针对初学者,但我不想从语法、变量、函数 这些基础上开始,我准备从需求方面来讲,脚本应该如何实现。因为脚本只是工具,对于初学者来讲,如何实现既定功能,加快手动操作,实现便捷性,才是学习脚本知识最大的动力。当然跳过 语法、变量、函数 这些基础知识并不代表它们不重要,相反,它们非常重要,但讲/看 这些东西是一个枯燥的过程,对于初学者容易陷进去,也容易感到茫然和不知所云。
---------------------------------------------------------------我是分割线-----------------------------------------------------------------------------
学习maxscript脚本的三大法宝是:宏录制器,API文档(也就是Maxscript Reference),英语
宏录制器
对于初学者来讲,宏录制器(macro recorder)是一个非常好用的东西,他能简化很多脚本代码操作,尽管我们并不知道它内部如何实现。
菜单 Maxscript -> Macro Recorder 选项勾选 后,按F11打开Maxscript Listener 就可以在窗口中看到宏操作了。比如创建一个box,窗口上半部分会显示
- Box lengthsegs:1 widthsegs:1 heightsegs:1 length:9.79747 width:5.69742 height:9.58363 mapcoords:on pos:[-25.2293,27.8233,0] isSelected:on
点击此处复制文本
删除这个box的时候会显示
actionMan.executeAction 0 "40020"
delete $
我们把创建box的脚本复制到Maxscript Listener 的下半个窗口中,按Enter键执行,就会在max中创建一个box
我们把删除box的脚本复制到Maxscript Listener 的下半个窗口中执行,就会删除的box
窗口中显示内容过多时,可以按Ctrl + D 清屏;
但宏录制器只能完成简单功能,而且每次执行必须手动复制代码到Maxscript Listener窗口中,所以就需要编写脚本来保存代码以及实现更复杂的功能。
MaxScript Reference
Maxscript 的 API 文档,有空的时候经常翻阅和测试对提升脚本知识很有帮助,以保证日后面对新需求时,能更快找到解决方案。
英语
这个我就不说了,因为 API文档是用英语写的,如果英语不好可以去找早期版本的API文档,有民间汉化的API 文档。
|