本教程是关于UE5虚幻引擎RPG角色扮演游戏开发制作全面训练视频教程,时长:74小时36分,大小:53 GB,MP4高清视频格式,教程使用软件:Unreal,附源文件,作者:Stephen Ulibarri,共424个章节,语言:英语。CG素材岛(CGDAO.CN)分享
本课程使用虚幻引擎的游戏能力系统(GAS)创建多人 RPG 游戏!
你将会学到的:
虚幻引擎的游戏能力系统
多人游戏机制
创建包含战斗、经验和等级提升、敌人、法术、菜单、游戏保存等内容的完整 RPG 游戏
可靠的编码原则和 AAA 级质量的代码架构
如何确定哪些代码使用蓝图,哪些代码使用 C++,以便在已发布的游戏中实现最佳性能
可扩展、模块化、可维护和可扩展的代码,可作为任何严肃游戏的基础
游戏能力系统的所有核心功能
代码调试工具和实践
要求:
C++ 编程语言知识
虚幻引擎 C++ 基础知识 – 至少创建过一个虚幻引擎 C++ 项目
说明:
这是目前最全面的虚幻引擎课程。如果您想学习如何架构一个功能齐全的RPG游戏,那么本课程将使您有能力通过一个可扩展的代码库来实现这一目标,并使用3A级质量的代码进行架构。如果您曾想知道 C++ 和 Blueprints 之间的界限在哪里,本课程就是为您准备的。如果您曾想创建一个包含统计系统、能力、等级提升、法术、属性、菜单的 RPG 游戏,同时保持代码库整洁并遵循最佳实践,这就是为您准备的课程。如果您想提高您的虚幻引擎开发能力并更好地了解该引擎的内部工作原理,那么本课程就是为您准备的。如果您计划制作自己的严肃游戏,其中包含相互连接的系统,涉及属性、能力、等级提升、敌人和人工智能,并为多人游戏编码,那么本课程就是为您准备的!
在本课程中,我们将创建一个自上而下的RPG风格游戏,该游戏充满了使用虚幻引擎内置的游戏能力系统(GAS)构建的系统。在这里,您将学习如何构建一个已交付的游戏,并对其进行专业的编码,使其可以轻松地扩展、升级和维护。我们遵循 SOLID 编码原则,以《堡垒之夜》等 AAA 级游戏的方式平衡蓝图/C++ 的比例。我在开发 AAA 级游戏代码方面的经验,以及与业内资深开发人员的磋商,让我可以向你揭示真正的游戏代码库的样子。如果你曾想过,蓝图与 C++ 相比,能保留多少游戏内容,那么不用再想了。本课程就是答案。
本游戏项目中的资产是专门为本课程制作的,并将以资产包的形式提供。其中包括:
角色,包括主角 Aura,以及敌人角色,包括哥布林战士、哥布林游侠、哥布林巫师、红黑恶魔、食尸鬼和蘑菇。
模块化地下城包,可拼凑成基本的地下城
航点神龛和方尖碑
粒子尼亚加拉系统特效,包括爆炸、等级提升特效、弹弓石、撞击、电束、火球、火弹、火焰、眩晕效果的星星等!
敌人、脚步、法术等音效!
HUD 的纹理,包括高品质按钮、框架、动态动画法术球、进度条、XP 条等!
Aura 和所有敌人的完整动画集
更多内容
在本课程中,我们将学习以下内容:
从头开始设置自顶向下项目
使用轮廓效果选择敌人和物品
正确使用 OOP 和继承创建角色类层次结构
游戏能力系统及其核心类介绍
自定义游戏能力系统组件和属性集,以及如何复制属性
所有 GAS 类和组件的所有重要设置
如何将属性用于玩家统计,包括主要属性:
力量(增加物理伤害)
智力(增加魔法伤害)
恢复力(增加护甲和护甲穿透)
活力(增加最大生命值)
基于主要属性和其他自定义变量的次要属性:
护甲(减少受到的伤害,提高格挡几率)
护甲穿透(无视敌方护甲百分比,提高关键一击几率)
格挡几率(可将受到的伤害减半)
临界命中几率(双倍伤害加上临界命中奖励的几率)
临界重击伤害(获得临界重击时的额外伤害加成)
临界命中抵抗(降低攻击敌人的临界命中几率)
健康再生(每 1 秒恢复的健康值)
法力再生(每 1 秒恢复的法力值)
最大生命值(可获得的最大生命值)
最大法力值(可获得的最大法力值)
重要属性 – 健康值和法力值等与其他所有属性相关的属性
游戏效果 – GAS 系统中用于更改属性的类别
游戏标签(Gameplay Tags)–GAS 的重要组成部分,它允许我们识别品质、属性、能力、角色类别以及其他任何我们能想象到的东西。
视频预览:
游戏用户界面–如何在 RPG 游戏中以有组织、模块化和可扩展的方式高效处理复杂的用户界面。我们将介绍不同的用户界面范例,包括 MVC(模型视图控制器)和 MVVM(模型视图视图模型,使用虚幻引擎的新视图模型功能)
完整的属性和法术菜单,包括升级能力、法术树、锁定的法术等级、按能力等级进行的法术升级等内容
属性(Attributes)–如何使用游戏属性(Gameplay Attributes)来表示玩家的统计数据,并通过创建效果应用管道(Effect Application pipeline)将其融入游戏机制中,从而允许计算游戏中的现象(如战斗伤害)所导致的结果。
游戏能力–GAS 的核心。我们创建了各种类型的游戏能力,以处理法术的施放、处理玩家角色和敌人 AI 的重要能力,以及如何配置不同的能力以满足您的需求。
不同的 RPG 等级–我们实现了不同的 RPG 角色等级,包括游侠、战士和元素师,并以易于扩展的方式实现,因此您可以在游戏中拥有任意数量的角色等级类型。
伤害和战斗 – 我们实施了一个完整的 RPG 风格战斗系统,其中包含不同的伤害类型、伤害抗性以及与伤害类型相对应的 debuff,并将这些计算结果编码到我们的伤害管道中。所有属性、伤害类型、抗性和debuff在这款游戏中都能发挥作用。
所有战斗机制都会以某种形式的视觉反馈显示给玩家。这包括浮动的伤害文字,根据自定义标准改变颜色,浮动文字告知关键命中、阻挡命中和关键阻挡命中。我们还针对雷电伤害实施了击退和眩晕机制,使角色/敌人失去行动能力,并实施了火焰debuff,使角色被点燃并在燃烧时受到火焰伤害。
敌人 AI – 我们使用虚幻引擎行为树和环境查询系统 (EQS) 来实现敌人行为,为远程、战士和元素师敌人类型提供自定义行为。
敌人可以施放法术和召唤人工智能爪牙
在俯视游戏中,当几何体挡住摄像机时,几何体会逐渐消失
能力成本和冷却时间(法术消耗属性资源–在本游戏中,法术消耗法力值)
配备法术的全功能 HUD,显示法术冷却时间和经验值 (XP)
可在法术菜单中将能力分配给不同的输入(将 “火弩箭 “分配给 “1 “键,将 “电击 “分配给鼠标左键,然后将它们互换,等等)
经验和等级提升系统 – 我们精心设计了一个经验系统,消灭敌人可获得 XP,各种能力达到 XP 临界值时可提升等级。XP 和等级会在 HUD 中显示,等级提升信息和效果也会显示。等级提升与获得属性点数和法术点数有关,属性点数和法术点数可分别用于在属性菜单和法术菜单中升级属性和法术能力,以及在等级提升后补充体力和法力。(基本上,你会看到足够多的例子来说明如何使用这个系统,你可以在自己的游戏中扩展它的任何功能)。
被动法术 – 您可以装备的法术,在装备后会保持激活状态。
各种攻击性法术,展示了 GAS 的不同实例和功能,包括 “火焰冲击”、”电击”、”奥术碎片 “和 “火焰冲击”。
保存进度和关卡转换
虚幻引擎中级/高级主题,包括自定义异步任务(Async Tasks)、能力任务(Ability Tasks)、蓝图函数库(Blueprint Function Libraries)、资产管理器(Asset Managers)、单子(Singletons)(以及为什么这些单子只适用于极少数情况)、自定义游戏效果上下文(Gameplay Effect Contexts)、网络序列化(Net Serialization)、Struct Ops 类型特质(Struct Ops Type Traits)、C++ lambdas、游戏机制算法等。
如何选择哪些功能应放在 C++ 中,哪些应放在蓝图中–这是最有价值的课程之一,在整个课程中都有讲授。学生们经常问我:”哪些功能应该使用 C++,哪些应该使用 Blueprint?这门课程就是我的答案。这是一个严肃的项目基础,有 100 多个小时的视频,没有任何填充。项目架构中约 50% 使用蓝图,50% 使用 C++。我会告诉你哪些功能应该放在 C++ 中,哪些功能更适合蓝图,以及为什么。
这不是初级课程。我希望您已经了解 C++ 编程语言,并至少创建过一个虚幻引擎 C++ 项目。我建议您在学习本课程之前先学习以下课程(如果还没有的话):
学习游戏开发中的 C++。
或者已经掌握了相应的知识,无论您是通过自学还是其他资源/教程获得的。如果您已经有了游戏开发经验,并觉得自己可以胜任,请放心加入!如果 C++ 代码似乎超出了你的理解范围,请参考以上两门课程,因为它们会教给你所有需要掌握的知识,让你在这门课程中获得顺利而有趣的体验。这两门课程中没有涉及的内容都会深入讲解,我假设你对 GAS 或本课程中涉及的高级主题一无所知。
本课程是我目前最好的课程,我非常自豪地为您带来虚幻引擎 5RPG 课程,这是我近一年的艰苦开发、研究、咨询专业人士和资产创建的成果。学习本课程后,您将比普通开发人员更了解虚幻引擎,您将有能力创建自己的架构良好的项目,无论项目大小,您将为您的团队、您的公司、您的个人企业以及您用自己的技能为之增光添彩的任何人/事带来价值。
此课程项目在虚幻引擎 5.2 版本中创建。
此课程面向哪些人:
希望了解如何在虚幻引擎中构建可扩展、可运输的游戏的人员
希望了解如何实现游戏属性、能力、经验、等级提升,以及如何在简洁的代码库中维护这些属性、能力、经验、等级提升的人员。
希望了解如何高效处理复杂系统的游戏 UI 的人员
希望创建自己的 RPG、MOBA、射击游戏或其他任何涉及属性、技能、法术或其他自定义机制的游戏的人
希望了解如何使用行为树和环境查询 (EQS) 实现敌人 AI 的用户
拥有虚幻引擎经验并希望扩展技能以创建可发布游戏的人员
希望学习游戏能力系统 (GAS) 的综合课程,以便在自己的游戏项目中使用该系统的人员
业余爱好者和专业游戏开发人员都将从本课程中受益
需要为团队游戏项目学习 GAS 基础知识的 AAA 级开发人员
游戏开发项目的领导者,他们需要了解GAS在虚幻引擎中是如何工作的、它的功能、局限性以及开发人员在时间和精力上的成本
需要以可扩展的方式构建游戏项目的团队,以便项目启动后易于维护
已经创建了一些基本的虚幻引擎项目,并准备进入下一阶段的优秀项目的人员!