Vulkan White Label
Specs
Vulkan API GLSL HLSL Slang
Education
Vulkan Reference Pages Vulkan Feature Descriptions Vulkan Guide Vulkan Samples Vulkan Tutorial GLSL Extensions YouTube More Info at Vulkan.org
Feedback
Report a Problem
Community
Vulkan Discord Reddit Stack Overflow Mastodon

Khronos Vulkan Tutorial

    • Introduction
    • Overview
    • Development environment
    • Drawing a triangle
      • Setup
        • Base Code
        • Instance
        • Validation layers
        • Physical devices and queue families
        • Logical device and queues
      • Presentation
        • Window surface
        • Swap chain
        • Image views
      • Graphics pipeline basics
        • Introduction
        • Shader modules
        • Fixed functions
        • Render passes
        • Conclusion
      • Drawing
        • Framebuffers
        • Command buffers
        • Rendering and presentation
        • Frames in flight
      • Swap chain recreation
    • Vertex buffers
      • Vertex input description
      • Vertex buffer creation
      • Staging buffer
      • Index buffer
    • Uniform buffers
      • Descriptor layout and buffer
      • Descriptor pool and sets
    • Texture mapping
      • Images
      • Image view and sampler
      • Combined image sampler
    • Depth buffering
    • Loading models
    • Generating Mipmaps
    • Multisampling
    • Compute Shader
    • Ecosystem Utilities and GPU Compatibility
    • Vulkan Profiles
    • Android
    • Migrating to Modern Asset Formats: glTF and KTX2
    • Rendering Multiple Objects
    • Multithreading
    • Ray Tracing
      • Overview
      • Dynamic rendering
      • Acceleration structures
      • Ray query shadows
      • TLAS animation
      • Shadow transparency
      • Reflections
      • Conclusion
    • FAQ
    • GitHub Repository
    • Building a Simple Engine
      • Introduction
      • Engine Architecture
        • Introduction
        • Architectural patterns
        • Component systems
        • Resource management
        • Rendering pipeline
        • Event systems
        • Conclusion
      • Camera Transformations
        • Introduction
        • Math foundations
        • Transformation matrices
        • Camera implementation
        • Vulkan integration
        • Conclusion
      • Lighting & Materials
        • Introduction
        • Lighting models
        • Push constants
        • Lighting implementation
        • Vulkan integration
        • Shadows
        • Conclusion
      • GUI
        • Introduction
        • ImGui setup
        • Input handling
        • UI elements
        • Vulkan integration
        • Conclusion
      • Loading Models
        • Introduction
        • Project setup
        • Model system
        • Loading glTF
        • PBR rendering
        • Multiple objects
        • Scene rendering
        • Animations
        • Conclusion
      • Subsystems
        • Introduction
        • Audio basics
        • Vulkan audio
        • Physics basics
        • Vulkan physics
        • Conclusion
      • Tooling
        • Introduction
        • CI/CD
        • Debugging & RenderDoc
        • Crash minidumps
        • Extensions
        • Packaging & distribution
        • Conclusion
      • Mobile Development
        • Introduction
        • Platform considerations
        • Performance optimizations
        • Rendering approaches
        • Vulkan extensions
        • Conclusion
      • Advanced Topics
        • Introduction
        • Rendering pipeline overview
        • Forward vs Forward+ vs Deferred
        • Forward+ rendering
        • Culling
        • Mipmaps & LOD
        • Push constants per object
        • Synchronization & streaming
        • Synchronization2 & frame pacing
        • Descriptor indexing (UpdateAfterBind)
        • Separate image/sampler descriptors
        • Shader tile image
        • glTF animation
        • Planar reflections
        • Ray query rendering
        • Ray query: reflections & transparency
        • Dynamic rendering local read
        • Robustness2
      • Appendix
        • Appendix
Khronos Vulkan Tutorial latest
  • Khronos Vulkan Tutorial
    • latest
  • OpenGL Shading Language Extensions
    • latest
  • OpenGL Shading Language Specification
    • latest
  • Vulkan API Reference Pages
    • latest
  • Vulkan Feature Descriptions
    • latest
  • Vulkan Guide
    • latest
  • Vulkan Samples
    • latest
  • Vulkan Specification
    • latest
  • Khronos Vulkan Tutorial
  • Building a Simple Engine
  • Advanced Topics
  • Introduction

Advanced Topics (Simple Engine)

Welcome — this section collects short, conversational guides that explain what each feature is, why we use it, and how it’s implemented in the Simple Engine.

Start anywhere that matches your interest:

  • Planar Reflections

  • Ray Query Rendering

  • Ray Query Reflections and Transparency

  • Rendering Pipeline Overview

  • Forward, Forward+, Deferred

  • Forward+ Rendering

  • Frustum Culling and Distance LOD

  • Mipmaps and LOD

  • glTF Animation & Transform Composition

  • Push Constants (per‑object material)

  • Descriptor Indexing & Stable Updates

  • Separate Image/Sampler

  • Synchronization & Streaming

  • Synchronization 2 & Frame Pacing

  • VK_EXT_robustness2

  • Dynamic Rendering Local Read

  • Shader Tile Image

Back to Building a Simple Engine