Skip to content
This repository has been archived by the owner on Apr 14, 2023. It is now read-only.

In progress 3d engine based using a entity component system based approach and utilising the Vulkan graphics API

Notifications You must be signed in to change notification settings

GarryWhitehead/Omega3D-engine

Repository files navigation

Omega3D-engine

A 3D-engine that utilises the Vulkan garphics API and entity component mechanics.

The primary idea behinbd this engine is to allow the creation of interactive 3D demos and user-defined scripted playbacks. The idea is to experiment with different graphical algorthims and produce the most realistic, physically accurate graphical representations whilst still maintianing the real-time element.

This is an on-going project and so far the following features have been implemented :

  • Deferred shader pipeline
  • Terrain generation using an imported heightmap
  • Ocean rendering using the fast fourier transform alogrithim - evertything calculated on the GPU
  • irradiance-based lighting model using a cube-map for environmental mapping
  • PBR texture support - now nearly bug free!
  • shadow mapping (need to finish adding)
  • custom model format aloowing multiple models and materials to be imported into the engine - this uses an external program to convert .obj and .dae files (more model formats are planned)
  • GUI - using the dear imGUI library - basic settings can be adjusted at the moment - more to be added
  • post processing effects - only fog implemeneted at the moment - needs more work

And the immediate future plans (some nearly complete....):

  • some lighting issues to address
  • improve post-processing - volumetric fog, ambient occlusion
  • cross platform support
  • finish adding shadows
  • finish animation support
  • Improve the ECS system - allow creation/deletion of objects, etc.
  • reflection probes
  • surface light-scattering
  • MSAA

About

In progress 3d engine based using a entity component system based approach and utilising the Vulkan graphics API

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published