[ad_1]
Background
I’m having an issue where steamVR with an Oculus Quest 2 is being lenient with my use of OpenXR. For example
This is wrong (but works on steamVR)
XrActionStateFloat actionState = XrActionStateFloat.create();
XrActionStateGetInfo actionInfo = XrActionStateGetInfo.create();
actionInfo.action(obtainActionHandle(action));
XR10.xrGetActionStateFloat(xrSessionHandle, actionInfo, actionState);
This is right (I think)
XrActionStateFloat actionState = XrActionStateFloat.create();
actionState.type$Default();
XrActionStateGetInfo actionInfo = XrActionStateGetInfo.create();
actionInfo.type$Default();
actionInfo.action(obtainActionHandle(action));
XR10.xrGetActionStateFloat(xrSessionHandle, actionInfo, actionState);
SteamVR is I think assuming these type$Default()
calls even if I don’t make them. But other people’s systems are returning -1 XR_ERROR_VALIDATION_FAILURE without them. This helpful behaviour is making debugging these problems hard
Question
Is there any way to switch SteamVR into a strict mode where these calls would aggressively fail?
N.b. the code here is a LWJGL binding for OpenXR
[ad_2]