Releases: geefr/vsgvr
Monado Android example - Experimental
Experimental build of Monado runtime + vsgvr demo for Android
To run:
- Install the 3 APKs below
- Open the app
OpenXR Runtime Broker
and select the Monado Runtime - Hold phone in landscape orientation (Important for tracking)
- Launch the app
VSGVR Android Monado Example
Disclaimers:
- The Monado runtime was built by me, it may have bugs
- These are all signed with a test key
- The vsgvr demo is debug because the release version crashes - It might be unstable, or have low performance
0.7 - Composition layers
Main feature being ability to display multiple scene graphs in multiple composition layers, with both base specification layers implemented
- CompositionLayerProjection - The headset view, cameras defined by OpenXR
- CompositionLayerQuad - Display a quad in the world, bound to the headset, controllers, etc, displaying any output from a scene graph render
- Primary intention is for displaying 2D content within vr such as images or GUIs with best visual quality - Composition performed by the OpenXR runtime, rather than within the vsg scene graph rendering
Other updates to clarify how coordinate spaces are managed, more flexibility around coordinate spaces for SpaceBinding and other tracking classes.
(lots of breaking changes, and more to come)
0.6.1 - Performance oops
Fixed #38 - Was also rendering the desktop view.
Exposed camera near/far plane distances on vsgvr::Viewer.
0.6 - Movement
Functionality updates to allow basic locomotion / interaction demo
- New example for locomotion - teleport or slide (see Game::initActions to switch mode)
- 'OpenXR' prefix removed from all class names
- new class SpaceBinding - Similar to ActionPoseBinding, but for OpenXR spaces (track the user's head)
- new class UserOrigin - A vsg::MatrixTransform, with utility functions to position the user within a vsg scene
The UserOrigin affects how an application needs to be constructed somewhat, since 'world' space must remain as the user's physical vr space (STAGE space). It shouldn't be difficult to port existing vsg scenes into vsgvr after this change however, as long as the distinction between 'world' and 'scene' space is observed.
Known issues: Lots of outstanding things to do. New sample also has significant performance issues on the Oculus Quest 2, when run natively (Is fine under SteamVR).
0.5
Changes:
- A lot of CMake changes - install targets, integration with vsg cmake macros
- Rework to Actions / Input
- subaction paths now supported
- Input demo in quest example fixed - subaction paths appear to be required on oculus runtime, as using 2 separate actions for left/right hands caused only one to function, and be bound to the wrong hand
- General fixes
0.4 - Oculus Quest support
Just a tag to mark the start of Android/Quest support - Functionality the same as the desktop version
Ongoing issues with cmake project etc - Doesn't have install targets and such in the main branch yet
0.3 - For VSG 1.0.0
Base OpenXR integration and capability against VSG 1.0.0
Only version 1.0.0 of VSG has been tested - I expect any other versions to cause bugs in vsgvr
(Due to current approach and code duplication in OpenXRViewer.cpp. Watch this space..)
Should also now build as part of vsgFramework / other projects
CMake project is a work in progress - Doesn't have install targets and such yet
Initial OpenXR Integration
Functionally equivalent to previous, but using OpenXR runtime instead of OpenVR
Basic presentation / rendering, headset tracking, controller tracking.
Everything else not implemented yet, expect class names and such to change.