44 lines
1.5 KiB
Markdown
44 lines
1.5 KiB
Markdown
---
|
|
title: "Replication Graph"
|
|
type: concept
|
|
tags: ["unreal-engine", "networking", "optimization"]
|
|
sources: ["unreal-multiplayer-architect", "unreal-multiplayer-architect"]
|
|
last_updated: 2026-04-30
|
|
---
|
|
|
|
## Aliases
|
|
- Replication Graph
|
|
- 复制图
|
|
- 空间分区复制
|
|
|
|
## 定义
|
|
Replication Graph 是 UE5 5.3+ 引入的网络复制优化框架,用空间分区替代默认的平面相关性模型,显著降低多人游戏的带宽消耗。
|
|
|
|
## 默认问题
|
|
默认复制层使用平面列表,每个客户端需要检查所有 Actor 的相关性,大规模世界中效率低下。
|
|
|
|
## Replication Graph 优化
|
|
### 空间网格划分
|
|
使用 `UReplicationGraphNode_GridSpatialization2D` 将世界划分为网格单元,每个客户端只接收其附近单元内 Actor 的更新。
|
|
|
|
### 自定义节点
|
|
- `UReplicationGraphNode_GridSpatialization2D` — 开放世界 Actor 复制
|
|
- `UReplicationGraphNode_ActorList` — 低频更新 Actor
|
|
- 自定义节点 — 适配特定游戏需求
|
|
|
|
## 性能收益
|
|
- 可将带宽降低 **40%**
|
|
- 减少每秒复制的 Actor 数量
|
|
- 按玩家位置动态调整复制范围
|
|
|
|
## 使用方法
|
|
1. 启用 ReplicationGraph Plugin
|
|
2. 创建自定义 `UGameInstanceReplicationMgr` 子类
|
|
3. 实现 `CreateReplicationGraph()` 返回配置好的 Graph
|
|
4. 在 `.uproject` 文件中添加插件依赖
|
|
|
|
## 相关概念
|
|
- [[Actor Replication]] — 复制图优化的底层机制
|
|
- [[NetUpdateFrequency]] — 配合频率优化
|
|
- [[Server-Authoritative Model]] — 复制图不影响权威模型
|