首页
教程简介
本文档是 Vulkan 的入门教程,将介绍 Vulkan 图形与计算 API 的基础知识与实际应用。
文档以代码演示为主,你可以在 Vulkan Guide 等网站找到更详细的 Vulkan 规范和概念介绍。
教程将采用 C++23 标准,使用 SDK 内含的 Vulkan-Hpp 封装,充分利用 RAII 等现代 C++ 特性,这也是 Vulkan 官方推荐的方式。
你可以将此文档的前半部分看做是 Vulkan Tutorial 的中文翻译,它是官方教程,且在近期发布了现代 C++ 的新版本。
本文档完成时间略早于官方的新版文档,因此现在正在进行对齐和补充工作,但注意二者存在许多内容差异与编程风格差异。
如果你发现了文档的错误,请点击右上角前往Github仓库,提交 Issue 或 PR 。
代码说明
教程不限操作系统、代码编辑器与 C++ 编译器,主要使用以下工具链:
- Vulkan SDK
- GLM 线性代数库
- GLFW 窗口库
- CMake 构建系统
- vcpkg 依赖管理
其他说明
Vulkan SDK 本身由 C 编写,因此具有更好的跨语言兼容性,可通过 C 接口供其他语言调用。
如果你更喜欢 C 风格的底层接口,或希望使用 Rust:
- 基于底层 C 接口的 C++ 教程: 旧版 Vulkan-Tutorial
官方更推荐使用现代 C++ 封装。
- 基于 Vulkano 封装的 Rust 教程: Vulkan-tutorial-rs
Rust 更推荐直接学习基于 WebGPU 规范的 wgpu。
致谢
本文档内容参考了许多公开的资料以及课程,在此感谢: