Euphorbe
Euphorbe copied to clipboard
Fresh game engine written in C
Euphorbe

Euphorbe is a fresh early-stage game engine written entirely in C. It's purpose is mainly to try and build an efficient yet developped Vulkan renderer, and this with the usage of the VK_KHR_dynamic_rendering extension.
Getting started
Note that only MSVC is supported to build Euphorbe!
1. Download the repository
git clone https://github.com/Sausty/Euphorbe
install.bat
2. Generate the project
cmake -G "Visual Studio 17 2022" -B build
Requirements
Vulkan Extensions
- VK_KHR_dynamic_rendering
- VK_KHR_16bit_storage
- VK_KHR_8bit_storage
- VK_KHR_swapchain
- VK_KHR_synchronisation2
- VK_KHR_shader_non_semantic_info
- VK_NV_mesh_shader
Instance Extensions
- VK_KHR_surface
- VK_KHR_win32_surface
- VK_EXT_debug_utils
Dependencies
Screenshots
Screenshot from January 10 2022
Contributing
Contributions to Euphorbe is accepted and encouraged ; let's make a great engine together!
FXAA Demo
Without:
\
With:
\
Current features
- Fully customisable render graph
- Vulkan backend
- Model loading (glTF) with cgltf
- HDR texture support
- Built-in editor
- Custom material file format
- Window management
- Input system
- Runtime shader compiling with shaderc
- Resource system
- GUI system with cimgui
- Timer
- FXAA anti-aliasing
- PBR pipeline with IBL
- Turing mesh shaders
Additional information
Note that you need the Beta Vulkan drivers to run this program!