Unreal Engine 5 RPG Tutorial Series - #3: Vaulting with Motion Warping
Summary
TLDR本教程是关于如何在Unreal Engine 5中创建一个角色的跳跃系统,并利用新特性“Motion Warping”来实现角色在跳跃过程中的平滑过渡。教程首先指导如何启用Motion Warping插件,然后导入并设置跳跃动画,接着创建一个动画蒙太奇并添加Motion Warping效果。之后,通过在第三人称角色蓝图中使用Sphere Trace来检测玩家前方的物体,并确定跳跃的起始点、中间点和落地点。最后,结合所有计算出的点,通过Motion Warping实现角色的跳跃动画,确保角色在跳跃过程中的动作流畅且符合物理规则。视频最后还提供了测试跳跃系统并调整参数的步骤,以确保系统的正确运作。
Takeaways
- 🚀 教程介绍了在Unreal Engine 5中创建角色越障(Vaulting)系统的方法,使用新特性Motion Warping来实现动作之间的平滑过渡。
- 🔍 首先需要启用Motion Warping插件,这可以通过编辑->插件来完成,并在重启编辑器后确认插件已启用。
- 📂 导入越障动画,这里使用的是Epic Games的Echo模板中的动画,它是免费且可用的。
- 💡 在资产详情中启用Room Motion特性,这允许动画在墙空间中进行变换。
- 🎬 将导入的动画转换成Animation Montage,这允许在蓝图中调用动画并在需要时添加Motion Warping效果。
- 🛠️ 在Animation Montage中添加Motion Warping,通过设置不同的状态来控制越障动作的起始、中间和结束阶段。
- 🔑 创建Third Person Character Blueprint,并在其中添加Motion Warping组件以及一个新的Vault函数。
- 🔄 使用Sphere Trace by Channel来检测玩家前方的对象,确定越障的起始点、中间点和落地点。
- 📐 通过计算和Branch节点确保越障的起始点、中间点和落地点都正确无误,以避免角色在越障时发生异常。
- 🏃♂️ 在越障过程中,设置角色的移动模式为飞行(Flying)并禁用碰撞,以避免与障碍物发生冲突。
- 🔄 应用Motion Warping,确保越障动作的起始、中间和落地点都设置正确,以实现流畅的动画效果。
- 🎲 最后,通过播放Animation Montage来执行越障动作,并在完成后将角色的移动模式设置回行走(Walking)并重新启用碰撞。
Q & A
在Unreal Engine 5中,如何启用Motion Warping插件?
-首先,打开Unreal Engine 5的编辑器,进入“编辑”菜单,选择“插件”,然后在搜索框中输入“Motion Warping”来找到并启用该插件。启用后,根据提示重启编辑器以完成插件的启用过程。
为什么在导入Vaulting动画时需要选择正确的Skeleton?
-选择正确的Skeleton(如SK_Mannequin)是因为Skeleton定义了动画的骨骼结构和层次,确保动画能够正确地应用到角色模型上。错误的Skeleton可能导致动画无法正确播放或者出现变形。
在设置Room Motion时,为什么需要将Reference Pose设置为禁用?
-在本教程中,禁用Reference Pose是为了避免在动画变换过程中使用一个参考姿态,这样可以确保动画的运动和变换更加流畅,并且能够根据实际的运动轨迹进行精确的调整。
如何将动画转换为Animation Montage?
-在内容浏览器中选择动画,右键点击并选择“创建动画蒙太奇”(Create Animation Montage)。之后可以为这个蒙太奇命名,并在打开的蒙太奇编辑器中进行编辑和添加效果,如Motion Warping。
在设置Motion Warping时,为什么需要指定不同的状态和时间段?
-指定不同的状态和时间段是为了控制Motion Warping在动画的不同阶段如何应用。例如,可以设置起始点、中间点和落地点的状态,以便在动画的特定部分应用Motion Warping,创造出更加自然和流畅的动作效果。
在Third Person Character Blueprint中,如何使用Sphere Trace by Channel来检测Vaulting的目标位置?
-通过创建一个Sphere Trace by Channel,可以从玩家的当前位置发射一个隐形的球体,并在一定的半径内检测碰撞。通过在不同的高度和位置进行Sphere Trace,可以确定Vaulting的起始点、中间点和落地点。
为什么在Vaulting系统的设计中需要考虑落地位置的高度范围?
-考虑落地位置的高度范围是为了防止角色Vaulting到不合理的高度,比如过高的墙壁或者地下,这可能会导致角色陷入地形或者无法正确执行Vaulting动作。通过设置一个合理的高度范围,可以确保Vaulting动作的自然和合理性。
在Third Person Character Blueprint中,如何确保角色在Vaulting过程中不会发生碰撞?
-在执行Vaulting动作时,可以通过禁用角色的碰撞(Set Actor Collision Enable Collision)来避免碰撞。这样可以确保角色在Vaulting过程中不会因为碰撞而中断动作。
为什么在应用Motion Warping之前需要检查Can Warp条件?
-检查Can Warp条件是为了确保所有的Vaulting点(起始点、中间点和落地点)都已经被正确地设置和检测到。如果没有中间点,角色可能会在Vaulting过程中发生异常,比如飞出去或者动作不连贯。
在测试Vaulting系统时,如何确保角色的动作看起来自然流畅?
-为了确保角色的动作自然流畅,需要在Animation Montage中正确设置Motion Warping的关键点,并且在Third Person Character Blueprint中精确控制角色的运动模式、碰撞状态和Motion Warping的触发时机。
如果在测试中发现Vaulting系统不工作或者动作不自然,应该如何调试?
-如果Vaulting系统不工作或者动作不自然,应该检查以下几个方面:确保Motion Warping插件已正确启用,检查Skeleton是否正确选择,验证Room Motion和Animation Montage的设置是否正确,检查Third Person Character Blueprint中的Vaulting逻辑和Motion Warping应用是否准确。此外,也可以通过增加调试信息,如在编辑器中显示额外的Trace线或者Sphere,来帮助定位问题。
Outlines
Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.
Перейти на платный тарифMindmap
Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.
Перейти на платный тарифKeywords
Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.
Перейти на платный тарифHighlights
Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.
Перейти на платный тарифTranscripts
Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.
Перейти на платный тарифПосмотреть больше похожих видео
Unreal Engine 5 RPG Tutorial Series - #9: Combat
Unreal Engine 5 RPG Tutorial Series - #2: Locomotion - Blendspace, Crouching and Procedural Leaning!
Unreal Engine 5 RPG Tutorial Series - #4: Assassinations
Unreal Engine 5 RPG Tutorial Series - #12: Target Lock and Dodge Roll
Unreal Engine 5 RPG Tutorial Series - #14: Equipment System
Ninja Input - 01 - Installation and Overview
5.0 / 5 (0 votes)