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 codeFloorManagerWrapperPlaneManagerWrapperPointCloudManagerGridManagerCameraCalibrationCheckerEditorSceneServiceWorkplaceController: 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)