动画混合是在一个角色或骨架网格体上的两个或多个动画之间进行平滑过渡的过程,在UE4中是有很多的方法可以混合动画的,下面为大家分享UE4动画混合的方法! 开始之前先使用蓝图第三人称模板(Blueprint Third Person Template)项目,并将动画初学者包(Animation Starter Pack)添加到项目中。 1、打开UE4项目,在内容浏览器(Content Browser) 里找到Content选项,打开ThirdPersonBP,并点击Blueprints,找到第三人称游戏模式(ThirdPersonGameMode)蓝图,将其打开。 2、在Default Pawn Class选项里面选择ThirdPersoncharacter,单击下拉菜单,在下面找到Ue4ASP_Character选项。 3、点击Compile(编译)并保存(Save),关闭蓝图。 4、在内容浏览器中打开Content选项,在里面找到AnimStarterPack文件。 5、右键点击Fire_Shotgun_Ironsights动画,选择创建(Create)-动画蒙太奇(Create AnimMontage)。 6、这时候就打开了动画蒙太奇页面,点击放大镜图标。在里面打开动画插槽管理器(Anim Slot Manager)。 7、点击添加插槽(Add Slot) ,为插槽命名为上身(UpperBody),点击保存(Save)。 8、在Montage Group的下拉菜单选择DefaultGroup.UpperBody,关闭窗口。这样就可以让蒙太奇与DefaultGroup.UpperBody关联起来,使其动画可以在在调用插槽时播放。 1、之后在内容浏览器中找到Content,在里面点击AnimStarterPack,打开Ue4ASP_Character蓝图。 2、找到蹲伏(Crouching),删除InputAction Crouch事件(带有Warning!符号)。 3、右键单击图表并添加一个你喜欢的按键并连接,下面选择C键。 4、在我的蓝图(My Blueprint)中点击添加变量(Add Variable),创建一个布尔变量,名称为Fire Button Down。 5、在图表中右键单击,添加Left Mouse Button(鼠标左键)按键事件。 6、按住Alt,拖动图表中的Fire Button Down变量,创建Set节点。 7、复制Set节点并连接。这是需要确认按下(Pressed) Left Mouse Button(鼠标左键) 时,Fire Button Down为 True,释放(Released) 时为False。 8、在组件(Components)中选择CapsuleComponent,然后在Details中选中“在游戏中隐藏(Hidden in Game)”。 9、编译(Compile)并保存(Save),关闭蓝图。 1、在AnimStarterPack(动画初学者包) 中,打开UE4ASP_HeroTPP_AnimBlueprint动画蓝图。 2、在我的蓝图(My Blueprint)中打开动画图表(AnimGraph)。 3、拖出Locomotion状态机,添加New Save cached pose。之后可以保存在缓存姿势中,方便在其他地方使用。 4、在节点上按F2,给缓存姿势指定一个名称,例如LocomotionCache。 5、在图表中右键单击并添加使用缓存姿势"LocomotionCache",或是给缓存姿势取的名称。 6、把Use cached pose节点拖出,搜索添加Layered blend per bone节点。这时Layered Blend Per Bone节点可以让骨架上的指定骨骼的动画混合在一起。 7、使用复制粘贴功能复制并粘贴Use cached pose“LocomotionCache”节点,拖出并添加 Slot“DefaultSlot”节点。 8、在Slot节点设置(Settings) 的下拉菜单中,找到并选择DefaultGroup.UpperBody。当使用此插槽的动画蒙太奇被调用以播放时,可以在动画图表中被调用。 9、将Slot节点连接到Layered blend per bone节点上的Blend Poses 0引脚,输出连接到Result和Compile。 这时我们已经完成动画图表了,接下来需要修改Layered blend per bone节点上的一些设置。 1、在UE4ASP_HeroTPP_AnimBlueprint的动画图表(AnimGraph)中,点击Layered blend per bone节点,展开图层设置(Layer Setup) ,点击+号按钮。 2、在骨骼名称(Bone Name)下,输入spine_01,将混合深度(Blend Depth)设置为1,选中Mesh Space Rotation Blend。 从spine_01骨骼开始将拍摄动画蒙太奇混合到我们的骨架上。 3、在MyBlueprint)中打开事件图表(EventGraph)。 4、拖出Cast To Ue4ASP_Character节点的As Ue4ASP Character引脚,并添加Get Fire Button Down节点。这样可以判断玩家是否按下了发射按钮。 5、按住B,同时在图表中左键单击,创建一个Branch节点,在连接Set Crouching后连接Branch节点。(之后可以在条件(Condition)中插入FireButtonDown引脚) 6、在图表中右键单击,添加Montage Is Playing节点,然后分配Fire_Shotgun_Ironsights_Montage。 7、离开Montage Is Playing节点的Return Value,添加一个Branch 节点。 8、将步骤5中的Branch节点连接到新的Branch节点,如下所示,并添加一个Montage Play节点,在Montage to Play中设置为蒙太奇。 之后可以检查蒙太奇是否正在播放,如果是,不要播放(如果不是,播放蒙太奇)。 9、编译并保存,关闭蓝图,删除关卡中现有的第三人称角色(ThirdPersonCharacter)。这样就可以使用在游戏模式中定义的所选角色。 10、在编辑器中点击运行(Play),观看最终效果。 更多文章推荐: