学习网站
1.3dsmax官方帮助文档:http://help.autodesk.com/view/3DSMAX/2017/ENU/
2.最大的max脚本资源网站http://www.scriptspot.com
3.个人的max脚本网站 http://www.maxplugins.de/max2012.php
启动max的时候会启动的插件目录
宏命令集位置
语法规则
注意:数组下标从1开始
提取字符串的子串 substring
替换子串 replace
转移字符 \
高级数据类型
Struct 结构类型 自定义数据类型
数组 #()
变量
动态变量 赋值为整数后还可以再被赋值为字符串
赋值也分为 值类型 和 引用类型
如果某一个值 未有指针指向则被判定为垃圾
垃圾清理
变量有作用域 全局 局部
Gloabl全局 不写默认是全局
Local 局部
Persistent global 再次打开脚本初始化赋值
表达式
流程控制语句
对象层次
控制层次
流程控制语句
选择语句
if
case of
循环语句
while
for
循环跳出语句
continue
exit
捕捉异常
try catch
If do
If then
If then else / if then else if then
Distance 判断两个物体距离的方法
$+ 物体名字 获取到某个物体
$sphere001.segment = 8 修改球体的段数 属性 = 8
Case of 分支选择
注释符号 -- 多行注释/* */
While do
语句后的分号 可以不加
Do while
for循环 用法1
用法2
Selection是选择物体的集合
Continue 结束当次循环并继续下轮循环
Exit 跳出整个for循环
Try catch 捕捉异常
官方案例
函数
返回值 return
函数调用可以作为 集合的一个数据
拓展和练习
Color ray matrix3 类型变量声明
自定义n x n矩阵 双重for循环赋值并打印
if条件判断语句 与 或表达方式
官网搜索collection 集合
宏脚本语法规则和使用
菜单栏Customize-Customize User Interface-keyboard 设置快捷键 调用 宏脚本
可以查询一下是否加载成功
设置宏脚本快捷键,category 选择对应脚本 设置快捷键hotkey后 点击Assign按钮
MaxWrapper类
MaxWrapper是父类 包含属性和方法
Node类 所有场景中的对象 都继承自Node
以下七种类 都能放入场景 属于Node
Gemetry 几何体
Shapes 图形
Lights 灯光
Cameras 摄像机
Helpers 辅助类
Space Warpes 空间扭曲
Systems 骨骼系统
构造函数 和类名相同 无返回值
F1键打开网页官方文档 使用英文版搜索需要查询的内容
例:
Target 一直注释着目标物体
选中物体 按住shift+鼠标左键移动 复制物体
Mesh
右键可以修改 物体类型
选择物体
选择某个 或者某些点
对选择的点进行 移动等操作
Shape
SplineShape
设置渲染属性
Sublevel=1 2 3相当于是视口上的点 线 面
Spline方法
numSplines
getSplinesSelection
setSplineSelection
setFiretSpline
deleteSpline
setMaterialID
getMaterialID
numKnots
bindKnot
getInVec
setInVec
getOutVec
setOutVec
updateShape
...
splineOps方法
splineOps.starAttach
splineOps.startBreak
splineOps.startChamfer
splineOps.startConnect
meshop.deleteIsoVerts
meshop.createPolygon
getNormal
...