【UE4】GamePlay架构】的更多相关文章

世界那么大,我想去看看 引言 通过对前九篇的介绍,至此我们已经了解了UE里的游戏世界组织方式和游戏业务逻辑的控制.行百里者半九十,前述的篇章里我们的目光往往专注在于特定一个类或者对象,一方面固然可以让内容更有针对性,但另一方面也有了身在山中不见山的困惑.本文作为GamePlay章节的最终章,就是要回顾我们之前探讨过的内容,以一个更高层总览的眼光,把之前的所有内容有机组织起来,思考整体的结构和数据及逻辑的流向. 游戏世界 如果我们在最初篇所问的,如果让你来制作一款3D游戏引擎,你会怎么设计其结构?…
新标签打开或者下载看大图 更新: 增加 编程子系统 Subsystem 思维导图 Character pipeline…
一人之下,万人之上 引言 上篇我们讲到了UE在World之上,继续抽象出了Player的概念,包含了本地的ULocalPlayer和网络的UNetConnection,并以此创建出了World中的PlayerController,从而实现了不同的玩家模式策略.一路向上,依照设计里一个最朴素的原理:自己是无法创建管理自身的,所以Player也需要一个创建管理和存储的地方.另一方面,上文提到Player固然可以负责一些跟玩家相关的业务逻辑,但是对于World之上协调管理的逻辑却也仍然无处安放. 如果…
我的世界,我做主 引言 上文我们说到在Actor层次,UE用Controller来充当APawn的逻辑控制者,也有了可以接受玩家输入的PlayerController,和能自行行动的AIController.Actor的逻辑编写介绍完了,那么本篇,我们继续爬升,对于由Actors组成的Level这一层次,UE又是怎么控制的呢? 对Level记不太清楚的朋友,可以翻回去查看"GamePlay架构(二)Level和World"的讲述,简单概括就是World是由一个PersisitentLe…
PlayerController:你不懂,伴君如伴虎啊 AIController:上来,我自己动 引言 上文我们谈到了Component-Actor-Pawn-Controller的结构,追溯了AController整个家族的崛起和身负的使命.本篇我们继续来探讨Controller家族中最为人所知的PlayerController和AIController. 作为一个Controller,我们讨论的依然是该如何控制.我们已经知道了Controller可以Possess并控制Pawn,但是Cont…
<InsideUE4>-5-GamePlay架构(四)Pawn Tags: InsideUE4 我像是一颗棋 进退任由你决定 我不是你眼中唯一将领 却是不起眼的小兵 引言 欢迎来到GamePlay架构章节的下半部分! 在上一篇的内容里,我们谈到了UE的3D游戏世界是由Object->Actor+Component->Level->World->WorldContext->GameInstance->Engine来逐渐层层构建而成的.那么从这下半章节开始,我们…
GameInstance这个类可以跨关卡存在,它不会因为切换关卡或者切换游戏模式而被销毁.然而,GameMode和PlayController就会再切换关卡或者游戏模式时被引擎销毁重置,这样他们里面的状态就不能被保存.比如,你想再下一个关卡中知道上一个关卡游戏角色的位置,这时就得在GameInstance中保存游戏角色在上一个关卡的位置.用户登录的账号信息也可以保存在GameInstance中.每一个关卡都可以对应不同的GameMode和PlayController 引言 上篇我们讲到了UE在W…
UE4 概念知识 基础概念--文件结构.类型.反射.编译.接口.垃圾回收.序列化[导图] GamePlay架构[导图] 类的继承层级关系[导图] 反射机制 垃圾回收机制/算法 序列化 Actor 的生命周期 引擎运行流程 渲染流程 UE4 C++ 基础编程 UPROPERTY宏.属性说明符.元数据说明符 UFUNCTION宏.函数说明符.元数据说明符 基本数据类型.字符串处理及转换 枚举 Enum.结构体 Struct 容器--TArray 容器--TMap 容器--TSet Delegate…
概述 定义 Subsystems 是一套可以定义.自动实例化和释放的类的框架.可以将其理解为 GamePlay 级别的 Component 不支持网络赋值 4.22开始引入,4.24完善.(可以移植源码到更早之前的版本使用.源码在手,为所欲为) 五类 Subsystems 及其生命周期 UEngineSubsystem(继承自 UDynamicSubsystem,UDynamicSubsystem继承自 USubsystem) UEngine* GEngine 代表引擎,数量1. Editor或…
概述: Slate是UE4提供的UI框架,整个UE4 Editor UI都是使用Slate构建的: Slate的官方文档:[Slate UI框架] Slate底层内容,中文环境下能搜索到的有效资源也不多: 这里打算记录一些SlateCore.Slate模块的基础知识: 包括但不限于类介绍.接口分析.资源管理与加载.渲染等,也会包括一些英文翻译过来的教程: 目标 于UE4新入这来说,有一个step by step的教程,确保VS工程编译成功 工程配置: 注: 1.需要有C++基础,尽量不涉及到蓝图…