Selene Engine
Professional, cross-platform game engine in modern C++20 with Lua scripting and Vulkan rendering
Selene is a professional, cross-platform game engine written in modern C++20. It uses Lua as its primary scripting language and Vulkan as its main rendering backend. The engine is built from the ground up with a modular architecture, designed to compete with Unity, Godot, and Unreal in the long term.
Competing with Unity, Godot & Unreal – open source, modular, modern
Core Features
C++20 Core
Modern C++20 with modules, concepts, coroutines and ranges for maximum performance and clean design
Vulkan Renderer
Primary rendering backend with Vulkan. Optional OpenGL ES 4.6 and WebGPU as fallback for older hardware
Lua Scripting
Lua as primary scripting language for gameplay logic, hot-reload of scripts at runtime without restart
Entity Component System
Data-oriented ECS for maximum performance with large scenes containing thousands of entities
Modular Architecture
Engine modules (renderer, physics, audio, networking) can be loaded, swapped or extended individually
Cross-Platform
Windows, Linux, macOS, Android and iOS from a single codebase. Platform-specific optimizations where needed
Editor & Tools
Visual editor with scene hierarchy, inspector, asset browser and integrated Lua debugger
Rendering Pipeline
- Deferred Renderer: Modern deferred rendering with G-Buffer for complex lighting scenarios
- PBR Materials: Physically based rendering with metallic-roughness workflow and IBL
- Ray Tracing: Hardware ray tracing via VK_KHR_ray_tracing_pipeline (optional, RTX/GTX-compatible)
- VFX & Particles: GPU-based particle system, post-processing (bloom, SSAO, motion blur, TAA)
- Global Illumination: Voxel-based global illumination and light propagation volumes for realistic lighting
Scripting & Tools
Lua API
Complete Lua bindings for all engine systems. Hot-reload, C++ interop and coroutine support
Editor
Integrated visual editor with WYSIWYG scene view, asset pipeline and build system
Lua Debugger
Breakpoints, watch variables, step-by-step execution and profiling directly in the editor
Asset Pipeline
Import for FBX, GLTF, OBJ, PNG, KTX and more with automatic compression and streaming
Tech Stack
Roadmap
Phase 1 – Core Engine
C++20 project setup, Vulkan renderer (basics), ECS, Lua bindings, basic editor
CurrentPhase 2 – Rendering & Tools
PBR material system, deferred renderer, particles/VFX, asset pipeline, full editor
Phase 3 – Advanced Features
Ray tracing, global illumination, physics engine, audio system, networking/multiplayer
Phase 4 – Release & Ecosystem
Documentation, tutorials, marketplace, community tools, 1.0 release