B3D Framework is a C++17 library intended as a foundation for high-performance game engines, games and other real-time graphical applications. It targets zero-compromise performance capable of running the large open-world projects, paired with a clean, intuitive API and a modular internal architecture that's easy to understand, modify and extend.
Highlights
- High performance: an ECS that scales to massive object counts, fiber-based task scheduling across all systems, and cache-aware data layouts
- Modern rendering: physically based shading, a hybrid tiled deferred / clustered forward renderer, and a robust Vulkan backend
- Feature rich: integrated UI system, C# scripting, physics, animation, audio and asset import for all popular formats
- Clean architecture: highly modular, fully documented, and cross-platform
The framework is still in active development, but can already serve as a solid foundation for custom game engines. Some of the upcoming features include support for every major desktop and console platform, meshlet-style rendering with LOD and streaming over a persistent GPU scene, real-time global illumination, physical camera, light and material controls.
- Features - A detailed list of all currently available features.
- Roadmap - A list of features to be implemented in both near and far future.
- Documentation - Head over to the "Manuals" section to learn how to use the framework from the ground up. Use the API reference to look up what a particular class/method does.
- Examples - Grab a set of working examples and start tinkering and analyzing them to figure out how things work. They are well documented and can be used for quickly learning the framework.
- Building - Learn how to build the framework from the source code.