My understanding of Unreal Engine 5's GameplayAbilitySystem plugin (GAS) with a simple multiplayer sample project. This is not official documentation and neither this project nor myself are affiliated with Epic Games. I make no guarantee for the accuracy of this information.
3D
这篇文章这个课程的记录Unreal Engine 5 Gas Top Down RPG
- Ability System Component:控制技能生命周期。
- Attribute Set:数据配置
- Gameplay Ability:技能逻辑
- Ability Task:技能执行在一帧,可以设置不同的回调也就是任务,来响应技能执行。
- Gameplay Effect:技能产生的影响,修改了那些数据。
- Gameplay Cue:技能相关的音效,粒子效果,相机抖动等。
- Gameplay Tag:描述物体的状态或数据,可以用来控制技能的释放等。
https://www.romsgames.net/gameboy-advance-rom-chocobo-land---game-de-dice/
https://www.romsgames.net/gameboy-advance-rom-choh-makai-mura-r-eurasia/
https://www.romsgames.net/gameboy-advance-rom-sennen-kazoku-supplex/
陀螺游戏
https://www.romsgames.net/gameboy-advance-rom-beyblade-g-revolution/
https://www.romsgames.net/roms/gameboy-advance/?letter=all&page=12&sort=alphabetical
https://www.udemy.com/course/unreal-engine-5-cpp-multiplayer-shooter
Peer-to-Peer, Client-Server
UE5 Uses an Authorirtative Client-Server Model
多人游戏连接
是什么?
我们经常会听到ECS这个名词,最近Unity也在推动他的ECS框架。那到底什么呢?
我们从字面上来解释就是Entity-Component-System,也就是实体-组件-系统。
分别解释一下:
- Entity :一个对象
- Component :存储数据的容器
- System :处理对象数据的运行器
我们可以从《游戏编程模式》中看到一个叫作组件模式,我认为ECS就是该模式的变种。
为什么用ECS
解耦
服务器三问
我们都知道现在游戏可以分为单机游戏和网络游戏,简单区别就是一个独自快乐,一个是多人快乐。
什么是服务器
简单地说就是一台电脑。在那台电脑上运行一些特定程序,这些程序主要的功能:
- 游戏和玩家的数据存储
- 玩家交互数据进行广播和同步
- 重要逻辑要在服务器上运算,做好验证,防止外挂
为啥要服务器
因为玩家不想让他很牛逼这个事情,只有他知道,他想告诉全世界。当然对开发者来说,是一个比较简单防破解的方式。