Oxylus is a simple yet powerful data-driven game engine built in C++ with a focus on developer productivity and performance. It is free and will be open-source forever!
Be aware that Oxylus is still in it's early stages of development. Some important features and documentation might be missing. Oxylus will have many API breaking changes both on C++ and Lua. Only use if you're okay with these.
- Powerful: Full support for both 2D and 3D development
- Intuitive: Beginner-friendly yet endlessly adaptable for power users
- Data-Driven: Built on a "true" Entity Component System (ECS) for efficient data handling
- Modular: Use only the parts you need, swap out the rest
- Fast: Optimized for speed with parallel processing where possible
- Code-First: The editor is optional, build entire games programmatically or use the editor as a productivity aid
- Modular Vulkan renderer built using vuk with modern rendering features:
- Meshlet Rendering
- Occlusion, frustum and triangle culling
- Automatic LOD generation and selection
 
- GI with Brixelizer
- GT-VBAO
- SSSR
- AMD FSR 3
- Virtual Directional, Spot and Point Light Shadows
- Physically-based sky and atmosphere
- Physically-based Bloom, Depth Of Field, HDR, Tonemapping, Auto Exposure, Chromatic Aberration, Film Grain, Vignette, Sharpen and various other post-processing effects.
- 2D Rendering
- Animated sprites
- Tilemaps
 
- Advanced Particle System
 
- Meshlet Rendering
- Multithreaded physics with Jolt.
- Extensive Lua scripting with flecs events and systems.
- Can write the whole game without ever touching C++, except app initalization and custom rendering.
 
- A featureful editor built with Dear ImGui to aid the development process.
- 3D Audio with miniaudio
- Networking with enet
Windows, Linux and Mac (with MoltenVK) is supported.
- Xmake
- Vulkan SDK.
- A compiler that supports C++23.
- To configure the project run:
- xmake f --toolchain=clang --runtimes=c++_static -m debug- Change --toolchain=for the toolchain you want to use.- ex: clang-clfor Windows,nix-clangfor nixos,mac-clangfor macOS. Checkxmake/toolchains.luafor details.
 
- ex: 
- Pick a mode -m debug, release, dist
- Optionals:
- --lua_bindingsCompile lua bindings (- trueby default)
- --profileEnable tracy profiler (- falseby default)
- --testsEnable tests. (- falseby default)
 
 
- Change 
 
- To build the project run:
- xmake build
 
- To run the editor with xmake run:
- xmake r OxylusEditor