class-system
Class System
🎮 Unreal Engine Class System
🏛 核心概念
- Class System:Unreal 基于 C++ 类层级体系 + 反射系统(UClass、UObject、UProperty),使得游戏对象、组件、蓝图都能统一管理。
- 宏(UCLASS/USTRUCT/UENUM/UPROPERTY/UFUNCTION):告诉 Unreal Header Tool (UHT) 如何生成反射数据。
- 反射 (Reflection):让 C++ 类在运行时能被引擎识别、序列化、暴露给蓝图/编辑器。
🧩 基础类层级
| 类 | 作用 | 常见用途 |
|---|---|---|
| UObject | 所有 UE 类的基类,支持反射、GC、序列化 | 配置类、数据对象 |
| AActor | 可放入关卡的对象,带有 Transform | 玩家、敌人、道具 |
| APawn | 可被控制的 Actor | 玩家角色、AI 角色 |
| ACharacter | 内置移动、骨骼、动画的 Pawn | 人形角色 |
| UActorComponent | 附加到 Actor 的功能模块 | 血量组件、射击组件 |
| USceneComponent | 带有 Transform 的组件 | 摄像机、碰撞体、Mesh |
| UGameInstance | 游戏生命周期管理,全局对象 | 全局数据、网络会话 |
| UGameMode | 定义规则与流程,只在服务器存在 | 单局规则 |
| UGameState | 储存全局游戏状态 | 分数、时间 |
| APlayerController | 玩家输入与控制逻辑 | 本地/远程玩家控制 |
| APlayerState | 储存玩家信息(网络同步) | 分数、昵称 |
| AHUD | UI 显示 | 血条、准星 |
| UUserWidget | UMG UI 元素 | 菜单、HUD |
🛠️ 核心宏与用途
UCLASS()