The getHitTestResultsForTransientInput()
method of the XRFrame
interface returns an array of XRTransientInputHitTestResult
objects containing transient input hit test results for a given XRTransientInputHitTestSource
.
getHitTestResultsForTransientInput(hitTestSource)
To request a transient input hit test source, start an XRSession
with the hit-test
session feature enabled. Next, request the hit test source with XRSession.requestHitTestSourceForTransientInput()
and store it for later use in the frame loop. Finally, call getHitTestResultsForTransientInput()
to obtain the result.
const xrSession = navigator.xr.requestSession("immersive-ar", {
requiredFeatures: ["local", "hit-test"],
});
let transientHitTestSource = null;
xrSession
.requestHitTestSourceForTransientInput({
profile: "generic-touchscreen",
offsetRay: new XRRay(),
})
.then((touchScreenHitTestSource) => {
transientHitTestSource = touchScreenHitTestSource;
});
function onXRFrame(time, xrFrame) {
let hitTestResults = xrFrame.getHitTestResultsForTransientInput(
transientHitTestSource,
);
}