Prisma Engine is a cross-platform 3D game engine built with modern C++20, focusing on high-performance rendering and modern graphics architectures.
Current Status: CoreCLR C# scripting functional. SoA entity pool with 1M virtual capacity. Android Vulkan runtime production-ready. Detailed roadmap: TODO.md — Prioritized task list with 4D decision framework. Last Updated: 2026-06-04
flowchart TD
subgraph App[Application Layer]
A1[Template2D]
A2[Game]
A3[Editor]
end
subgraph Dev[Device Layer]
D1[AudioDevice]
D2[InputDevice]
D3[RenderSystem]
end
subgraph Drv[Driver Interface]
I1[IAudioDriver]
I2[IInputDriver]
I3[IRenderDevice]
end
subgraph Plat[Platform Implementation]
P1[Windows: XAudio2/RawInput/DX12]
P2[Android: AAudio/GameActivity/Vulkan]
P3[Cross: SDL3 audio/input/window]
end
App --> Dev
Dev --> Drv
Drv --> Plat
flowchart LR
subgraph VM["Virtual Memory Block (1M entities max)"]
TA["Transform SoA<br/>Buffer A<br/>posX, posY<br/>rotation<br/>scaleX, scaleY"]
TB["Transform SoA<br/>Buffer B<br/>posX, posY<br/>rotation<br/>scaleX, scaleY"]
TR["Render SoA<br/>active, generation<br/>colorRGBA<br/>sizeW, sizeH"]
end
TA <-->|"ping-pong swap"| TB
flowchart LR
subgraph Cpp["C++ Engine"]
H[CoreCLRHost]
E[ScriptEngine]
A[PrismaAPI<br/>18 fns]
R[Engine::Run]
end
subgraph DotNet["CoreCLR Runtime"]
HR[hostfxr<br/>self-contained]
Core[PrismaEngine.Core.dll]
Game[GameScripts.dll]
end
subgraph CS["C# Game"]
N[Node<br/>entity=position]
S[Script<br/>OnCreate/OnUpdate]
W[World<br/>SceneInit]
end
H --> HR
E --> A
R --> H
HR --> Core
Core --> Game
Game --> N
Game --> S
Game --> W
Module progress tracked in MODULE_PROGRESS.md. Task priorities in TODO.md.
Prisma Engine uses CMake FetchContent for dependency management by default - no manual library installation required.
# Clone repository
git clone --recursive https://github.com/Excurs1ons/PrismaEngine.git
cd PrismaEngine
# Build with CMake Presets
cmake --preset windows-x64-debug
cmake --build build/windows-x64-debug --parallel# Install dependencies (Ubuntu/Debian)
sudo apt-get install libx11-dev libxrandr-dev libvulkan-dev
# Build
cmake --preset linux-x64-debug
cmake --build build/linux-x64-debug --parallel# Open in Android Studio
# Path: projects/android/PrismaAndroid
# Dependencies download automatically via CMake FetchContent- Documentation Index - Start here
- TODO / Roadmap - Prioritized task list with 4D decision framework
- Architecture Overview - Architecture and design
- Vulkan Integration - Detailed Android implementation
- CoreCLR Scripting Summary - C# scripting implementation
- RenderGraph Plan - Future rendering roadmap
- Modern C++20: Utilizing concepts, coroutines, and designated initializers.
- Smart Dependency Management: No manual library installation required; CMake handles everything.
- Unified Rendering API: Write once, run on DX12 or Vulkan.
- Android Deep Optimization: Zero-latency input via GameActivity and high-performance Vulkan rendering path.
- CoreCLR Scripting: Full C# scripting with SoA entity pool and self-contained deployment.
- MCP Integration: Full Model Context Protocol support for AI Agent control (17 tools, hash delta tracking, double transport).
- WebUI Editor: Browser-based full editor with real-time scene viewport, hierarchy, inspector and console.
MIT License - see LICENSE for details.