YVR Manager
The script YVRManager is the core manager of the whole SDK, which controls the execution of VR event functions and offers different settings for rendering quality, tracking mode, performance, etc.
Configure Settings
The settings in terms of rendering quality, tracking space, performance, etc. can be set via the Inspector panel of YVRManager.
Quality
VSync Count
: The number of VSyncs that should pass between each frame.Fixed Foveated Rendering Level
: the level for fixed foveated rendering. The higher the value, the more blurred the edges of the picture, but the better the performance.UseRecommendMSAALevel
: Whether to use recommend MSAA level.
Tracking
Tracking Space
: The tracking space of the rigid poses.Eye Level
: HMD pose will not consider ground height.Floor Level
: Mode used in most cases, which will consider ground height and recenter state.Stage
: HMD pose will not consider recenter state.
Events
The events happened at runtime are all managed in YVRManager.instance.eventsManager, including:
onTrackingAcquired
: Occurs when head gained tracking.onTrackingLost
: Occurs when head lost tracking.onHMDMounted
: Occurs when an HMD is put on the user's head.onHMDUnMounted
: Occurs when an HMD is taken off the user's head.onRecenterOccurred
: Occurs when recenter occurred.onFocusGained
: Occurs when application focus gained.onFocusLost
: Occurs when application focus lost.onVisibilityGained
: Occurs when application is visibleonVisibilityLost
: Occurs when application is completely obscured by other content.onUpdate
: Occurs at the update function of every frame.onPreSubmitGfx
: Occurs just before current frame is submitted to native, which will be triggered in rendering thread.onPostSubmitGfx
: Occurs just after current frame is submitted to native, which will be triggered in rendering thread.
Device state
Device state can be quired in YVRManager.instance.hmdManager, e.g. battery level, battery temperature, volume level.
Boundary state
All boundary state can be quired in YVRManager.instance.boundary, e.g. boundary dimensions, boundary visibility. Also, YVRManager.instance.boundary provide several APIs for querying intersections state with boundary.