喔啃盖德 (Vulkan Guide) 中文版 译者简序

樱粉花蜜糖
发布于

Vulkan其实一直很想好好学的,当初还想借着Piccolo的代码一次学通透,但是又觉得自己OpenGL都没学好,想尽快做点图形学上流体仿真和渲染的东西,加上还有学业研究压力,所以一直都给自己的任务队列提交了太多任务,学习进度非常缓慢,不过总归是有收获的。😀

罗列一下我学习Vk的参考资料,主要有四份:

这几份资料我都推荐作为入门参考书,或者学习字典,遇到不会的概念或者名词能有可信赖的文档查找翻阅,然后再回归代码例子。我闲暇时或者睡前翻阅,大部分内容来来回回看了好几遍,结果发现还真慢慢开始理解了现代GPU管线的设计,越看越是感觉“就应该是这么回事”,之后再看OpenGL觉得隐藏了太多默认,反而觉得有些地方不大清晰了🤣。加上最近Games106开课,再次打开喔啃的代码发现也没有这么晦涩了,可能那个觉悟的时刻快到了,所以就有了翻译文档分享出来的冲动。

至于选择,由于喔啃的代码比较冗长,特别是有些C风格的代码加重了这一点,喔啃兔兔和蓝书能生啃下来其实也不容易消化理解。喔啃盖德很聪明的选择了vk-boostrap( https://github.com/charles-lunarg/vk-bootstrap )优化了喔啃的初始化封装,把命令队列前的工作都打包得非常漂亮,却不影响理解细节和层级分工,个人觉得是达到了可读性和可学习性一个比较好的平衡,加之作者也提到这样的封装是考虑到读者后期引擎开发的便利性,由此去构造的一个代码模板,有助于进一步做自己感兴趣的辅助设计和图形开发。

我会根据自己的学习进度逐步把这份文档翻译过来,希望能做一点点绵薄的贡献,如果能稍稍帮到读者,那就再好不过了。😀

21
评论 4
收藏 18
  • MR7
    MR7
    感谢分享!期待更新~
    1
  • 樱粉花蜜糖
    欢迎来到喔啃盖德(Vulkan Guide) 欢迎来到仍在逐步更新的新版 Vulkan 指南书,“喔啃盖德”是中文版译者给本书起的谐音昵称。本书的重点是帮助图形开发者正确理解 Vulkan,让开发者可以在自己的项目中使用 Vulkan 作为渲染后端。 和大多数代码示例和其他喜欢硬编码渲染循环的 Vulkan 指南书不同,这里我们将重点关注动态渲染,为的是让开发者在自研游戏引擎时(如Piccolo Engine)能更好的使用 Vulkan 作为图形后端,同时开发者也可以触类旁通,游戏渲染的概念原理可以很好的应用于 CAD 和可视化的开发中去。 编程语言方面,我们将使用世界上最好的语言 C++,并且没有使用过于复杂的语言技巧,所以开发者们理论上应该可以使用 C 或 Rust 绑定的Vulkan接口来完成本书的学习。 本书适用于已经了解3D图形基础知识(完成 Games101 或相关课程学习)并且使用过 OpenGL 或 DirectX 的开发者阅读,相关的 3D 渲染基础知识,例如线性代数,不会再详细赘述。 要联系作者,请发送电子邮件至 contact@vkguide.dev。 要联系译者,她就在这里。🤣 本指南书中的代码可以在 Nintendo Switch 掌机上运行,如果读者是 Switch 的注册开发人员,可以邮件原作者要一份 Switch 平台上的代码。 该指南书分为多个章节,每一章的内容都尽可能保持小而精。以下是各个章节的内容安排: 简介章:Vulkan API 概述,以及本书项目所使用的 C++ 库 第0章:设置项目的初始代码 第1章:Vulkan 初始化和渲染循环配置(绘制清屏颜色) 第2章:Vulkan 三角形绘制(绘制硬编码三角形) 第3章:Vulkan 网格绘制(绘制从.obj文件加载的网格) 第4章:Vulkan 着色器(Shader)输入/输出,描述子集合(Descriptor Sets) 第5章:Vulkan 纹理渲染 原文地址:https://vkguide.dev/
    1
  • 感谢分享
  • Meaning
    Nice