55 lines
3.8 KiB
Markdown
55 lines
3.8 KiB
Markdown
---
|
||
title: "Unreal Systems Engineer"
|
||
type: source
|
||
tags: []
|
||
date: 2026-04-26
|
||
---
|
||
|
||
## Source File
|
||
- [[raw/Agent/agency-agents/game-development/unreal-engine/unreal-systems-engineer.md]]
|
||
|
||
## Summary(用中文描述)
|
||
- 核心主题:Unreal Engine 5 系统架构师 AI Agent 人格规范——C++/Blueprint 边界决策、性能优化、网络就绪游戏系统构建
|
||
- 问题域:AAA 级 UE5 游戏项目中的技术架构决策、性能瓶颈规避、网络复制可靠性保障
|
||
- 方法/机制:C++/Blueprint 分层架构(Tick 逻辑必须 C++)、GAS 网络复制配置、Nanite 实例预算管理、智能指针内存安全、Unreal Build System 反射宏规范
|
||
- 结论/价值:建立了一套完整的 UE5 系统工程师能力标准,涵盖从内存管理到高级渲染的 AAA 级开发规范
|
||
|
||
## Key Claims(用中文描述)
|
||
- Tick 逻辑必须实现于 C++——Blueprint VM 开销与缓存未命中在每帧调用频率下构成性能风险
|
||
- Nanite 单场景硬上限 1600 万实例——开放世界项目需提前规划实例预算
|
||
- 所有 UObject 派生指针必须声明 UPROPERTY()——缺失将导致垃圾回收意外销毁
|
||
- GAS 网络复制必须通过 UAbilitySystemComponent——禁止手动复制技能状态
|
||
- FGameplayTag 优于字符串——标签支持层级结构、复制安全、全局搜索
|
||
|
||
## Key Quotes
|
||
> "Any logic that runs every frame (`Tick`) must be implemented in C++ — Blueprint VM overhead and cache misses make per-frame Blueprint logic a performance liability at scale." — UnrealSystemsEngineer 核心原则
|
||
|
||
> "Nanite supports a hard-locked maximum of 16 million instances in a single scene — plan large open-world instance budgets accordingly." — Nanite 实例预算警告
|
||
|
||
> "All `UObject`-derived pointers must be declared with `UPROPERTY()` — raw `UObject*` without `UPROPERTY` will be garbage collected unexpectedly." — 内存安全核心规范
|
||
|
||
## Key Concepts
|
||
- [[GAS-Gameplay-Ability-System]]:UE5 技能与属性管理框架,通过 UGameplayAbility/UAttributeSet/UAbilitySystemComponent 实现网络就绪的技能系统
|
||
- [[Nanite]]:UE5 虚拟几何体系统,支持自动 LOD 和海量实例化渲染,单场景上限 1600 万实例
|
||
- [[LumenGI]]:UE5 全局光照系统(源文档关联提及,未独立建页)
|
||
- [[Chaos-Physics]]:UE5 物理与破坏系统框架(源文档 Advanced Capabilities 提及,建议后续独立建页)
|
||
- [[Mass-Entity]]:Unreal ECS 实现,通过 UMassEntitySubsystem 处理海量 NPC/投射物/人群代理
|
||
- [[Lyra-Gameplay-Framework]]:Epic 的模块化游戏框架模式,GameFeatureAction 运行时组件注入
|
||
|
||
## Key Entities
|
||
- [[UnrealEngine5]]:Epic Games 开发的游戏引擎,提供 C++/Blueprint 双轨开发、Gas、Nanite、Lumen 等全栈工具链
|
||
- [[UnrealMultiplayerArchitect]]:多人网络架构师 Agent,与本 Agent 在网络就绪系统设计上存在协作关系(GAS 配置中涉及网络复制)
|
||
- [[UnrealTechnicalArtist]]:视觉系统工程师 Agent,与本 Agent 在 Nanite 几何优化上存在协作关系(Technical Artist 负责 Nanite 资产验证)
|
||
|
||
## Connections
|
||
- [[UnrealMultiplayerArchitect]] ← shares_gas_architecture_with ← [[UnrealSystemsEngineer]]
|
||
- [[UnrealTechnicalArtist]] ← shares_nanite_optimization_with ← [[UnrealSystemsEngineer]]
|
||
- [[UnrealEngine5]] ← provides_engine_capabilities_to ← [[UnrealSystemsEngineer]]
|
||
|
||
## Contradictions
|
||
- 与 [[UnrealMultiplayerArchitect]] 在 GAS 职责边界:
|
||
- 冲突点:GAS 配置中技能系统实现与网络复制配置的职责归属
|
||
- 当前观点(本 Agent):系统架构师负责 UGameplayAbility/UAttributeSet C++ 实现和网络复制配置
|
||
- 对方观点:网络架构师负责 RPC 通信层面和 Server Authoritative 状态同步
|
||
- 解决方向:两者互补——系统工程师构建 GAS 内部逻辑,网络架构师确保 RPC 层安全调用 GAS
|