[Squash] Initial managed VR code, delete VR project
[Squash] Add `IsLeftHandDominant`, `Enabled` properties + `TriggerHapticVibration`
[Squash] Document TrackedDevice, remove unused, update skeletal data
Submit all the info we need to camera renderer + start rewriting stereo rendering
[Squash] Initial managed VR / stereo rendering logic
[Squash] Poll events & get poses correctly
[Squash] Don't do blit copy for each eye (works as long as `r_aoproxy_enable 00`), submit for DX11
https://files.facepunch.com/alexguthrie/1b1311b1/qrenderdoc_wLfY06ol2a.png
[Squash] Bind GetLastPoses, clean up
Update OpenVR from 1.16.8 to 1.26.7 (latest)
[Squash] Fix IPD calc, camera positioning, fix InchToMillimeter that was converting from mm to inch
[Squash] Dispatch submit func from scenesystem, do submit on render thread
[Squash] Digital / skeletal / pose action data + helper funcs for retrieving all action data
Remove unused (mostly legacy stuff)
# Conflicts:
# engine/Sandbox.Engine/EngineLoop.cs
Revert "Remove unused (mostly legacy stuff)"
This reverts commit ab8ea1a69e47ddff1367df4d5f00a1975def5d99.
Vulkan - explicit timing/post present handoff, submit logic
# Conflicts:
# engine/Sandbox.Engine/EngineLoop.cs
Remove runtime VR enable/disable
Doesn't work for vulkan which is what we're aiming to eventually primarily
support - ideally we want something like this issue describes:
ValveSoftware/openvr/issues/993
I did try re-creating the render device whenever VR was enabled/disabled
but couldn't get this working and I think fixing it is out-of-scope here.
[Squash] Refactor HMD-specific tracking code
[Squash] Finish VR analog/digital input, clean up
[Squash] Vulkan submit tweaks, log compositor errors