本章节将详细列出并介绍对绑定角色的映射操作以及部分原理。
Mapping(映射)的原理**
Animcraft的Mapping操作是通过对绑定角色做了一次重定向,把各个无意义的控制器,定义成了一个个有意义的部位。这个过程让Animcraft知道哪些控制器对应的是有意义的手,脚,头,脊椎等部位。这样Animcraft就能在读取某个部位的数据时,找到这个部位的控制器,或,在写入某个部位的数据时,知道把这个数据写入到正确的控制器。
Mapping窗口
Mapping窗口的角色状态
Mapping窗口角色左上方有个圆形的标识,这个标识可以指明角色的Mapping状态,如下图
- 当必要的控制器映射完成后,左上角的标识会呈现出橙色的状态。
- 当标识显示成绿色时,表示所有控制器都已进行匹配了。
- 当标识状态为红色时,则表示该角色尚未Mapping完整。
Mapping窗口的部位图形
- “○”圆形控制器代表FK,也可以用它Map骨骼
- “+”十字形控制器代表IK
- “?”表示Map到了重复的骨骼,请检测
- 腰部环形控制器是角色腰部根部对应的总控制器
- 条状的是骨骼控制器
:::success 如何区分IKFK
- FK正向动力学:根据父关节的旋转来计算得出每个子关节的位置。
- IK反向动力学:根据末端子关节的位置移动来计算得出每个父关节的旋转。 :::
Mapping窗口的部位颜色
- 灰色:还未Map的标记
- 绿色:Map过的标记
- 橙色:Map过的标记(但是关闭了动画写入)这种橙色标记用于定位,例如用于IK导入时,协助IK定位
Mapping的操作
手动Mapping
- 将需要进行Mapping的控制器或骨骼选中,然后Mapping窗口中,将鼠标放在对应的标记位置上,点击鼠标右键 > Map 即可完成该部位的Mapping。
- Unmap为取消Mapping。
自动Mapping
- 当选择角色一个控制器,打开Mapping窗口同时,系统会去遍历<我的文档>\animcraft\maya\template路径中查找Mapping模版
- 程序会自动搜索出最匹配当前角色设置的一套Mapping数据文件。作为默认加载,尽量减少在同样绑定中重复Mapping不必要骨骼的操作。
- 你也可以取消应用这套数据,重新对你的角色进行Mapping操作。
- 你也可以编辑,保存,读取,删除各个Mapping模版
- 了解更多映射(Mapping)模版数据请参考模板Template的加载,保存与删除
我的文档中的模版文件
各部位Mapping细节
本部分描述了一些Mapping的顺序和推荐方式
- 角色的总控大环Master,一般不需要Mapping,可以直接跳过(如下图)
不需要Map角色的总控大环
- 腰部总控的IK控制器一般Map给腰部大环(在对纯骨骼角色进行映射的情况下,我们可以将腰部大环根脊椎1处关节,都映射成骨骼绑定的根骨骼)
- (如下图)脊椎的FK一般是先Map根部脊椎(1),然后再Map肩部根脊椎(2),之后根据中间位置定一个中间过渡脊椎例如(3)(下图中)
- (4)和(5)号标识符一般Map成颈部和头部
- A, B, C这3个IK的脊椎控制器,对应的1, 2, 3号FK脊椎控制器,可以选择性Mapping
- 从肩膀控制器,大臂,小臂,手是由(1),(2),(3),(4)号标识符来Map的,(5)和(6)号标识符对应的手臂的极向量和IK控制器
- 从臀部下面,大腿,小腿,腿,脚踝这4个部位是由(1),(2),(3),(4)号标识符来Map的,(5)和(6)号标识符对应的膝盖的极向量和脚的IK控制器
- 手指的控制器一般对应关系比较清晰,只需要分清楚左右手即可
- Joint面板映射主要是提供一些辅助定位给用户来导出该角色的动画数据
:::warning
注意
如果需要设置踮脚尖和导出动画的时候,Joint面板的骨骼必须要完成Mapping操作
:::
脚部与踮脚尖设定
总体介绍
大部分角色的脚步Rigging都有踮脚尖的控制器,他可以控制脚趾与脚掌的角度,实现脚趾不动,脚后跟抬起的踮脚尖效果,无论是走路还是跑步,实际上都会有这种细微的表现。
如何设置踮脚尖
- 选择脚部的控制踮脚尖的控制器
- 在通道栏里,再加选中控制 “抬脚后跟” 相对应的属性(如下图)
- 在Mapping窗口中,切换至Ball栏目,点击左脚的“heel attribute ”按钮,将会把刚选中对应的 “RollTose_L.rx”(实际名称可能不同)这个属性填入到界面中(如下图)
:::warning
注意
你需要选中控制器上控制踮脚尖的参数属性,而不仅仅是选中控制器直接点击heel attribute进行加载。
:::
- 调整一下“踮脚尖”属性参数,让脚与图例类似踮起脚尖,然后记录下“最大值”(最大值可以比真实的数字大一些,这个只是一个范围)
- 调整一下“踮脚尖”属性参数,把脚后跟放平,记录下“最小值”
:::success
提示
踮脚尖参数设定的最大值与最小值是个大致的范围,系统算法会在这个范围内找到最优解。因此你不必太精确的设置最大与最小值。
:::
如果是自定义的角色,全部Map完成后,点击”保存“按钮,保存映射(Mapping)数据。
了解更多映射(Mapping)模版数据请参考模板Template的加载,保存与删除
Match(匹配)
总体介绍
Match(匹配)是一个Animcraft特有的操作,它会做一些导入导出的准备工作,例如记录T-Pose数据和Mapping数据等到Animcraft系统中,因此你必须先完成Mapping并且回到T-Pose(或相似的标准Pose)再执行Match(匹配)操作。
操作步骤
- 当Mapping完成后,可以看到Mapping窗口的左上角信号灯变成了橙色,这表明主要的部位已经全部Map完成,此时你就可以准备对角色进行导入或导出动画。
Mapping窗口的橙色信号
- 把角色Rigging回到标准Pose(Maya中支持:A-Pose,Rest-Pose或T-Pose)
- 确保选中了任意角色的控制器或骨骼,点击Match(匹配)即可完成
- 信号灯变成绿色后,即可正常导入动画
- 请注意在导出动画情况下,也需要Match(匹配)操作,这样就可以从角色身上导出数据了
导出模式下,信号灯在右边,也需要Match(匹配操作)
:::success 将角色恢复至标准的Pose的常用方式
- 带控制器的绑定角色,一般情况下框选所有的控制器将位移(Translate)旋转(Rotate)归0就是T-Pose/A-Pose.
- 纯骨骼绑定角色虽然不一定,但是有些骨骼可以选择所有的骨骼,将旋转(Rotate)归0就是T-Pose或A-Pose.
- 动捕数据一般第一帧是T-Pose或A-Pose :::