A Vulkan-based real-time physically based rendering (PBR) engine with glTF support and advanced graphics features.
Laugh Engine is a real-time physically based rendering (PBR) engine implemented using the Vulkan graphics API. It provides high-quality rendering with features like image-based lighting, cascaded shadow maps, and glTF asset support. The project solves the need for a performant, modern graphics engine that demonstrates advanced rendering techniques in a practical codebase.
Graphics programmers, game developers, and researchers interested in Vulkan-based rendering, PBR implementation, and real-time 3D graphics techniques. It's also suitable for those learning advanced graphics algorithms through hands-on code.
Developers choose Laugh Engine for its clear Vulkan implementation of state-of-the-art rendering features like CSM, spherical harmonics lighting, and glTF support. It offers educational value with performance optimizations and serves as a foundation for building custom real-time rendering applications.
A Vulkan implementation of real-time PBR renderer
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Built on the low-overhead Vulkan API, enabling high-performance rendering with benchmarks on GTX 1080 showing efficient frame times for features like bloom and MSAA.
Implements physically based rendering with image-based lighting, delivering realistic shading at minimal extra cost compared to Blinn-Phong, as shown in performance charts.
Uses spherical harmonics to compress diffuse irradiance, saving over 99% memory compared to cube maps, detailed in the optimization section with specific byte calculations.
Includes performance-optimized bloom with half-resolution filtering and hardware linear filtering tricks, plus custom MSAA resolve shaders that boost speed over SSAA.
Loads geometry and materials from glTF 1.0 and 2.0 files, supporting scene hierarchy and extensions like FRAUNHOFER_materials_pbr for PBR textures.
Build instructions only cover Windows with Visual Studio 2015 and Vulkan SDK, explicitly stating no support for other platforms, hindering cross-platform development.
The cascaded shadow map implementation suffers from sequential subpass execution instead of parallel processing, as noted in the updates, with the author considering future changes for better performance.
As a personal project, it lacks extensive tutorials, API documentation, or a large user community, making troubleshooting and extension challenging compared to mainstream engines.