A Vulkan-based physically-based rendering (PBR) implementation for loading and rendering glTF 2.0 models with image-based lighting.
Vulkan-glTF-PBR is a C++ implementation of physically-based rendering (PBR) using the Vulkan graphics API, designed to load and render glTF 2.0 models with full image-based lighting. It generates necessary texture maps on the GPU and supports key glTF extensions, serving as a reference for modern graphics programming.
Graphics programmers and developers working with Vulkan who need a practical example of implementing PBR pipelines or loading glTF assets in real-time applications.
It provides a production-ready, cross-platform reference that closely follows the Khronos glTF PBR specification, with on-the-fly GPU texture generation and support for advanced glTF features like animations and Draco compression.
Physical based rendering with Vulkan using glTF 2.0 models
Generates essential PBR texture maps like BRDF lookup tables and environment maps on the GPU during startup, eliminating the need for external preprocessing tools.
Includes CMake configurations and dependencies for Windows, Linux, and Android, making it straightforward to compile and run on multiple operating systems.
Closely follows the Khronos glTF PBR specification with clear code and a YouTube tutorial playlist, serving as a practical learning resource for Vulkan developers.
Implements key glTF extensions like KHR_materials_pbrSpecularGlossiness and supports animations, Draco compression, and node hierarchies for advanced rendering.
The README explicitly states that the model loader does not implement all glTF 2.0 features, such as morph targets, which limits compatibility with some assets.
Generates all required texture maps on the GPU during startup, which can cause significant delays, especially for complex scenes or on lower-end hardware.
Requires recursive cloning with submodules and manual steps for features like Draco compression, adding setup complexity and potential build issues.
Vulkan Quake port based on QuakeSpasm
Implementation of Peter Shirley's Ray Tracing In One Weekend book using Vulkan and NVIDIA's RTX extension.
Vulkan Samples
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.