[UE虚幻] [UE4技美]虚幻4游戏引擎动画系统制作流程(上篇)

查看:5579 |回复:71 | 2016-7-20 22:07:36

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 醉酒風 于 2019-4-9 22:39 编辑

UE4动画系统制作流程
角色使用3D软件制作完成后,导出格式为带有骨骼的FBX文件,不导出动作。
动作文件需要单独导出,导出时只导出骨骼和动画文件,不导出模型。

目录结构为:
“角色名”文件夹,放入制作的蓝图等文件 >>>
Animations文件夹,放入所有动画文件>>>
AimOffsets文件夹,放入所有角色瞄准姿态>>>
Meshes文件夹,放入模型文件
Surface_“角色名”>>>
MaterialLayers文件夹放入,Material Function文件。
Materials文件夹放入,材质球文件。
Textures文件夹放入,贴图文件。

b53a6c548b714d5fa559822bb47cc062.001.1456730818.jpg

根据标准设置完文件夹后在“角色名”文件夹创建一个类型为AimOffset文件,命名为:(“角色名”+ Aim)。这个文件将为我们提供角色的上半身瞄准姿态的切换。
首先设置Anim Asset Details菜单下的Additive Settings选项卡中Preview Base Pose的参数为Idle。
然后设置Parameters菜单下的X Axis Label 为 Yaw (意思是左右旋转),X Axis Range为-180、180。设置Y Axis Label为Pitch (意思是上下旋转),Y Axis Range为-90、90。
然后分别拖入不同方向的关键帧到(如图)相对应的位置。
AimOffset中应具有总共15种方向用于动作混合,都为单帧动画。

它们分别为:
A+“角色名”_CC    (正前方状态)
A+“角色名”_RC    (右转状态)
A+“角色名”_LC    (左转状态)
A+“角色名”_RBC  (右后转状态)
A+“角色名”_LBC  (左后转状态)
A+“角色名”_CU   (正上放状态)
A+“角色名”_RU   (右上方状态)
A+“角色名”_LU   (左上方状态)
A+“角色名”_RBU  (右后上方状态)
A+“角色名”_LBU  (左后上状态)
A+“角色名”_CD   (正下方状态)
A+“角色名”_RD   (右下方状态)
A+“角色名”_LD   (左下方状态)
A+“角色名”_RBD  (右后下状态)
A+“角色名”_LBD  (左后下状态)

b53a6c548b714d5fa559822bb47cc062.002.1456730818.jpg

设置完成后关闭AimOffset文件。
然后在“角色名”文件夹下创建一个类型为Blend Space格式的文件,命名为:(“角色名”+ Locomotion)。我们将通过这个文件来切换静止,走路和跑步状态。
打开文件后,设置Parameters菜单下的X Axis Label 为 Direction(方向),X Axis Range为-180、180。设置Y Axis Label为Speed(速度),Y Axis Range为0、600。
然后分别拖入不同方向的关键帧到(如图)相对应的位置。
AimOffset中应具有总共9种方向用于动作混合。

他们分别为:
A+“角色名”_Idle      (静止)
A+“角色名”_WalkFwd      (向前走)
A+“角色名”_WalkRight     (向右走)
A+“角色名”_WalkLeft       (向左走)
A+“角色名”_WalkBwd      (向后走)
A+“角色名”_RunFwd       (向前跑)
A+“角色名”_RunRight      (向右跑)
A+“角色名”_RunLeft       (向左跑)
A+“角色名”_RunBwd       (向后跑)


下面需要在“角色名”文件夹下创建一个类型为Animation Blueprint格式的文件。命名为:“角色名”+ BP
我们将在这里面整合角色模型和动作文件,并且配置角色的状态机调用参数。

首先我们要配置Anim Graph (如图):


这里面我们将会用到4个变量:
在Variables中新建4个float变量:


首先创建一个动画状态机:(状态机将切换角色行动状态)


双击进去后为:


在这里面我们通过判断浮点数变量的方式来切换走跑等状态。
我们首先建立两个状态,分别为:Idle, Locomotion。
双击Idle状态,进入子界面菜单。
点击右键,新建一个Play Idle节点,并连接到Final Animation Pose。
这等于默认播放Idle动作。


Settings中的Sequence选择为Idle。


返回到State Machine菜单,双击Locomotion节点,进入子界面菜单。
在Asset Browser菜单栏中找到我们再外面创建的Locomotion Blend Space,并拖入到子界面菜单中。


在MyBlueprint菜单栏中找到我们之前创建的Direction和Speed两个变量,拖动到子界面菜单中。


然后按照以下方式进行连接。这样就会通过我们再BluePrint创建好的变量,同步到之前创建好的Locomotion的Blendspace Player中。


返回到State Machine菜单,连接Entry到Idle上,连接Idle到Locomotion上,连接Locomotion到Idle上。连接完成后,会出现两个圆形的带左右箭头的图标,这两个图标为判断开关。


双击Idle到Locomotion之间的判断开关。
在My Bluprint菜单栏中,把我们创建好的Speed变量拖动进去。然后点击右键创建判断是否相等的Action。把Speed节点,连接到这个Action上。


再点击右键创建Not的Action。把他们整体上串连起来。
这代表着,当Speed != 0时,触发Locomotion控制器。


返回到State Machine菜单,双击Locomotion到Idle的判断开关。
在My Bluprint菜单栏中,把我们创建好的Speed变量拖动进去。然后点击右键创建判断是否相等的Action。把所有节点整体连接。当speed == 0时切换为Idle。


以上,我们的基础状态机就制作完成了。同理比如下蹲,加速等动作也在这里面进行制作。点击Compile , Save一下,关闭菜单。
下面我们返回到Anim Graph菜单。在My Blueprint中找到Yaw和Pitch变量,拖入到菜单。


在Asset Browser中找到之前创建的AimOffset文件拖动进来。根据下面图的结构连接节点。整体的意思就是State Machine为Base Pose 输入到AimOffset中,再把Blueprint中新建的Yaw和Pitch变量输入到AimOffset中进行控制,然后最终输出为运行时的Pose。


我们已经通过以上方法,制作好了AnimGraph。下面将进行EventGraph的制作。
在My Blueprint中找到EventGraph双击进入。


里面默认有一个节点:


点击右键输入cast to character ("caet to character"是自带的固定的命名,代表获取本角色创建的character类型的Blueprint。 cast to 的意思就是获取本蓝图或别的蓝图中的变量进行set设置,获取别的蓝图中的话就把cast to后面的关键字换成别的蓝图就好了),然后创建。


Object参数是必须有的,它将用于获取角色的速率。我们点击右键输入try get pawn owner(获取自己的动画实例?)创建这个节点,并进行连接。


下一步要我们要搭建3个模块。一个模块获取控制速度,一个模块控制瞄准姿态,一个模块控制动作姿态。

速度控制部分,如图:


瞄准姿态控制部分:


动作姿态控制部分:


关于节点的详细参数和流程描述后续再细化更新。
根据以上的调节,我们的角色蓝图就创建完毕了,你可以把自己想要的功能(比如跳跃,下蹲,翻滚)添加套用进去。
关闭这个动画蓝图,回到主菜单。找到我们之前创建的Character类型的蓝图,双击进入。


在Components窗口里点击3rdPersonPawn(self) ,在Details菜单里按照下图设置:



然后点击进入Event Graph 窗口创建以下节点。这些节点用于调用设备的输入控制。


设置完后点击Compile , Save关闭菜单。把这个Character蓝图拖动到游戏里。
把Details下面Pawn中的Auto Possess Player改成Player 0 , 然后运行一下就可以操作这个角色了。


2016-7-20 22:07:36  
 赞 赞 3

使用道具 登录

71个回答,把该问题分享到群,邀请大神一起回答。
2#
更幸福
回复 收起回复
2016-7-21 07:13:12   回复
 赞 赞 2

使用道具 登录

4#
想要成大触,天天上元素!{:1_144:}
回复 收起回复
2016-7-22 06:30:49   回复
 赞 赞 2

使用道具 登录

5#
正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!正是本尊想要的!
回复 收起回复
2016-8-10 12:55:07   回复
 赞 赞 2

使用道具 登录

6#
非常好的东西,谢谢分享
回复 收起回复
2017-7-13 12:41:51   回复
 赞 赞 2

使用道具 登录

7#
感谢楼主分享
回复 收起回复
2017-7-19 09:53:23   回复
 赞 赞 2

使用道具 登录

8#
资源哪里好,肯定元素找!
回复 收起回复
2017-7-24 09:25:57   回复
 赞 赞 2

使用道具 登录

9#
原创教程啊?太好了,楼主辛苦,感谢共享技术~~!!!
回复 收起回复
2017-7-30 12:22:27   回复
 赞 赞 2

使用道具 登录

10#
感谢楼主分享经验!
回复 收起回复
2017-7-31 09:39:03   回复
 赞 赞 2

使用道具 登录

11#
不错的资源,谢谢分享。。。
回复 收起回复
2017-8-15 09:31:30   回复
 赞 赞 2

使用道具 登录

12#
不错的资源,谢谢分享。。。
回复 收起回复
2017-8-18 10:12:32   回复
 赞 赞 2

使用道具 登录

13#
谢谢分享
回复 收起回复
2018-9-5 20:36:31   回复
 赞 赞 2

使用道具 登录

14#
非常厉害,手打回复以表尊敬~~~
回复 收起回复
2018-10-1 10:48:45   回复
 赞 赞 2

使用道具 登录

15#
好好好!学习了!
回复 收起回复
2018-10-15 13:15:32   回复
 赞 赞 2

使用道具 登录

16#
我们先定一个能达到的小目标,先赚它一亿元素币
回复 收起回复
2018-10-15 14:23:40   回复
 赞 赞 2

使用道具 登录

17#
资源甚好,发帖艰辛,且阅且珍惜!
回复 收起回复
2018-10-15 14:26:54   回复
 赞 赞 2

使用道具 登录

18#
太棒了吧!正是我想要的!
回复 收起回复
2018-10-15 14:33:48   回复
 赞 赞 2

使用道具 登录

19#
       
感谢分享
回复 收起回复
2018-10-15 15:27:42   回复
 赞 赞 2

使用道具 登录

20#


讚讚讚
回复 收起回复
2018-10-15 16:24:52   回复
 赞 赞 2

使用道具 登录

CG 游戏行业专业问题

UE虚幻引擎节点可视化BluePrint蓝图
1234下一页
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表