![Nuake](Resources/Images/logo.png)

[Nuake](https://nuake.antopilo.dev) is a *boutique* game engine inspired by Quake. It focuses on fast level design iteration time that integrates with quake level editing software. 

![Nuake](https://cdn.antopilo.dev/images/editor-crop.png)
> It is currently in developement and is not feature complete. We are currently aiming for an alpha release with basic features and a demo level.

## More info & News!
You can visit the website for more information about the project and read the blog post about the project. 

[Devlog posts 📰](https://nuake.antopilo.dev/blog) 

You can also join the discord server for updates and screenshots: 

[![Join Server](https://img.shields.io/discord/852625335236558868.svg?label=Discord&logo=Discord&colorB=7289da&style=for-the-badge)](https://discord.gg/kuF4efPK7Y)


## Current Features
- ECS system
- Modern physic engine (Jolt physic) 
- PBR Renderer
- Post processing effects(Bloom, SSAO, SSR, Volumetrics, Procedural Sky, Barrel Distortion, DOF)
- C# & Wren Scripting
- Skeletal animation
- Particles
- Navigation Mesh Volumes(Recast&Detour)
- Trenchbroom integration
- WAD to Material converter 
- Quake map loader
- Spatialized audio
- Runtime 

## Planned features
- Custom Shaders
- NuakeUI integration
- Dynamic global illumination
- Asset packing

## Contributing
We are currently looking for contributors, feel free to join the discord if you are looking to help the project.

## Compiling the engine
1. Clone the repos using `git clone --recurse-submodules https://github.com/antopilo/Nuake.git`
2. Run the `generate.bat` to generate the sln files.
3. Open `Nuake.sln`
4. Build and run

# Documentation
Coming soon! 🕒
> Due to the constant change in the API and general refactors. It is hard to keep an up-to-date documentation before alpha release.
