本书源代码托管于 GitHub(地址),使用经过修改的文档生成器 daux.io (官方网站修改版仓库)来渲染网页,使用 Markdwon 格式。贡献翻译者需要了解 daux.io 的基本使用规则和其支持的 Markdwon 语法。

本书的中文翻译基于 daux.io 的多语言支持,翻译文本放置在 zh 文件夹下,文件名保持与英 文版本一致,在 Front Matter 中使用 title 属性设置中文标题。

Markdown 写法要求

中文翻译文本应当符合中文排版指北, 有几项额外要求:

  • 使用弯引号;
  • 中文文本的行内链接的两侧不用额外添加空格,但若链接文本开头或结尾是英文数字等,需在相应位置添加空格;
  • 每行不应超过 120 个半角字符长度,除非是代码,URL,标点禁则等必要情形。

行长度限制可用文本编辑器的辅助标尺来提示,如 VSCode 可在其 settings.json 中设置 "editor.rulers": [120] 在 120 半角字符行宽的位置显 示一条竖线。

注意,文本以空行分段,没有首行缩进。

文章会经过预处理器处理,Vulkan 类型和函数名称会自动加上行内代码和指向相应页面的超链接,如 VkResult。中文翻译不应加上超链接,是否给原文没有行 内代码格式的类型和函数名等加上行内代码格式则随意,最后显示效果正确即可。

术语翻译

参考 OpenGL 3.3 教程的翻译术语对照

  • 《游戏引擎架构》中英词汇索引表为参考标准;
  • 某些术语可以保留英文原文,如使用“uniform buffer”或“uniform 缓冲”而非“统一缓冲区”,“统一的缓冲区”;
  • 在第一次出现相应术语时,用括号注明英文原文,如果是保留英文原文的术语,则注明中文翻译。

需要保留英文原文的术语:

  • 所有具体的 Vulkan API 的类型、枚举、函数、结构体成员名等。
  • render pass:渲染流程,渲染步骤