Global Architecture
[This page describes the overall architecture of the SKYREAL extension system, explaining how extensions interact with the core platform.]
How Extensions Work
Skyreal VR uses a plugin-based architecture built on Unreal Engine. Extensions are packaged as Unreal Engine plugins that can be loaded at startup or at runtime.
Architecture Overview
The extension system is composed of several layers:
Core Platform
-
Skyreal VR — The main application built on Unreal Engine.
-
SkrSdk — The SDK plugin that exposes internal data models and functions to blueprints.
-
SkrDataModel — The data model plugin managing CAD parts, product structures, and scene objects.
-
SkrUtilities — Utility functions and helpers.
Extension Layer
-
Extension Plugins — Custom Unreal Engine plugins containing your business logic, UI, and content.
-
RegistrableAssets — A special directory inside each plugin where data assets are placed for automatic discovery by Skyreal VR.
-
Auto Registry System — Skyreal VR scans all
RegistrableAssetsdirectories at startup and registers discovered assets.
Distribution Layer
-
Marketplace — Centralized extension distribution through XR Center.
-
SkrExtensions.json — Local extension configuration file.
-
Runtime Loading — Dynamic extension loading via commands or blueprint functions.
Extension Types
|
Type |
Description |
|---|---|
|
Commands |
New VR or desktop commands with custom behavior and UI |
|
Auto Spawnable Actors |
Actors automatically created based on context (VR, desktop, BeginPlay) |
|
Auto Spawnable UI |
Widgets added to the viewport based on context |
|
Environments |
Custom 3D environments with configurable parameters |
|
Manikins |
Custom MetaHuman manikin appearances and MSD analyzers |
|
Keyboards |
Custom VR keyboard layouts |
|
RPC Components |
Network-replicated components for collaborative extensions |
Plugin Dependencies
When creating extensions, your plugin may depend on core Skyreal VR plugins:
|
Plugin |
Purpose |
|---|---|
|
|
SDK for accessing Skyreal VR data and functions |
|
|
Data model for CAD parts and product structure |
|
|
Utility functions and helpers |
|
|
Manikin data model (if working with manikins) |