Hello All, I was wondering if it's possible to modify the hololens stabilization pipeline somehow. Something is written on Windows HoloLens webpage: However there is nothing but modifying the stabilization plane position. So my question is if it's possible to read and act directly on the stabilization pipeline to enable/disable some of its features.
Hello @joejo I’m using the new XR Plugin system (Unity 2018.4.17f1) My final purpose would be disable completely hololens stabilisation pipeline and hololens positional al rotational tracking. For the latter I’ve managed it using Code (CSharp): XRDevice.DisableAutoXRCameraTracking But for the former I’ve found nothing interesting to act directly on stabilisation pipeline. The best option would be to manually induce the "Unavailable" tracking state on HoloLens, but unfortunately seems that all the APIs that expose the tracking state are read-only. Do you have any suggestion?
For built in VR you want to use HolographicSettings.SetFocusPointForFrame For XR Plug-in you want to use https://docs.unity3d.com/ScriptReference/XR.XRDisplaySubsystem.SetFocusPlane.html
Tracking state and stabilization are two separate things. For tracking state you want to use the Input Subsystem: https://docs.unity3d.com/ScriptReference/XR.XRInputSubsystem.html
I know, as I wrote in the first post modifying the position of the stabilisation plane is the only thing I’ve found. There’s nothing for completely disabling hololens stabilisation algorithms?
For what concerns tracking state I refer to this Code (CSharp): void Update() { switch (UnityEngine.XR.WSA.WorldManager.state) { case PositionalLocatorState.Active: // handle active break; case PositionalLocatorState.Activating: case PositionalLocatorState.Inhibited: case PositionalLocatorState.OrientationOnly: case PositionalLocatorState.Unavailable: default: // only rotational information is available break; } Here shows how to interact with locator state, but without any chance to actually induce manually one of these states on hololens
No. If you don't manage it yourself HoloLens automatically sets the stabilization plane. > For what concerns tracking state I refer to this That information has nothing to do with stabilization. Locator State is entirely a reported datum letting you know what about the device and it's ability to track its place in the real world.
Okay so no chance of acting on hololens stabilisation algoritms apart from Settings Plane position. And no Way to Modify locator state as well Thank you!
Hello @joejo , after a lot of searching i've found out that actually there is a way to Disable HoloLens image stabilization at all. It is: Code (CSharp): HolographicSettings.ReprojectionMode = HolographicSettings.HolographicReprojectionMode.Disabled; I have still to try it to verify how it's working, but the description seems to give some hope: The image should not be stabilized for the user's head motion, instead remaining fixed in the display. This is generally discouraged, as it is only comfortable for users when used sparingly, such as when the only visible content is a small cursor.