Raven Engine v0.1
A modern 3D Game Engine
Loading...
Searching...
No Matches
Architecture

Raven is built as a stack of five libraries, each depending only on the layers below it.

Layer Role
RavenCore Platform abstraction, logging, memory, core utilities
Crux Math (vectors, matrices, quaternions), ECS, reflection
Illumine Vulkan-based renderer
Framework Application lifecycle, scene graph
Pulsar Jolt-based physics interface

Ignite sits alongside Framework and exposes a stable C++ scripting API (Raven::Script::*) for use in game logic. It deliberately hides engine internals – you interact with entities by ID and call well-defined API functions rather than touching engine objects directly.

Ignite API conventions

All public scripting functions live under Raven::Script. Sub-namespaces map to engine subsystems:

Namespace Subsystem
Raven::Script::Log Logging
Raven::Script::Scene Entity/scene queries
Raven::Script::Physics Physics bodies
Raven::Script::Renderer Rendering hints
Raven::Script::Random RNG utilities

Functions suffixed _Internal are implementation details and not part of the stable API surface. You can call them, but their signatures may change between versions without notice.