Pruneau Renderer is a lightweight 3D renderer written in C++ with the goal of evolving into a full-featured game engine. For now, no stable release is there, the product is still in development.
First of all, I want to thanks all the developers of the librairies used in this project that makes it possible :
- OpenGL Rendering: Core rendering functionality with support for framebuffers.
- Asset Importation : import fbx, glb, gltf, png, jpg, obj, glsl files into the engine by a simple drop !
- GUI: ImGui docking interface and ImGuizmo for manipulations.
- Layer System: Modular layer architecture for scenes, UI, and systems.
- Event System: Centralized event handling for window events and input.
- Framebuffer Support: Custom framebuffer class with color and depth attachments.
Credits to the Blender team for the suzanne model.
For now, editor code and engine code are in the same project. As the editor is only a layer of the executable, I am planning to separate the editor and the engine layer. In the future, the engine will be a lib file and the editor an application.
A wiki is available 👉 here 👈 (still in development too)
- C++17 compatible compiler
- CMake (>=3.16)
- OpenGL (>=4.6)
- Git (in order to clone the repo and the submodules)
WARNING #2 : This is NOT a stable version, the project is still in development, expect crashes/non working features
WARNING #3 : This project only works with Visual Studio 2026 and MSVC, don't expect it to work on other compilers
-
Clone the repository:
git clone https://github.com/Pangauwin/Pruneau-Renderer.git --recurse-submodules cd Pruneau-Renderer -
Create a build directory:
mkdir build cd build -
Generate the project using CMake:
cmake ..
-
Build the project:
cmake --build .
Prebuilt binairies will arrive as soon as the first version (even if unstable) is released. As explained, it will first come on Windows and then on Linux. There will be one binary for each major version release.
This project is licensed under the MIT License. See the LICENSE file for details.