From 1940b06d60af845257b0d63b1ba0c867215dadd0 Mon Sep 17 00:00:00 2001 From: alexiscatnip Date: Tue, 12 Jul 2022 23:20:45 +0800 Subject: [PATCH] Docs: add Readme for Raindrop.Bootstrap --- Assets/Raindrop/Bootstrap/README.md | 25 ++++++++++++++++++++++++ Assets/Raindrop/Bootstrap/README.md.meta | 3 +++ 2 files changed, 28 insertions(+) create mode 100644 Assets/Raindrop/Bootstrap/README.md create mode 100644 Assets/Raindrop/Bootstrap/README.md.meta diff --git a/Assets/Raindrop/Bootstrap/README.md b/Assets/Raindrop/Bootstrap/README.md new file mode 100644 index 0000000..04fb167 --- /dev/null +++ b/Assets/Raindrop/Bootstrap/README.md @@ -0,0 +1,25 @@ +## Raindrop.Bootstrap + +Contains code and scenes that boots up the app. + +### Booting up flowchart: + +#### 1. Unity loads the default scene `BootstrapScene.unity` + +This scene solely contains `RaindropBootstrapper.cs`, which calls methods to set up logger, static assets folder, etc. + +After all that, `RaindropBootstrapper.cs` starts the LibreMetaverse library, which is dependent on all the above-mentioned. + +As a final step, `RaindropBootstrapper.cs` registers `RaindropInstance` to the `ServiceLocator` Singleton. + + +#### 2. Load Game Scene: `MainScene.unity` + +When `RaindropBootstrapper.cs` finishes setting up the environment, it loads the scene `MainScene.unity`. + +`MainScene.unity` contains most of the visible parts of Raindrop Viewer: +- entire UI +- world-space rendered elements/ meshes (map, etc) +- the overall scene-hierachy for avatar, object, and sims. + +Since these elements have dependency on the `LibreMetaverse` library, that's why they are solely in this scene. (I have suffered too many null reference exceptions) diff --git a/Assets/Raindrop/Bootstrap/README.md.meta b/Assets/Raindrop/Bootstrap/README.md.meta new file mode 100644 index 0000000..e33699c --- /dev/null +++ b/Assets/Raindrop/Bootstrap/README.md.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8d3f15e4a46843f2a740ccbc8d0ecdd4 +timeCreated: 1657637967 \ No newline at end of file