A Virtual Reality (VR) app to use SteelConnect services.
- Unity 2018 or higher recommended
Assets
directory with external assets
- Download
Assets
directory with external packages. Copy and paste over existingAssets
directory in project root directory. - Create Mapbox account and note access token.
- Open project in Unity. Enter access token and verify when Mapbox Setup window appears. Mapbox Setup can be found at
Mapbox > Setup
menu. - Enter SteelConnect credentials at
Assets > Scripts > Lib > SteelConnect.cs
under functionSteelConnect()
.
Main Unity scene can be found at Assets > Scenes > SteelConnect.unity
.
The app uses Daydream touchpad and app button for interactions.
Touchpad click used for:
- Pressing buttons
- Click and hold on WANs to create uplinks
- Double click globe to transition to flat map centered on that position
Swipe used for:
- Log window history scrolling
- Flat map interactions
Used for:
- Cancelling out of 'Create' mode
- Cancelling out of 'Delete' mode
Touchpad:
- Point at map and swipe to pan
- Point at map and click to zoom in
App button:
- Point at map and press to zoom out
Google Daydream controller (https://developers.google.com/vr/discover/controllers) can be simulated with keyboard and mouse.
- Hold Shift to activate pointer. Use mouse to move pointer.
- While pointer is active, hold Ctrl also and move mouse to emulate swipe on Daydream touchpad.
- Hold Alt and use mouse to rotate camera yaw and pitch.
- Hold Ctrl and use mouse to rotate camera roll.
- Left-click on mouse simulates Daydream controller touch pad click.
- Right-click on mouse simulates Daydream controller App button press.
- Normal mode - white
- Default mode
- Create mode - green
- Create sites
- Delete mode - red
- Delete sites
Features of VR app are:
- Create and delete sites
- Create and delete uplinks
- Show information for:
- Sites
- Sitelinks
- WANs
- Uplinks
- Change view from globe to flat and vice versa.
- Double touchpad click on globe to zoom in on flat map.
- Log window. Point and swipe to scroll through history.
Move pointer and hover over entities to display more information.
The VR keyboard only appears when running on Android. When running on PC, use keyboard to enter fields.
- To change globe map style, select
EarthSphere > GlobeMap
object in Unity scene. - To change flat map style, select
PlayerPivot > Map
object in Unity scene.
- Grab Mapbox style URL from account.
- Paste style URL in
Abstract Map (Script) > IMAGE > Map Id / Style URL
field.
- Panning may cause sites to be out of sync with the map
- This seems to occur when you try to pan in different directions too quickly in succession.
- Zooming is erratic, may change the map size
- This is due to how mapbox handles zooming, and tiles
- Position clicked to centre zoom on may not be the exact centre.
- Due to mapbox tiles/zooming methods and geocoding possibly being slightly off.
- Creating sites doesn't really work with flat map - keyboard clips through map and other objects
- When panning the map too far so that it snaps back once you let go of the touchpad, sites don’t snap back with the map, causing them to drift out of place.
- When panning the map too far that it snaps back once you let of the touchpad, the map can get misaligned so that you cannot pan back to a position you once were able to.
- The fix for both of the above is to restart the app (full restart by opening overview mode and swiping the app away, not just going to home screen and reopening the app).
- Make WAN
Panel
objectRect Transform
Width size dynamic and based on number of WANs.