Unreal Engine 5 RPG Tutorial Series - #4: Assassinations
Summary
TLDR在这个Unreal Engine 5的教程视频中,我们继续RPG系列的制作,专注于创建刺杀系统。该系统将利用动作扭曲技术,动态调整角色的根动作以适应其起始位置,使玩家能够利用动画的动作达到设定的目的地。首先,我们通过提供的链接下载并导入了一套免费的战斗动画资源包。接着,我们选择了所需的刺杀动作,并将它们导入到Unreal Engine中,适配了旧版Unreal Engine 4的骨架。之后,我们将动画转换成动画蒙太奇,以便能够在蓝图中播放并添加动作扭曲。此外,我们对第三人称角色的输入动作进行了设置,并创建了一个用于测试的虚拟角色蓝图。通过实现一个接口,我们能够在不同敌人类型间共享刺杀逻辑。最后,我们为刺杀系统添加了一个用户界面提示,并确保当玩家进入刺杀范围时显示提示,退出范围或执行刺杀动作时隐藏提示。整个教程详细展示了如何在Unreal Engine 5中设置和测试刺杀系统,为RPG游戏开发提供了实用的指导。
Takeaways
- 🎮 视频中介绍了如何在Unreal Engine 5中创建RPG系列教程中的刺杀系统。
- 🔄 利用Motion Warping功能,可以动态调整角色的根运动以适应其起始位置,使玩家能够使用动画的运动到达设定的目的地。
- 📂 通过提供的链接下载并导入了一套免费的战斗动画资源包,这些动画适用于旧版的Unreal Engine 4骨架。
- 🔄 需要将UE4的动画重新定位到UE5骨架,并创建动画蒙太奇以便在蓝图中播放。
- 🛑 为了实现刺杀系统,创建了一个Dummy蓝图用于测试,该蓝图实现了一个接口,用于提供刺杀所需的参考位置和刺杀者的旋转信息。
- 🔍 通过ForEachLoop遍历所有重叠的Actor,并通过接口检查是否为Dummy,以触发刺杀动作。
- 🖱️ 设置了新的输入动作,使用鼠标左键来激活刺杀系统,并在玩家界面上显示提示。
- 🤸♂️ 利用动画蒙太奇播放刺杀和受害者的动画,并使用Motion Warping组件来实现角色的运动。
- 🧲 在Dummy蓝图中实现了被刺杀后的物理效果,如应用物理模拟使敌人在被刺杀后呈现物理反应。
- 📍 通过精确调整参考位置和旋转,确保刺杀动作与敌人的位置和方向匹配。
- 🛠️ 为了更好的用户体验,创建了一个用户界面Widget,提示玩家何时可以进行刺杀动作。
Q & A
在Unreal Engine 5中,什么是Motion Warping?
-Motion Warping是Unreal Engine 5中的一个特性,它能够动态调整角色的根运动以匹配其起始位置,从而使用动画的运动让玩家以一种方式移动,达到预设的目的地。
在导入动画到Unreal Engine时,为什么需要选择旧的Unreal Engine 4骨架?
-因为提供的动画是为旧的Unreal Engine 4骨架制作的,所以在导入时需要选择旧的UE4骨架以确保动画正确地应用到角色模型上。
如何将动画转换为Animation Montage?
-首先选择需要转换的动画,然后右键点击选择“Create Animation Montage”,在弹出的窗口中可以设置Montage的名称和长度,完成后打开Montage编辑器进行进一步的编辑。
为什么在动画中需要启用Root Motion?
-启用Root Motion是为了允许动画控制角色的移动,这是实现Motion Warping功能的基础,确保角色能够根据动画的运动来移动。
在设置刺客系统时,为什么要创建一个Dummy Blueprint?
-创建Dummy Blueprint是为了测试刺客系统,可以在不编写AI的情况下,通过Dummy来模拟敌人的行为和反应,以便开发者可以调试和优化刺客系统。
如何通过接口(Interface)在Unreal Engine中实现不同角色之间的通信?
-通过创建一个Blueprint Interface并定义所需的函数和参数,然后让不同的角色Blueprint实现这个接口。这样,任何实现了该接口的Blueprint都可以调用这些函数,实现通信。
在刺客系统中,如何实现当玩家进入特定半径时显示刺杀提示?
-使用On Component Begin Overlap事件,在触发该事件时检查重叠的Actor是否为玩家角色,如果是,则通过Widget组件将刺杀提示Widget设置为可见。
为什么要在刺杀动作之后为敌人添加物理模拟(Ragdoll)?
-添加物理模拟可以让敌人在被刺杀后根据物理规则进行运动,如倒地等,增加了游戏的真实感和视觉效果。
在Unreal Engine中,如何实现一个自定义的刺客提示Widget?
-通过创建一个新的Widget Blueprint,设计所需的界面元素(如Text Block和Canvas Panel),然后在游戏逻辑中根据需要显示或隐藏这个Widget。
在刺客系统中,为什么需要对敌人应用一个延迟后才能应用物理模拟?
-延迟是必要的,因为如果在动画播放的同时立即应用物理模拟,可能会导致动画效果被打断,延迟可以让动画先完成,然后再进行物理模拟,以获得更流畅的视觉效果。
在Unreal Engine中,如何确保Widget提示始终面对玩家?
-通过在Widget的逻辑中获取玩家的摄像机位置,并使用Find Look At Rotation节点来计算Widget应该面对摄像机的旋转,然后将这个旋转应用到Widget上。
Outlines
هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنMindmap
هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنKeywords
هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنHighlights
هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنTranscripts
هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنتصفح المزيد من مقاطع الفيديو ذات الصلة
Unreal Engine 5 RPG Tutorial Series - #10: Sword Trace Damage and Hit Reactions
Unreal Engine 5 RPG Tutorial Series - #9: Combat
Unreal Engine 5 RPG Tutorial Series - #14: Equipment System
Unreal Engine 5 RPG Tutorial Series - #12: Target Lock and Dodge Roll
Unreal Engine 5 RPG Tutorial Series - #2: Locomotion - Blendspace, Crouching and Procedural Leaning!
Unreal Engine 5 RPG Tutorial Series - #3: Vaulting with Motion Warping
5.0 / 5 (0 votes)