Skip to content

Architecture Overview

PlatanoGames edited this page Aug 10, 2026 · 8 revisions

Architecture Overview

PGX uses Unreal Engine's native extension model: plugins contain modules; modules expose subsystems, Data Assets, settings, interfaces, Blueprint APIs and editor integrations. PGX does not replace Unreal's object, reflection, asset or build systems.

v0.1.1 snapshot

The v0.1.1 Development Preview contains 26 plugins and 48 modules:

  • 21 Runtime modules;
  • 24 Editor modules;
  • 2 UncookedOnly modules;
  • 1 DeveloperTool module.

Module type is part of the target boundary. Source being present does not prove packaged-runtime compatibility.

Layers

flowchart TB
  Authoring[Project Settings and Data Assets]
  Core[PGXCore contracts and registries]
  Established[Established runtime systems]
  Preview[Functional and structured previews]
  API[Native and Blueprint APIs]
  Observe[Logs, trace, observables and inspectors]

  Authoring --> Core
  Core --> Established
  Core --> Preview
  Established --> API
  Preview --> API
  Established --> Observe
  Preview --> Observe
Loading

Foundation

PGXCore owns shared configuration, registry, messaging, handler, logging, trace, observability and validation contracts.

Established systems

Audio, GameFlow, Loading, MGOS, PSO and Save contain implemented domain behavior. They remain 0.x systems rather than production guarantees.

Early previews

Functional previews contain meaningful domain operations with known gaps. Structured previews mainly expose state, schemas, registries or dispatch seams. See Early Preview Plugins for precise boundaries.

Editor experience

Feature editor modules expose focused tools. PGXEditorTools aggregates selected inspectors. Docs, Scaffold, Tutorials, Version Control and SimHarness retain separate workflows.

Contracts

  • Descriptors declare plugin requirements and loading rules.
  • Build rules declare module dependencies.
  • Data Assets and settings hold authored policy.
  • Subsystems own lifecycle and state.
  • Gameplay Tags identify states, channels and domains.
  • Messages and delegates expose change without arbitrary sibling dependencies.
  • Observability surfaces report state; they do not prove complete behavior.

Continue with Plugin Topology, Module Reference and Cross-Plugin Communication.

Clone this wiki locally