简介
本书是由王琦电脑动画工作室策划推出的Maya高级技术教程,主要针对Maya中的表达式、脚本和MEL语言等知识进行系统化地讲解。该书虽然是一本Maya编程类教材,但其内容由浅入深、循序渐进,实例的选取具有普遍性,因此适合不同水平的Maya用户学习。全书各个章节均包括大量有代表性的范例,打破了编程类教材内容枯燥的传统模式,以全新的教学方式来讲授知识要点。
本书从较为基础的Maya表达式入手,逐渐转入MEL脚本这一深入性的话题,采取循序渐进的方式向读者传授Maya高端技术。书中的内容主要包括:动画控制方式、表达式、数据变量、Maya预定义函数、循环语句和判断语句、用表达式控制粒子系统、建立操作窗口、创建用户菜单、MEL脚本的高级应用等。教材透过Maya强大而复杂的界面,深入剖析了软件的现有功能及其扩展方式。通过学习MEL脚本的编写方法并应用于实际工作中,能极大地提高专业动画制作的效率和质量。本教材是作者多年应用经验的积累和浓缩,是一部非常难得的Maya编程之经典大作。
本书包含配套光盘一张,提供了书中所涉及的全部场景和脚本文件,配合教材上的讲解更有利于读者掌握知识要点,迅速提高解决实际问题的能力。本套教材非常适合Maya高端培训、自学和希望从事Maya编程研究的人员使用。
目录
光盘使用说明
第1章 表达式、脚本和plug-in
1.1 超越maya界面
1.2 表达式
1.2.1 表达式动画
1.2.2 关键帧动画与表达式动画
1.2.3 关联动画与表达式动画
1.2.4 动画方式的选择
1.2.5 动画控制节点网络结构
1.3 脚本
1.3.1 脚本应用
1.3.2 mel语言、mel命令与mel脚本
1.3.3 脚本与表达式
1.3.4 mel脚本的调用
1.4 plug-in
1.5 本章小结
第2章 第一个表达式--旋转的盒子
2.1 匀速旋转的盒子
2.1.1 例2-01
2.1.2 实例说明
.2.1.3 匀速变化的动画曲线与运动规律
2.2 加速旋转的盒子
2.2.1 例2-02
2.2.2 实例说明
2.3 表达式编辑器窗口
2.3.1 表达式操作过程
2.3.2 表达式编辑器窗口菜单
2.4 maya的预定义函数
2.4.1 maya预定义函数的类型
2.4.2 maya中更多的函数
2.5 幂函数
2.5.1 幂函数的数学含义
2.5.2 maya中的幂函数
2.6 本章小结
第3章 滚动的箱子(一)
3.1 任务分析
3.2 用骨链控制滚动
3.2.1 例3-01
3.2.2 表达式分析说明
3.3 数据变量
3.3.1 变量的类型
3.3.2 变量的定义
3.3.3 变量的匹配
3.3.4 变量的表示
3.4 运算
3.4.1 数学运算
3.4.2 关系运算
3.4.3 逻辑运算
3.5 条件语句
3.5.1 if语句
3.5.2 switch语句
3.6 本章小结
附录a 向量的点乘与叉乘
第4章 滚动的箱子(二)
4.1 任务分析
4.2 用表达式控制箱子滚动
4.2.1 转动第一个90
4.2.2 找到通用公式
4.2.3 修改动画
4.3 滚动五棱柱
4.3.1 分析五棱柱的滚动过程
4.3.2 用表达式控制五棱柱的滚动
4.4 滚动六棱柱
4.5 取整函数
4.5.1 ceil(向上取整)函数
4.5.2 floor(向下取整)函数
4.5.3 trunc(截断取整)函数
4.5.4 int(取整)函数
4.6 三角函数
4.6.1 三角函数概述
4.6.2 cos函数
4.6.3 cosd函数
4.6.4 sin函数
4.6.5 sind函数
4.6.6 tan函数
4.6.7 tand函数
4.6.8 acos函数
4.6.9 acosd函数
4.6.10 asin函数
4.6.11 asind函数
4.6.12 atan函数
4.6.13 atand函数
4.6.14 atan2函数
4.6.15 atan2d函数
4.7 本章小结
第5章 推拉门
5.1 任务分析
5.2 用locator的移动控制推拉门
5.2.1 一个推拉单元--例5-01
5.2.2 两个推拉单元
5.2.3 分析n个单元的推拉门
5.2.4 用表达式控制的完整推拉门--例5-02
5.2.5 重写控制推拉门的表达式--例5-03
5.2.6 对新表达式的说明
5.3 数组变量
5.4 循环语句
5.4.1 循环语句的基本形式
5.4.2 while循环
5.4.3 do-while循环
5.4.4 for循环
5.4.5 for-in循环
5.4.6 continue语句和break语句
5.5 表达式与mel命令
5.6 setatb命令
5.7 本章小结
第6章 龙卷风
6.1 粒子系统的特性
6.1.1 多态性
6.1.2 生命值
6.1.3 过程控制与初始状态
6.1.4 粒子系统的表达式
6.2 任务分析
6.3 龙卷风制作过程--例6-01
6.4 表达式分析
6.4.1 运动分解
6.4.2 pointoncurve命令
6.4.3 粒子沿曲线运动--例6-02
6.4.4 圆周运动的数学描述
6.4.5 粒子的圆周运动--例6-03
6.4.6 沿螺旋线运动的粒子--例6-04
6.4.7 沿渐开螺旋线运动的粒子--例6-05
6.4.8 描述龙卷风的外轮廓线
6.4.9 龙卷风雏形--例6-06
6.4.10 分散粒子分布--例6-07
6.4.11 加入控制曲线影响
6.5 本章小结
第7章 海面
7.1 海面制作
7.1.1 操作步骤
7.1.2 标记菜单
7.1.3 制作分析
7,1.4 改进控制
7.1.5 重新制作海面
7.2 随机函数
7.2.1 gauss函数
7.2.2 noise函数
7.2.3 dnoise函数
7.2.4 rand函数
7.2.5 sphrand函数
7.2.6 seed函数
7.3 本章小结
第8章 mel概述
8.1 自己的第一个脚本
8.1.1 记录一个操作的mel命令--例8-01
8.1.2 深入了解记录的sphere命令
8.1.3 sphere命令的其它状态
8.2 mel命令的一般形式
8.2.1 mel命令的使用格式
8.2.2 mel命令的修饰词
8.2.3 mel中的常用符号
8.2.4 mel命令与脚本命令
8.3 几个常用的mel命令
8.3.1 ls命令
8.3.2 select命令
8.3.3 getattr命令
8.3.4 setattr命令
8.4 物体的显/隐开关
8.4.1 制作一个物体显/隐切换开关
8.4.2 简化脚本
8.4.3 修改脚本
8.5 本章小结
附录a
第9章 建立操作窗口(一)
9.1 maya窗口元素
9.1.1 attributes editor(属性编辑器)窗口
9.1.2 窗口命令分类
9.2 建立窗口
9.2.1 window(定义新窗口)命令
9.2.2 showwindow(显示窗口)命令
9.3 窗口布局
9.3.1 formlayout命令
9.3.2 columnlayout命令
9.3.3 rowlayout命令
9.3.4 scrolllayout命令
9.3.5 framelayout命令
9.3.6 setparent命令
9.3.7 deleteui命令
9.4 本章小结
第10章 建立操作窗口(二)
10.1 控制体的一般工作方式
10.1.1 反应方式
10.1.2 控制过程
10.2 颜色控制体
10.2.1 attrcolorslidergrp命令
10.2.2 colorlndexslidergrp命令
10.3 数字输入控制体
10.3.1 数字输入控制体所包含的内容
10.3.2 floatfield命令
10.3.3 floatfieldgrp命令
10.3.4 floatslider命令
10.3.5 floatsliderbuttongrp命令
10.3.6 floatslidergrp命令
10.3.7 intfield命令
10.3.8 intfieldgrp命令
10.3.9 intslider命令
10.3.10 intslidergrp命令
10.4 文字控制体
10.4.1 text命令
10.4.2 textfield命令
10.4.3 textfieldbuttongrp命令
10.4.4 textfieldgrp命令
10.5 选择控制体
10.5.1 radiobutton命令
10.5.2 radiobuttongrp命令
10.5.3 checkboxgrp命令
10.6 button(按钮)命令
10.7 本章小结
第11章 属性编辑窗口
11.1 任务分析
11.1.1 窗口内容分析
11.1.2 调用内容分析
11.2 任务窗口
11.2.1 操作窗口的界面
11.2.2 操作窗口状态切换及检错
11.3 场景操作
11.3.1 脚本内容
11.3.2 nodetype命令
11.3.3 窗口选择内容读取
11.3.4 物体过滤
11.3.5 复合条件判断
11.4 编辑、保存脚本文件
11.4.1 编辑脚本文件
11.4.2 文件保存
11.5 本章小结
第12章 自定义符号
12.1 任务分析
12.2 合并物体的形状节点
12.2.1 parent命令
12.2.2 改变形状节点的父节点
12.3 编写脚本
12.3.1 脚本工作方式
12.3.2 脚本工作内容列表
12.3.3 脚本逻辑过程
12.3.4 脚本内容
12.3.5 测试脚本
12.3.6 freeze transformations操作
12.3.7 makeldentity命令
12.3.8 修改脚本
12.4 本章小结
第13章 海面制作
13.1 任务分析
13.2 添加用户属性
13.3 添加表达式
13.3.1 expression命令
13.3.2 dynexpression命令
13.4 编写脚本
13.4.1 脚本结构
13.4.2 程序单元
13.4.3 脚本内容
13.5 本章小结
第14章 尾巴控制系统
14.1 任务说明
14.1.1 控制方式
14.1.2 控制系统关联关系
14.1.3 脚本操作方式
14.1.4 脚本任务列表
14.2 相关命令
14.2.1 createnode命令
14.2.2 listrelatives命令
14.2.3 ikhandle命令
14.2.4 spacelocator命令
14.2.5 xform命令
14.2.6 group命令
14.2.7 move命令
14.2.8 stringarrayremove命令
14.2.9 aimconstraint命令
14.2.10 pointconstraint命令
14.2.11 orientconstraint命令
14.2.12 connectattr命令
14.3 脚本内容说明
14.4 脚本的不足之处
14.5 本章小结
第15章 用户菜单文件
15.1 制作菜单
15.1.1 menu命令
15.1.2 menultem命令
15.1.3 setparent命令
15.2 自动调用的用户菜单
15.2.1 用户菜单文件
15.2.2 菜单文件的调用过程
15.3 本章小结
第16章 文件检查
16.1 任务说明
16.2 字符串操作命令
16.2.1 substituteallstring命令
16.2.2 tokenize命令
16.3 文件操作命令
16.3.1 fopen命令
16.3.2 fptint命令
16.3.3 fzetline命令
16.3.4 fclose命令
16.3.5 workspace命令
16.3.6 file命令
16.3.7 filetest命令
16.4 其它命令
16.4.1 symbolbutton命令
16.4.2 confirmdialog命令
16.4.3 脚本命令setworkingdirectory和filebrowser
16.5 文件检查
16.5.1 脚本基本说明
16.5.2 特殊单元说明
16.6 本章小结
第17章 物体批量改名
17.1 脚本的工作方式
17.2 脚本说明
17.2.1 操作窗口
17.2.2 改名操作主程序
17.2.3 给指定物体加前缀
17.2.4 给指定物体加后缀
17.2.5 替换物体名中的字符
17.2.6 物体形状节点改名
17.2.7 重新命名指定物体
17.2.8 文件结构
17.3 本章小结
第1章 表达式、脚本和plug-in
1.1 超越maya界面
1.2 表达式
1.2.1 表达式动画
1.2.2 关键帧动画与表达式动画
1.2.3 关联动画与表达式动画
1.2.4 动画方式的选择
1.2.5 动画控制节点网络结构
1.3 脚本
1.3.1 脚本应用
1.3.2 mel语言、mel命令与mel脚本
1.3.3 脚本与表达式
1.3.4 mel脚本的调用
1.4 plug-in
1.5 本章小结
第2章 第一个表达式--旋转的盒子
2.1 匀速旋转的盒子
2.1.1 例2-01
2.1.2 实例说明
.2.1.3 匀速变化的动画曲线与运动规律
2.2 加速旋转的盒子
2.2.1 例2-02
2.2.2 实例说明
2.3 表达式编辑器窗口
2.3.1 表达式操作过程
2.3.2 表达式编辑器窗口菜单
2.4 maya的预定义函数
2.4.1 maya预定义函数的类型
2.4.2 maya中更多的函数
2.5 幂函数
2.5.1 幂函数的数学含义
2.5.2 maya中的幂函数
2.6 本章小结
第3章 滚动的箱子(一)
3.1 任务分析
3.2 用骨链控制滚动
3.2.1 例3-01
3.2.2 表达式分析说明
3.3 数据变量
3.3.1 变量的类型
3.3.2 变量的定义
3.3.3 变量的匹配
3.3.4 变量的表示
3.4 运算
3.4.1 数学运算
3.4.2 关系运算
3.4.3 逻辑运算
3.5 条件语句
3.5.1 if语句
3.5.2 switch语句
3.6 本章小结
附录a 向量的点乘与叉乘
第4章 滚动的箱子(二)
4.1 任务分析
4.2 用表达式控制箱子滚动
4.2.1 转动第一个90
4.2.2 找到通用公式
4.2.3 修改动画
4.3 滚动五棱柱
4.3.1 分析五棱柱的滚动过程
4.3.2 用表达式控制五棱柱的滚动
4.4 滚动六棱柱
4.5 取整函数
4.5.1 ceil(向上取整)函数
4.5.2 floor(向下取整)函数
4.5.3 trunc(截断取整)函数
4.5.4 int(取整)函数
4.6 三角函数
4.6.1 三角函数概述
4.6.2 cos函数
4.6.3 cosd函数
4.6.4 sin函数
4.6.5 sind函数
4.6.6 tan函数
4.6.7 tand函数
4.6.8 acos函数
4.6.9 acosd函数
4.6.10 asin函数
4.6.11 asind函数
4.6.12 atan函数
4.6.13 atand函数
4.6.14 atan2函数
4.6.15 atan2d函数
4.7 本章小结
第5章 推拉门
5.1 任务分析
5.2 用locator的移动控制推拉门
5.2.1 一个推拉单元--例5-01
5.2.2 两个推拉单元
5.2.3 分析n个单元的推拉门
5.2.4 用表达式控制的完整推拉门--例5-02
5.2.5 重写控制推拉门的表达式--例5-03
5.2.6 对新表达式的说明
5.3 数组变量
5.4 循环语句
5.4.1 循环语句的基本形式
5.4.2 while循环
5.4.3 do-while循环
5.4.4 for循环
5.4.5 for-in循环
5.4.6 continue语句和break语句
5.5 表达式与mel命令
5.6 setatb命令
5.7 本章小结
第6章 龙卷风
6.1 粒子系统的特性
6.1.1 多态性
6.1.2 生命值
6.1.3 过程控制与初始状态
6.1.4 粒子系统的表达式
6.2 任务分析
6.3 龙卷风制作过程--例6-01
6.4 表达式分析
6.4.1 运动分解
6.4.2 pointoncurve命令
6.4.3 粒子沿曲线运动--例6-02
6.4.4 圆周运动的数学描述
6.4.5 粒子的圆周运动--例6-03
6.4.6 沿螺旋线运动的粒子--例6-04
6.4.7 沿渐开螺旋线运动的粒子--例6-05
6.4.8 描述龙卷风的外轮廓线
6.4.9 龙卷风雏形--例6-06
6.4.10 分散粒子分布--例6-07
6.4.11 加入控制曲线影响
6.5 本章小结
第7章 海面
7.1 海面制作
7.1.1 操作步骤
7.1.2 标记菜单
7.1.3 制作分析
7,1.4 改进控制
7.1.5 重新制作海面
7.2 随机函数
7.2.1 gauss函数
7.2.2 noise函数
7.2.3 dnoise函数
7.2.4 rand函数
7.2.5 sphrand函数
7.2.6 seed函数
7.3 本章小结
第8章 mel概述
8.1 自己的第一个脚本
8.1.1 记录一个操作的mel命令--例8-01
8.1.2 深入了解记录的sphere命令
8.1.3 sphere命令的其它状态
8.2 mel命令的一般形式
8.2.1 mel命令的使用格式
8.2.2 mel命令的修饰词
8.2.3 mel中的常用符号
8.2.4 mel命令与脚本命令
8.3 几个常用的mel命令
8.3.1 ls命令
8.3.2 select命令
8.3.3 getattr命令
8.3.4 setattr命令
8.4 物体的显/隐开关
8.4.1 制作一个物体显/隐切换开关
8.4.2 简化脚本
8.4.3 修改脚本
8.5 本章小结
附录a
第9章 建立操作窗口(一)
9.1 maya窗口元素
9.1.1 attributes editor(属性编辑器)窗口
9.1.2 窗口命令分类
9.2 建立窗口
9.2.1 window(定义新窗口)命令
9.2.2 showwindow(显示窗口)命令
9.3 窗口布局
9.3.1 formlayout命令
9.3.2 columnlayout命令
9.3.3 rowlayout命令
9.3.4 scrolllayout命令
9.3.5 framelayout命令
9.3.6 setparent命令
9.3.7 deleteui命令
9.4 本章小结
第10章 建立操作窗口(二)
10.1 控制体的一般工作方式
10.1.1 反应方式
10.1.2 控制过程
10.2 颜色控制体
10.2.1 attrcolorslidergrp命令
10.2.2 colorlndexslidergrp命令
10.3 数字输入控制体
10.3.1 数字输入控制体所包含的内容
10.3.2 floatfield命令
10.3.3 floatfieldgrp命令
10.3.4 floatslider命令
10.3.5 floatsliderbuttongrp命令
10.3.6 floatslidergrp命令
10.3.7 intfield命令
10.3.8 intfieldgrp命令
10.3.9 intslider命令
10.3.10 intslidergrp命令
10.4 文字控制体
10.4.1 text命令
10.4.2 textfield命令
10.4.3 textfieldbuttongrp命令
10.4.4 textfieldgrp命令
10.5 选择控制体
10.5.1 radiobutton命令
10.5.2 radiobuttongrp命令
10.5.3 checkboxgrp命令
10.6 button(按钮)命令
10.7 本章小结
第11章 属性编辑窗口
11.1 任务分析
11.1.1 窗口内容分析
11.1.2 调用内容分析
11.2 任务窗口
11.2.1 操作窗口的界面
11.2.2 操作窗口状态切换及检错
11.3 场景操作
11.3.1 脚本内容
11.3.2 nodetype命令
11.3.3 窗口选择内容读取
11.3.4 物体过滤
11.3.5 复合条件判断
11.4 编辑、保存脚本文件
11.4.1 编辑脚本文件
11.4.2 文件保存
11.5 本章小结
第12章 自定义符号
12.1 任务分析
12.2 合并物体的形状节点
12.2.1 parent命令
12.2.2 改变形状节点的父节点
12.3 编写脚本
12.3.1 脚本工作方式
12.3.2 脚本工作内容列表
12.3.3 脚本逻辑过程
12.3.4 脚本内容
12.3.5 测试脚本
12.3.6 freeze transformations操作
12.3.7 makeldentity命令
12.3.8 修改脚本
12.4 本章小结
第13章 海面制作
13.1 任务分析
13.2 添加用户属性
13.3 添加表达式
13.3.1 expression命令
13.3.2 dynexpression命令
13.4 编写脚本
13.4.1 脚本结构
13.4.2 程序单元
13.4.3 脚本内容
13.5 本章小结
第14章 尾巴控制系统
14.1 任务说明
14.1.1 控制方式
14.1.2 控制系统关联关系
14.1.3 脚本操作方式
14.1.4 脚本任务列表
14.2 相关命令
14.2.1 createnode命令
14.2.2 listrelatives命令
14.2.3 ikhandle命令
14.2.4 spacelocator命令
14.2.5 xform命令
14.2.6 group命令
14.2.7 move命令
14.2.8 stringarrayremove命令
14.2.9 aimconstraint命令
14.2.10 pointconstraint命令
14.2.11 orientconstraint命令
14.2.12 connectattr命令
14.3 脚本内容说明
14.4 脚本的不足之处
14.5 本章小结
第15章 用户菜单文件
15.1 制作菜单
15.1.1 menu命令
15.1.2 menultem命令
15.1.3 setparent命令
15.2 自动调用的用户菜单
15.2.1 用户菜单文件
15.2.2 菜单文件的调用过程
15.3 本章小结
第16章 文件检查
16.1 任务说明
16.2 字符串操作命令
16.2.1 substituteallstring命令
16.2.2 tokenize命令
16.3 文件操作命令
16.3.1 fopen命令
16.3.2 fptint命令
16.3.3 fzetline命令
16.3.4 fclose命令
16.3.5 workspace命令
16.3.6 file命令
16.3.7 filetest命令
16.4 其它命令
16.4.1 symbolbutton命令
16.4.2 confirmdialog命令
16.4.3 脚本命令setworkingdirectory和filebrowser
16.5 文件检查
16.5.1 脚本基本说明
16.5.2 特殊单元说明
16.6 本章小结
第17章 物体批量改名
17.1 脚本的工作方式
17.2 脚本说明
17.2.1 操作窗口
17.2.2 改名操作主程序
17.2.3 给指定物体加前缀
17.2.4 给指定物体加后缀
17.2.5 替换物体名中的字符
17.2.6 物体形状节点改名
17.2.7 重新命名指定物体
17.2.8 文件结构
17.3 本章小结
Maya深入精髓
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!