Metaverse Learning (https://metaverselearning.co.uk/ ) is a content provider for VR training and education.
Igloo Integration
The Metaverse Learning education content is built using Unity and the integration utilises the Igloo Unity Toolkit. However the output is rendered to WebGL rather than to Spout so a WebView is required in ICE to render the equirectangular output.
The Unity projects can be provided as local assets (which require a local web server), or hosted on a cloud server and accessed via a URL.
A demo scene is available here: https://mxreality.blob.core.windows.net/demos/esol-igloo-test/index.html
Set the WebView to 8000 x 4000 resolution and apply the TruePerspective effect.
Controller requirements
The content can be navigated and controlled using the Game Controller tab in ICE Control Panel. Use the A button to select UI buttons in the scene and move the cursor using the gyro.. To enable this, a special node app developed by Loz is required.
The node app is available in sharepoint at the url below and acts as an OSC to Web messaging service, using port 3000.
Download the node app and run it on the IMP. When the Metaverse Learning scenario is loaded it will say ‘Connected to Unity’ and when the scenario is unloaded (i.e. WebView is removed) it will say ‘Disconnected from Unity’.
Launching the server locally
There is an option to host the server locally, if you are wanting to do this you will need to follow some steps:
Download the Metaverse project.
Download some server hosting software of your choice (https://github.com/greggman/servez/releases/tag/v1.11.0 - This one is extremely straight forward)
Choose the entire metaverse folder to “Serve”, choose an available port, then press “Start” and “Launch Browser”.
The same steps can now be used to setup the view in ICE however you would now use localhost:[port you chose] as the web address.
Servez can also be launched from a Batch file once it’s been installed.
An example file has been included as part of the igloo installation, called Server.bat.
A corresponding StopServer.bat is also included.
Only the server.bat will need adjusting to ensure that the paths are correct.
These can then be used via ICE’s misc tab for the Web layer to start and stop the servers as the app is opened and closed via an ICE session.
Server.bat
start "" "D:\Interactive\ESOL_S05_Igloo\WebServer.exe" start C:\Users\Igloo\AppData\Local\Programs\Servez\Servez.exe -- --port=8080 D:\Interactive\ESOL_S05_Igloo
The above code starts Servez, which outputs on 127.0.0.1:8080
and also starts the Unity → Web OSC bridge (WebServer.exe)