1
0
Fork
You've already forked Vulkan-Tutorial-EPUB
0
Fork of the [https://github.com/KhronosGroup/Vulkan-Tutorial/blob/main/README.adoc](Khronos Vulkan Tutorial) with epub release file
  • C++ 88.3%
  • C 6.4%
  • CMake 4.6%
  • Shell 0.4%
  • Batchfile 0.1%
  • Other 0.1%
Rie ca73f54700 Turn animated gifs into static ones
This commit changes two animated gifs to only show the first frame,
reducing total file size by around 80 MB when exporting as EPUB.
2026年03月08日 12:48:27 +01:00
.github/workflows Merge pull request #253 from gpx1000/game-engine-samples 2026年01月12日 09:58:51 -08:00
antora Update Antora xrefs across multiple files to ensure accurate navigation and consistent linking structure within documentation. 2026年01月13日 12:40:19 -08:00
attachments Merge pull request #325 from asuessenbach/07_image_views 2026年03月05日 12:16:44 -08:00
en Align docu in 02_Image_Views.adoc and the sources in 07_image_views.cpp 2026年03月03日 17:09:21 +01:00
images Turn animated gifs into static ones 2026年03月08日 12:48:27 +01:00
scripts Remove vcpkg.json files and revert to classic mode installation 2026年03月02日 17:13:54 -08:00
.gitignore Add build folders for simple game engine to .gitignore ( #242 ) 2025年12月06日 17:14:37 +01:00
antora-ci-playbook.yml enforce a no warn or error threshold on the CI for antora building. 2026年01月13日 09:55:43 -08:00
CODE_OF_CONDUCT.adoc Add link to Khronos code of conduct 2023年09月12日 22:05:02 +02:00
CONTRIBUTING.adoc Add example for using clang-format 2025年11月08日 16:19:17 +01:00
LICENSE Converted tutorial 2023年09月08日 07:03:40 +02:00
README.adoc First commit of the new "simple engine" tutorial. This is a VERY early commit to start getting proofreading while I still iterate on getting the engine to work. 2025年07月14日 00:09:44 -07:00

Khronos Vulkan® Tutorial

Attribution

The Khronos Vulkan® Tutorial is based on the "Vulkan Tutorial" by Alexander Overvoorde licensed under CC BY-SA 4.0.

About

This repository hosts the contents of the Khronos Vulkan Tutorial. The tutorial is part of the Vulkan Documentation Project.

Differences

Compared to the original tutorial, this version of the tutorial is teaching up-to-date concepts:

  • Vulkan 1.4 as a baseline

  • Dynamic rendering instead of render passes

  • Timeline semaphores

  • Slang as the primary shading language

  • Modern C++ (20) with modules

  • Vulkan-Hpp with RAII

It also contains Vulkan usage clarifications, improved synchronization and new content.

Project Structure

The repository is organized into several important directories:

  • en/ - Contains the tutorial content in English, organized by chapters

    • The main tutorial covers fundamental Vulkan concepts (chapters 00-17)

    • The "Building a Simple Engine" section builds upon these fundamentals to create a structured rendering engine

  • attachments/ - Contains code examples, shader files, and resources used in the tutorial

  • images/ - Contains illustrations, diagrams, and screenshots used in the tutorial

  • scripts/ - Contains utility scripts, including dependency installation scripts

  • antora/ - Contains configuration files for the Antora documentation system

Installation Dependencies

The project provides scripts to help you install the necessary dependencies:

Linux

Run the following command to install dependencies on Linux:

./scripts/install_dependencies_linux.sh

This script detects your package manager (apt, dnf, pacman) and installs the required dependencies, including: * Build essentials (gcc, cmake, ninja-build) * GLFW, GLM, tinyobjloader, stb * X Window System dependencies

It also provides instructions for installing the Vulkan SDK.

Windows

Run the following command to install dependencies on Windows:

scripts\install_dependencies_windows.bat

This script uses vcpkg to install the required dependencies, including: * GLFW, GLM, tinyobjloader, stb

You will also need to install the Vulkan SDK separately from https://vulkan.lunarg.com/.

License

The contents of this repository are licensed as CC BY-SA 4.0, unless stated otherwise. By contributing to this repository, you agree to license your contributions to the public under that same license.

The code listings in the attachments directory are licensed as CC0 1.0 Universal. By contributing to that directory, you agree to license your contributions to the public under that same public domain-like license.

Contributing

Contributions are welcome, details on how to contribute and the technical requirements that have to be met can be found in this document.