Table of Contents

Namespace AlphaFramework

AlphaFramework is a high-level game framework built on top of OmegaEngine. It provides an architecture for managing game worlds, logic, and presentation. Its design emphasizes clean separation of responsibilities.

Core concepts

AlphaFramework organizes game development into two domains:

World layer

For building engine-agnostic models of game worlds.

  • Universe: Defines static world data, describes what exists in the world
  • Session: Represents the current game state, tracks dynamic state and change

See AlphaFramework.World for details.

Presentation layer

  • Presenter: Translates world state into renderable objects
  • Game: Manages the application lifecycle and orchestrates updates

See AlphaFramework.Presentation for details.

flowchart LR
    subgraph World
        Universe
        Session
    end

    subgraph Presentation
        Presenter
        Game
    end

    subgraph OmegaEngine
        Engine
    end

    Session --> Universe
    Presenter --> Universe
    Presenter --> Engine
    Game --> Session
    Game --> Presenter

Additional resources

  • Project Templates
    Use the official OmegaEngine templates to quickly scaffold a project using AlphaFramework.

  • Practical Examples
    See FrameOfReference for real-world usage patterns and sample implementations.

API

Namespaces

AlphaFramework.Editor

Toolkit for creating IDE-like editors for games based on OmegaEngine and AlphaFramework. You can use it to create GUI dialogs, maps, particle systems, etc. for your game.

AlphaFramework.Presentation

Provides a basis for building presenters that visualize AlphaFramework.World-based game worlds using OmegaEngine.Graphics.Renderables.

AlphaFramework.World

Provides a basis for building engine-agnostic models of game worlds.