Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Excurs1ons/PrismaEngine/llms.txt

Use this file to discover all available pages before exploring further.

The PrismaEngine SDK gives you a self-contained, prebuilt distribution of the engine that you can drop into any CMake project without cloning the full repository or managing engine dependencies yourself. It exposes a stable public API through headers in include/PrismaEngine/, ships with precompiled libraries for each supported platform, and includes a set of sample projects you can use as starting points. Use the SDK when you want to ship a game, prototype quickly, or keep your project decoupled from engine development. Build from source instead when you need to modify engine internals, work on the editor, or contribute to the project.

SDK directory structure

An extracted SDK archive has the following layout:
sdk/
├── include/PrismaEngine/    # Public engine headers
├── lib/                     # Precompiled libraries (generated by package-sdk.sh)
│   ├── linux/               # Linux platform libraries
│   ├── windows/             # Windows platform libraries
│   └── android/             # Android platform libraries
├── samples/                 # Sample projects
│   ├── BasicTriangle/       # Minimal runnable app
│   ├── BlockGame/           # Game logic patterns
│   └── PrismaCraftStarter/  # Voxel/craft game starter
├── cmake/                   # CMake config files (PrismaEngineConfig.cmake)
└── docs/                    # SDK documentation
The cmake/ directory contains PrismaEngineConfig.cmake, which is what find_package(PrismaEngine REQUIRED) locates when you set CMAKE_PREFIX_PATH to the SDK root.

Platform support

PlatformSupportNotes
Linux x64FullUbuntu 22.04+ recommended
Linux ARM64FullRequires ARM64 toolchain
Windows x64FullRequires Windows 10+
AndroidFullRequires NDK r25+

System requirements

Before integrating the SDK, make sure your development environment meets these requirements.

CMake 3.20+

Required for find_package support and the CMake helper functions included in the SDK.

C++20 compiler

GCC 11+, Clang 13+, or MSVC 2022+ on Windows. Android NDK r25+ for Android targets.

Vulkan SDK 1.3+

Install libvulkan-dev on Ubuntu/Debian or download from vulkan.lunarg.com. Required for all Vulkan-backed rendering.

Python 3.8+

Required for build and packaging scripts. Not needed for plain CMake integration.

Runtime requirements

Your target machine must have:
  • A GPU supporting Vulkan 1.3 or OpenGL 4.5+
  • At least 4 GB RAM
  • At least 500 MB of free disk space

One-click project setup

The fastest way to start a new game project is to download an SDK release with its bundled project template. This single command downloads, extracts, and sets up a ready-to-build project in your current directory.
# Replace 1.0.1 with the SDK version you want
SDK_VERSION=1.0.1

# Download SDK with project template
curl -sL https://github.com/Excurs1ons/PrismaEngine/releases/download/v${SDK_VERSION}-sdk/PrismaEngine-SDK-${SDK_VERSION}-linux-arm64.tar.gz | tar xz

# Move template to your project directory
mv PrismaEngine-SDK-${SDK_VERSION}-linux-arm64/template/* .
mv PrismaEngine-SDK-${SDK_VERSION}-linux-arm64/template/.* . 2>/dev/null || true
rm -rf PrismaEngine-SDK-${SDK_VERSION}-linux-arm64

# Build your game
cmake -B build
cmake --build build

# Run
./build/MyGame
The template already contains a working CMakeLists.txt and a starter src/main.cpp with a minimal IApplication<T> subclass. You can start adding game logic immediately after the first successful build.

What’s included in the SDK

ComponentDescription
include/PrismaEngine/Public C++20 headers — the only interface you use at compile time
lib/{platform}/Precompiled static and shared libraries for the target platform
cmake/PrismaEngineConfig.cmakeCMake package config consumed by find_package
samples/BasicTriangle/Minimal app with window creation and a render loop
samples/BlockGame/Game logic sample with input, world generation, and collision
samples/PrismaCraftStarter/Voxel game starter using PrismaEngine + PrismaCraft
docs/SDK-specific API reference and quick-start guides

Next steps

CMake integration

Link your project against PrismaEngine using find_package, target_link_libraries, and the prisma_create_app helper.

Sample projects

Explore the three sample projects included with the SDK and learn how to use them as project templates.

Build docs developers (and LLMs) love