Skip to content

Hatrickek/OxylusEngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Oxylus Engine

Logo
CI

About

This is my hobby project that I work on in my spare time to learn more about graphics programming and engine architectures. Especially Vulkan and C++. Also to produce some games including my dream game in the future.

Currently I'm developing Oxrena -a quake-like movement shooter- using Oxylus!

Windows, Linux and Mac (with MoltenVK) is supported.

Features:

  • Modular Vulkan renderer built with Vuk.
  • Modern rendering features:
    • Clustered Forward IBL PBR
    • GPU Culling
    • GTAO
    • SSR
    • PCF Cascaded Directional, Spot and Point Light Shadows
    • Physically Based Bloom
    • Depth Of Field
    • HDR
    • Tonemapping
    • Chromatic Aberration
    • Film Grain
    • Vignette
    • Sharpen
    • and many more various post-processing effects.
  • Multithreaded physics with Jolt.
  • C++ and Lua scripting API with ECS events and ECS systems. Which has been used to build multiple games to test the API and engine in general.
    More about that: Oxrena, (Creating a Game With Oxylus)
  • Editor with features such as Projects, Serializable Scenes, ContentBrowser, Prefabs, Shader Hot Reloading, Entity managing, Prefabs, Inspector Panel, Asset Manager, Material System&Editor, In-Editor Console, and a lot more QOL features...
  • 3D Audio with miniaudio

Showcase

911 (New Editor UI) PostProcessing PBR Testing scene with Depth Of Field, SSR, SSAO, Bloom, Vignette, Film Grain, Chromatic Aberration, Sharpen 911_2 SSR SSR
Sponza scene with IBL PBR, SSAO, SSR and Directional Shadows

Building

Currently supported and tested compilers are only: MSVC and Clang

  • Install Vulkan SDK.
  • Run the root CMake script with this command to generate for MSVC:
    cmake -S . -B ./build/ -G "Visual Studio 17 2022" -A x64
    For clang:
    cmake -B ./build -G Ninja -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE=Release
  • Install directx-shader-compiler package if required. (Only required for UNIX)
  • Then run this command to build it with CMake:
    cmake --build ./build --config Release

Dependencies

Special Mentions and Thanks To