Start Scene - WEKIT-ECS/MIRAGE-XR GitHub Wiki
The main scene of MirageXR is Start. It features all key GameObjects, including a Root
and a LearningExperienceEngine
object, to which the main logic of the app is attached in various manager scripts.
Managers (RootObject)
The Root GameObject has a RootObject.cs
script attached to it. It instantiates the following managers:
PlatformManager
: In charge of instantiating the platform-specific UI (world space Spatial UI or mobile UI). More info hereMirageXRServiceBootstrapper
: Instantiates i5 services (xAPI, sketchfab login)ImageTargetManagerWrapper
: Wrapper for AR image tracking functionality branching off to platform-specific implementationsCalibrationManager
: Wrapper for workplace calibration routines, branching for platform-specific codeFloorManagerWrapper
PlaneManagerWrapper
PointCloudManager
GridManager
CameraCalibrationChecker
EditorSceneService
WorkplaceController
: Key script for instantiating the environment views as described in IEEE p1589-2020 ARLEM workplace modelsContentAugmentationController
: Key script for instantiating the content augmentation views as described in IEEE p1589-2020 ARLEM workplace modelsAIManager
: Wrapper for AI services on lxr repositoryOpenAIManager
: Wrapper for chatGPT services (legacy)VirtualInstructorManager
(about to be renamed VirtualInstructorOrchestrator): Manager to orchestrate activity of multiple AIs
Managers (LearningExperienceEngine)
The LearningExperienceEngine GameObject has a LearningExperience.cs
script attached to it. It is instantiated and initialized in the above Root object, first thing. This script comes from lib-lee and sources are available as embedded package in /Packages/com.wekit-ecs.lib-lee/
.
It starts up the following managers:
BrandManager
: Handles ConfigurationActivityManager
: Handles storage, retrieval, and instantiation of activitiesAugmentationManager
: Handles storage, retrieval, and instantiation of content game objects on augmentation levelMoodleManager
: Deals with Moodle communicationWorkplaceManager
: Handles storage, retrieval, and instantiation of content game objects into the scene on learning environment levelExceptionManager
: Hooks into the global exception handling routines to report Debug log info to Sentry automaticallyAuthManager
: OpenID connect login management for the lxr repository serviceUserSettings
(static): Handles storage and retrieval of user settings (such as grid width or persisting login data)