Vulkan White Label
Specs
Vulkan API GLSL HLSL
Education
Vulkan Reference Pages Vulkan Feature Descriptions Vulkan Guide Vulkan Samples Vulkan Tutorial 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 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