Skip to content

Latest commit

 

History

37 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nocture Engine

A work-in-progress 3D game engine built from scratch in modern C++.

Nocturne Engine is a learning project exploring low-level game engine design, featuring a custom Entity Component System and OpenGL rendering pipeline. Built to understand how modern game engines work under the hood.

Current State

Screen.Recording.2026-03-08.213308.mp4

Current Features

Core Systems:

Custom Entity Component System (ECS) architecture

  • Entities and Entity Manager/Factory
  • Components and Component Manager/Factory
  • Rendering System: 3D rendering, materials, phong lighting model
  • Resource Manager
  • Global Event Bus

GLFW window management

Architecture Highlights

The engine follows data-oriented design principles

  • Contiguous component storage for cache efficiency (using eg. Sparse Sets)
  • Separation of data (components) and behavior (systems)
  • Rendering data structures prepared for future Vulkan and DirectX implementations

Building

Make sure to download included submodules with:

git submodule init
git submodule update

Then build with cmake for your preferred C++20 compatible compiler :)

cmake -B build
cmake --build build

Requirements:

  • C++20 compatible compiler
  • CMake 3.15+
  • OpenGL 3.3+ compatible GPU

Builds both on Arch (GCC and Clang) and Windows 11 on MSVC (VS2022).

About

3D game engine with ECS architecture

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages