Skip to content

Capati/odin-vk-guide

Repository files navigation

Odin Vulkan Guide Tutorial 2.0

In progress tutorial of vkguide.dev using Odin Language.

Table of Contents

Progress

1. Initializing Vulkan

  • Vulkan Initialization
  • Vulkan Initialization Code
  • Executing Vulkan Commands
  • Setting up Vulkan commands
  • Rendering Loop
  • Mainloop Code

image info

2. Drawing with Compute

  • Improving the render loop
  • Vulkan Shaders
  • Vulkan Shaders - Code
  • Setting up IMGUI
  • Push Constants and new shaders

image info

3. Graphics Pipelines

  • The graphics pipeline
  • Setting up render pipeline
  • Mesh buffers
  • Mesh Loading
  • Blending
  • Window Resizing

4. Textures and Engine Architecture

  • Descriptor Abstractions
  • Textures
  • Engine Architecture
  • Setting up Materials
  • Meshes and Camera

5. GLTF loading

  • Interactive Camera
  • GLTF Scene Nodes
  • GLTF Textures
  • Faster Draw

Building

Note

This project requires some dependencies that are included as Git submodules. Follow the build instructions below to set up all required libraries and properly build an example.

Prerequisites

  • Git
  • Python - version 3.x is required
  • C++ compiler - MSVC on Windows or g++ on Unix

Windows

  1. Open a Command Prompt and navigate to the project directory

  2. Rn the prepare.bat script to build the required libraries:

    prepare.bat
  3. To run an example, use the build script:

    build.bat src\01_initializing_vulkan run

Unix Systems (Linux/macOS)

  1. Open a terminal and navigate to the project directory

  2. Make the scripts executable (if needed):

    chmod +x ./prepare.sh ./build.sh
  3. Rn the prepare.sh script to build the required libraries:

    ./prepare.sh
  4. To run an example, use the build script:

    ./build.sh src/01_initializing_vulkan run

Dependencies