VulkanSponza
Deferred Vulkan rendering playground using Crytek's Sponza scene
Install / Use
/learn @SaschaWillems/VulkanSponzaREADME
Vulkan Sponza
<img src="./screenshots/final.jpg" width="512px"> <img src="./screenshots/debug.jpg" width="512px">
About
A Vulkan deferred rendering playground
Partially based on my Vulkan examples (C++), with the goal of rendering a more complex scene outside of the example's scope.
As this is just a playground, expect frequent (and possibly breaking) changes.
Platforms
Windows, Android and Linux
Visual Studio 2015 project is included along with a CMakeLists.txt for other compilers and platforms.
Features
- Deferred renderer (4 MRTs)
- Separate pass for alpha masked objects (foliage)
- Multiple dynamic light sources
- Normal mapping
- SSAO
The Sponza scene
The model used for this example is Crytek's Atrium Sponza Palace model. The repository contains an updated version of the (already updated) version from Morgan McGuire.
For this demo I imported it into Blender (so you can use it with your favorite open source 3D application), added some missing normal maps and assigned all the maps in blender so you can easily load up the scene using ASSIMP and extract all information required for rendering like names of the diffuse, normal and specular maps and information on wether the material has a mask for e.g. rendering in a separate pass for transparent objects. The demo will load this scene using the COLLADA file exported from blender.
Related Skills
node-connect
348.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
348.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
348.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
