《游戏引擎实现原理》卷四《工程与实战》全 30 篇,是四卷本的收官卷:从第 1 章「打包与产物分析」起,到第 10 章把四卷 60 章串成一张引擎原理全景图,
helio会一路把《微光岛》从「能跑」推到「能交付」——一条从模块图到首包体的构建与资产管线、一套假对象与黄金图像与确定性回放的引擎测试、一份帧时间分位数与 GC 次数与 GPU 计时的性能账、一张能力探测与质量档位的降级表、一道模块边界与特性开关的裁剪线、一组调试绘制与控制台与遥测的排障工具,以及把《微光岛》真正做完的玩法装配、内容管线、预算达标与上线清单。每一节都写代码,每一节的代码都在本机真跑过,跑出来的是真实字节、真实耗时与真实像素。
本页是《工程与实战》的全书目录:按章节顺序列出全部 30 篇,点击标题直达正文。也可以从各节末尾的「阅读导航」按顺序通读,或先看目录篇 里的阅读路径与周计划。
全书概览
| 项目 | 内容 |
|---|---|
| 书稿 | 《游戏引擎实现原理》卷四《工程与实战》 |
| 篇数 | 30 篇(正文 10 章 29 节 + 目录篇) |
| 领域 | 游戏引擎的构建、测试、性能、跨端与交付工程化 |
| 贯穿项目 | 《微光岛》——一款低多边形 3D 收集冒险小游戏 |
| 从零引擎 | helio——纯 TypeScript,在卷一二三之上完成工程化收口 |
| 阅读方式 | 从目录篇 进入按顺序通读,或按查漏场景跳读 |
| 实测环境 | Node 26 与 headless Chromium(黄金图像、调试绘制、玩法渲染、GPU 计时) |
| 可运行性 | L1 逻辑与基准本机实跑;L2 渲染用 headless Chromium 验证,附真实像素;跨端、桌面打包、真实部署为 L3 / L4 |
| 前置 | 卷一《引擎内核》、卷二《渲染引擎》、卷三《子系统与工具》,或了解句柄、ECS、RHI 与资源管线的基本概念 |
全书目录
前置
| 篇目 | 核心内容 |
|---|---|
| 目录 | 本卷定位、与前三卷的关系、阅读路径、周计划与可运行性口径 |
第一部分:工程化的三根支柱(第 1–3 章)
让引擎「包得住、测得准、量得清」——从构建与资产管线起步,经引擎自己的测试,最后落到性能工程。
| 节 | 文章 | 核心内容 |
|---|---|---|
| 1.1 | 1.1 打包与产物分析 | 模块图与拓扑序、tree-shaking 的保留 / 删除双重判据、gzip / brotli 体积构成 |
| 1.2 | 1.2 资源压缩与纹理管线 | 裸 RGBA / PNG / BC1 体积对照与 PSNR、PNG 往返校验、解码代价 |
| 1.3 | 1.3 分包与首包体 | 入口 / 懒加载 / 共享上提切分、首包占比、不上提共享依赖的重复字节 |
| 2.1 | 2.1 内核单测与假对象 | NullRHI、假时钟、假 IO、确定性 RNG、双跑逐字一致 |
| 2.2 | 2.2 渲染测试:headless 截图与黄金图像 | headless 渲染落 PNG、逐像素比对、容差策略、位移被自动判红 |
| 2.3 | 2.3 确定性回放与回归 | 固定种子 + 输入回放 → 状态哈希、首次分叉帧定位、版本回归 |
| 3.1 | 3.1 帧预算与性能剖析 | 帧时间分解(逻辑 / 提交 / 呈现)、p50 / p95 / p99、流水线模型 |
| 3.2 | 3.2 GC、内存预算与分配追踪 | 对象池 vs 朴素分配、GC 次数与停顿、--trace-gc 复核、分配热点表 |
| 3.3 | 3.3 GPU 计时与优化闭环 | timestamp-query 两种测法互证、提交吞吐、合批优化闭环 |
第二部分:适配、裁剪与调试(第 4–6 章)
让引擎「上得了别人的机器、丢得掉不要的部分、查得出线上的问题」——跨端降级、模块化裁剪、调试工具。
| 节 | 文章 | 核心内容 |
|---|---|---|
| 4.1 | 4.1 WebGPU / WebGL2 能力探测与降级 | limits / features 探测、后端选择、降级决策表 |
| 4.2 | 4.2 移动端与低端设备 | 设备画像、质量档位、分辨率缩放与显存预算 |
| 4.3 | 4.3 桌面打包与可选原生路径 | Electron / Tauri 配置形状、存档桥、平台签名(L3 / L4) |
| 5.1 | 5.1 模块边界与依赖方向 | 分层规则、import 图扫描、upward 越界与循环检测 |
| 5.2 | 5.2 特性开关与死代码消除 | 构建期常量开关、裁剪前后体积实测、开关的维护代价 |
| 5.3 | 5.3 插件系统与引擎版本 / API 稳定性 | 插件接口与扩展点、版本协商、语义化版本与兼容策略 |
| 6.1 | 6.1 调试绘制与运行时可视化 | 线框 / 包围体 / 法线 / 射线、批量提交、L2 像素核对 |
| 6.2 | 6.2 控制台与作弊命令 | CVar 注册表、命令解析与补全、作弊开关的两态 |
| 6.3 | 6.3 断言、遥测与线上问题定位 | 断言分级与剥离、计数器与采样、环形缓冲与崩溃快照 |
第三部分:把《微光岛》做完(第 7–8 章)
让《微光岛》「玩得起来、发得出去」——玩法装配与内容管线、性能预算达标与构建部署。
| 节 | 文章 | 核心内容 |
|---|---|---|
| 7.1 | 7.1 玩法装配:收集、昼夜、存档 | 子系统串成玩法链、存档往返与版本迁移、确定性校验 |
| 7.2 | 7.2 关卡与内容管线 | 程序化小岛、种子确定性、剔除与绘制统计 |
| 7.3 | 7.3 打磨与表现 | 屏幕震动、粒子反馈、横幅与转场、L2 像素核对 |
| 8.1 | 8.1 性能预算达标 | 预算表(帧时间 / 内存 / 绘制调用 / 包体)、逐项实测对照、未达标项 |
| 8.2 | 8.2 构建与部署 | 生产构建、产物清单与哈希校验、静态托管(真实部署属 L4) |
| 8.3 | 8.3 上线检查清单 | 自动项与人工项清单、每条对应章节与验收命令 |
第四部分:对照与收官(第 9–10 章)
让这套书「接得上别人、走得下去」——跨引擎对照、选型判断与全书回顾。
| 节 | 文章 | 核心内容 |
|---|---|---|
| 9.1 | 9.1 单一坐标轴对照 | 三条坐标轴(组件怎么排 / 一帧步序由谁定 / 句柄失效能否检测)× helio / Godot / Bevy / Defold |
| 9.2 | 9.2 同一个特性在不同引擎里的实现路径 | 资源句柄、帧图、脚本热重载、资产导入四条路径的取舍与代价 |
| 9.3 | 9.3 选型与自研的判断标准 | 差异化落在哪一层、团队与时间账、退出成本与锁定、可执行规则 |
| 10.1 | 10.1 引擎实现原理全景回顾 | 四卷 60 章串成一张「一个引擎由哪些原理构成」的全景图 |
| 10.2 | 10.2 下一步:读源码、做贡献、做自己的引擎 | 可执行的下一步路径,以及本书明确不覆盖的边界 |
说明:本卷与卷三一样没有序、前言与附录,全部内容就是上表的 10 章 29 节,外加一篇目录 。
怎么用这份索引
- 系统学习:从目录篇 进入,按路径 A 顺序通读 10 章。
- 把游戏发出去:直接跳到第三部分(第 7–8 章),这块是把《微光岛》做完并交付的核心。
- 做跨端与裁剪:直接跳到第二部分(第 4–6 章),这块决定引擎能不能上别人的机器、能不能变小。
- 查问题:用目录篇 末尾的「常见问题速查」表,或按上表标题跳读。
- 配代码:每篇正文的代码块都标了层级与来源文件,L1 的可以直接复制出来在 Node 26 上跑,L2 的按正文给的 headless Chromium 跑法复现。
- 先看地基:还没读前三卷的话,先去《引擎内核》索引 、《渲染引擎》索引 与《子系统与工具》索引 把内核、渲染与子系统过一遍,再回来看本卷会轻松很多。
相关阅读
- 卷一《引擎内核》索引 :本卷的地基,从零写引擎内核
- 卷二《渲染引擎》索引 :本卷的画面来源,从零接出渲染引擎
- 卷三《子系统与工具》索引 :本卷的内容来源,让世界活起来并做编辑器
- 游戏引擎专题导航 :Unity、Unreal 与 Defold 的选型与入门
- 图形学专题 :渲染管线、着色器与 GPU 的深度文章
- 书稿书架 :全部电子书与创作手记