设置MotionBuilder的操作模式


MotionBuilder的T-Pose设置(3d-max的操作模式)
1)显示模型和骨骼


2)将左手和右手的肩甲骨、上臂、前臂、手掌(不包括手指)的Y轴和Z轴都设置为0;



3)确认角色的脚掌是贴着地面的;

4)角色化
选择角色的任一骨骼后,点击Skeleton


选中角色的任一骨骼,然后在右边的骨骼里选择对应的骨骼,对应成功后右边的骨骼会变成绿色,且对应了角色左边骨骼(左手、左脚等)后,右边骨骼会自动对应上;

此处对应UE4骨骼里的spine_01,里面的则是Spine01对应UE4骨骼的spine_02,02对应03


UE4骨骼的neck只有一个,对应最下面一个即可

完成角色化


导入选项里需要打开命名空间选项,并使用一个前缀来处理重名问题,防止因重名导入角色之间的相互覆盖问题;

合并导入需要转换动画的角色

1)隐藏UE4小白人
ctrl+w进入图解视图编辑器,选中小白人(shift为多选)


为小白人创建一个组,并将该组隐藏

2)对合并进来的角色进行T-Pose和角色化操作,完成后可以根据此处查看已完成角色化的角色(注:BIP骨骼可以直接角色化,不需要手动设置骨骼,但需要设置root骨骼的位置,BIP骨骼的root为盆骨,而非盆的投影)

编辑左边也能查看

重命名后

导入UE4小白人的动画

导入动画时,一定不能勾选命名空间选项,而是让动画文件覆盖原来的角色

导入成功后动画滑块的长度就是导入动画原本的帧数,无需再次设置

动画导入后角色模型会变成平躺状态,需要先选角色的根骨骼,再将X轴旋转90度

注:旋转的骨骼如图所示,不是root骨骼;

旋转前为-90度


选择源动画骨骼,完成动画转换

转换后

塌陷骨骼,创建骨骼控制系统


塌陷后,ctrl+a显示骨骼控制系统

AnimationLayers里创建的新层里修改的骨骼,会在每一帧里都生效(此处是逐帧动画);

选择动画图层后,可以对动画进行调整(注:手指调整时需要设置成局部坐标轴,肩胛骨调整时需要设置成世界坐标)



下图中两个选项都不激活时,骨骼的位移和旋转是相互影响的;都激动后,则位移和旋转互不影响;

将模型修改部分复制下来,以便在其它动画里使用,红色显示的骨骼为已选中的骨骼;
下图中M为镜像,选择后可以将左边手指的pose镜像到右边手指;

动画调整完成后,需要K一下帧,记录动画数据,否则滑动动画滑块后,又会变成调整前的动画姿势;

导出动画到UE4
1)将动画塌陷到骨骼

2)在图解视图里选中要导出的动画




默认导出

3)导出成fxb文件

4)导入相同骨骼的不同动画时,只需要将上面已经摆好T-Pose和角色化的文件复制一份,再在复制的文件里合并进新的动画,再调整导出就行;
--------------------------------------------------------
动画重定向
1)导入源动作的T-POST文件(源POST文件导入时需要对骨骼加前缀,以防骨骼名称冲突),再创建动画轨道,最后导入动画文件



2)选择动画的骨骼,将动画轨道的开始拖到0帧处,调整动画的帧率和长度;



3)合并动画转换的骨骼,设置骨骼,再次设置动画长度和帧率


4)Bake并导出


在maya中给模型添加骨骼

F3菜单


调整骨骼的位置


选中骨骼和模型,然后绑定蒙皮


导入人物模型,并通过连接关节,将武器连接到人物模式的手掌上(需要先选择武器模型的根节点,再选择人物模型手掌上的武器骨骼)

调整武器的方向和位置

装备外形切换
1)导入角色系统中有变形的文件,并删除大纲视图中灰色的操作
注:except_pants3.fbx为上衣、手套、护腕、鞋子的变形;legs3.fbx为裤子的变形;


2)导入新装备的静态模型,缩放模型并将其移动到骨骼上对应的地方;


3)先选择静态模型,再选择骨骼上LOD(有先后顺序,不能反过来选择),点击变形里的包裹命令



4)打开形变编辑器,并将形变编辑器里最下面的bodyfat设置为1




5)将变形后的静态模型复制(ctrl+d)一份,并移动到骨骼旁边,再删除包裹操作和骨骼上的LOD

6)先择变形后的胖模型,再选择原本的模型(有先后顺序,不能反过来选择),点击变形菜单中的混合变形选项


7)检查混合变形的效果

8)选择骨骼和导入的静态模型,点击F3菜单中的蒙皮



9)将模型单独导出




变形和蒙皮是默认导出且不能更改的

从maya中将蒙好皮的模型导入UE4

导入时合并到UE4里相同的骨骼上面,且导入和变形和LOD的选项一定要勾选,默认是不勾选的

导入成功后,在UE4






注:实际使用时变形的目标名称要和捏人系统里的一样

捏人系统备注
1)ScalarSlider,滑杆用来控制材质参数,如皮肤的对比度、光滑度等;

2)BoneSlider,滑杆用来控制骨骼的缩放,如手臂的维度(左右上臂、前臂、手掌六节骨骼同进缩放);

BoneSlider控件中直接设置角色下的BoneLengths(该数组为自定义)数组,然后在动画蓝图中的事件图表中更新动画蓝图中定义的BoneLenghts数组,最后在动画蓝图里的动画图表里设置骨骼对应的缩放;



3)MorphGroup,通过变形曲线控制人物蒙皮,如形体(body),曲线内容在主UI里进入设置


Morphs数组备注:Name-曲线名称 DisplayedName-UI上显示的名字 Min-变形的最小值 Max-变形的最大值

样式修改

------------------------------------分隔线喵-----------------------------------------
查看模型骨骼的权重值

选择对应的骨骼后


将模型放入场景中后,可以直接测量模型的实际高度(鼠标中键)

模型的导入和导出(maya)
导入前的小白人骨骼

将小白人的模型导入maya后,骨骼层级会多出一层

如果原封不动的导出UE4,则会在UE4的骨骼层级里也会多出一层

在maya里将root和sk_mannequin_lodGroup移动到多出来的SK_Mannequin骨骼同层级,并删除SK_Mannequin后,再导入UE4就 不会多出一层骨骼

在maya里解除LOD的锁定后,可以移动小白人


创建人物模型的通用LOD规则



骨骼上的插槽里添加预览的静态模型,比如武器

世界位置和本地位置

创建骨骼绑定

在动画序列的最后一帧上可以添加循环帧,用来过渡动画
UE4里的循环帧是根据最后一帧和第一帧做插值产生的;

动画蓝图中可以获取动画序列中曲线的值,用来做一些效果

同一套骨骼的动画序列,某个曲线创建或导入后,在其它动画序列里都可以设置相同的曲线,也可以删除曲线


动画压缩,用来节省动画资源的大小,压缩的原理是根据设置的模式去掉部分关键帧

动画序列和动画蒙太奇
在蓝图中可以直接播放动画序列和动画蒙太奇(蒙太奇需要将本蒙太奇使用的插槽添加到动画蓝图中)

mesh里除了选择动画蓝图外,也可以直接选择某个动画序列或动画蒙太奇

动画蒙太奇相对动画序列,自带了混合

根骨骼动画
播放原地动画时,ForceRootLock需要勾选上,未勾选播放带移位的动画时,会出现角色先进行位移,动画播放完成后,瞬移回原位;

动画Pose
用来做动画叠加,如跑步过程中的点头,眨眼,向左或向右看等(在播放动画的过程中使用曲线控制);

混合空间里的插值选项

该插值用来控制从一个姿势转换到另一个姿势时的时间,用来平滑转换不同的姿势;
上图的中的水平坐标用来控制角色的左右转向,垂直坐标用来控制角色从走路到跑步的过程;

给骨骼或插槽添加跟随骨骼移动的特效
注:该通知特效如果是持续型特效(如一直燃烧的火焰),则播放后,特效会一直存在,不会自动消失;非持续型特效(如爆炸)则会消失;

Attached为跟随移动选项

注:该通知特效如果是持续型特效(如一直燃烧的火焰),则播放后完成后,特效会消失;非持续型特效(如爆炸)则会在通知结束时播放;

选项没试出来有啥用

该通知会在通知期间禁用蒙太奇的RootMotion,位移动画会原地播放,通知结束后的动画位移会正常产生;

动画通知里开关布料模拟的选项

通知类型

下面的数字队列的优先级别,队列里的通知较多时,会有延迟;
BranchingPoint类型的通知不会有延迟,但同一时间有较多通知时,会存在某些通知不执行的情况,不推荐在有需要改变角色状态(如攻击开始、攻击结束)的通知里使用;

混合空间里动画序列通知的权重

动画通知触发权重值

蒙太奇动画通知执行顺序
蒙太奇动画通知被打断后,没播放的动画里,如果有通知,是不会执行的;如果没执行的通知里有维护角色状态的逻辑,则会出BUG;

通知状态类型的通知,算被打断后,如果通知开始已经执行,则通知结束的也一定会执行,但如果被打断时,通知开始没有执行,则整个通知都不会执行;

状态机
状态机条件里,上面的两个为上一个状态的百分比,下面的为上一个动画的百分比,推荐使用上面的那两个,下面的那个跟动画相关的,如果动画补替换掉后不会报错;

状态机通知
下面的通知定义后,可以动动画蓝图里直接调用

敌对角色的攻击被打断的受击动画一般是由播放蒙太奇动画来完成,无打断的受击一般是由动画蓝图里的叠加动画完成;
动画蓝图里的空pose

弹簧控制器

拖尾控制器

拖尾控制器的骨骼需要选择尾巴的最后一节,ChainLength则是需要有拖尾效果的骨骼节数


防御塔LookAt的插值选项

IK(反向动力学-逆向动力学)
正向:通过骨骼的旋转造成位移;
反向:通过骨骼的位移造成旋转;
IK的作用:在3D动画软件里,创建了模型的IK后,可以通过IK骨骼的位移,去生成产生位移的相关的骨骼的旋转,提升K动画的效率;


捏脸系统需要新的GameMode,并将DefaultPawnClass指定为捏脸的角色;