二 · CPU-GPU COLLABORATION
CPU 与 GPU 协同架构
多线程渲染架构与命令流水线
游戏引擎如何组织多线程将逻辑计算转化为 GPU 命令。以 UE 三线程模型为例(Unity 为主线程 + RenderThread + Job System),理解各线程职责与瓶颈归属是性能分析的前提。
01
Game Thread
游戏线程驱动游戏世界的逻辑心跳,通常是 CPU 瓶颈的第一嫌疑。
- 逻辑更新
Tick / 游戏玩法逻辑
- 场景管理
Actor / 组件生命周期与变换更新
- AI / 物理 / 动画
行为树、物理模拟、动画蓝图求值
02
Render Thread
渲染线程将场景数据翻译成绘制命令的中间层。
- 构建渲染命令
遍历场景代理(Scene Proxy)
- 剔除与排序
视锥剔除 / 遮挡剔除 / 绘制排序
- 生成 DrawCall
Mesh Batch 合并与提交
03
RHI Thread
RHI 线程渲染硬件接口层,屏蔽底层图形 API 差异。
- API 抽象层
D3D12 / Vulkan / Metal 统一封装
- 资源管理
Buffer / Texture / PSO 的创建与生命周期
- 命令提交
Command List 录制与提交到 GPU 队列
04
GPU Command Queue
GPU 命令队列CPU 与 GPU 的交界处,异步执行与同步的核心。
- 命令缓冲
Command Buffer 双缓冲 / 环形缓冲
- 异步执行
Graphics / Compute / Copy 多队列并行
- 同步信号
Fence / Semaphore / Barrier 资源转换