Untitled
unknown
plain_text
2 years ago
1.6 kB
7
Indexable
const render = (timestamp: any, frame: XRFrame) => { if (frame) { if (hitTestSource) { const hitTestResults = frame.getHitTestResults(hitTestSource); if (hitTestResults.length > 0 && marker) { const hit = hitTestResults[0]; const pose = hit?.getPose(localSpace); marker.visible = true; marker.matrix.fromArray(pose?.transform.matrix); afterTap(pose, hit); } else { const viewerPointPose = frame?.getViewerPose(viewerSpace); if (viewerPointPose?.views?.length && viewerPointPose?.views?.length > 0) { const depthInformations = (frame as any)?.getDepthInformation(viewerPointPose.views?.[0]); if (depthInformations) { $("#center-screen-distance").text(depthInformations.getDepthInMeters(0.5, 0.5)); const distance = depthInformations.getDepthInMeters(0.5, 0.5); const position = new THREE.Vector3(0, 0, -distance); position.unproject(camera); const quaternion = new THREE.Quaternion(); quaternion.setFromAxisAngle(new THREE.Vector3(1, 0, 0), Math.PI / 2); marker.position.copy(position); marker.setRotationFromQuaternion(quaternion); marker.updateMatrix(); marker.visible = true; } } else { marker.visible = false; } marker.visible = false; } } updateObjectPositions(frame); } renderEngine.render(scene, camera); };
Editor is loading...
Leave a Comment