@needle-tools/engine 4.12.0-next.0b39d59 → 4.12.0-next.58a3049
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components.needle.json +1 -1
- package/dist/generateMeshBVH.worker-iyfPIK6R.js +21 -0
- package/dist/{gltf-progressive-Rs-ojtXy.umd.cjs → gltf-progressive-Bfpfaz84.umd.cjs} +1 -1
- package/dist/{gltf-progressive-DnLBuGK5.js → gltf-progressive-DPunMlEM.js} +1 -1
- package/dist/{gltf-progressive-BmSygnAC.min.js → gltf-progressive-hFPACYio.min.js} +1 -1
- package/dist/{needle-engine.bundle-C6Ko3O_C.min.js → needle-engine.bundle-B0kv56HS.min.js} +155 -155
- package/dist/needle-engine.bundle-BmK_kKrT.umd.cjs +1647 -0
- package/dist/{needle-engine.bundle-BktxajaZ.js → needle-engine.bundle-Dxc1qRsY.js} +9567 -9140
- package/dist/needle-engine.d.ts +53 -14
- package/dist/needle-engine.js +47 -47
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/{postprocessing-BWZIqm3N.umd.cjs → postprocessing-BHQvwehB.umd.cjs} +5 -5
- package/dist/{postprocessing-BkY94MUG.min.js → postprocessing-ClLv0reO.min.js} +61 -61
- package/dist/{postprocessing-CLbPDsD8.js → postprocessing-DLI2N3LL.js} +426 -435
- package/dist/{three-examples-y2GeYlze.js → three-examples-D4rE49Ui.js} +10 -2
- package/dist/{three-examples-MsJjauyk.min.js → three-examples-DB5Uoja4.min.js} +2 -2
- package/dist/{three-examples-Dho7cuu4.umd.cjs → three-examples-Djbk6WA4.umd.cjs} +2 -2
- package/dist/{vendor-C_oHRUjX.js → vendor-DMZcbVO1.js} +2644 -2487
- package/dist/{vendor-BiJQtqow.min.js → vendor-sURMCFSI.min.js} +41 -41
- package/dist/{vendor-DN-NsXVB.umd.cjs → vendor-tyBvnMF-.umd.cjs} +36 -36
- package/lib/engine/debug/debug_console.js +403 -1
- package/lib/engine/debug/debug_console.js.map +1 -1
- package/lib/engine/engine_components.js +3 -3
- package/lib/engine/engine_components.js.map +1 -1
- package/lib/engine/engine_context.js +2 -0
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_input.d.ts +5 -0
- package/lib/engine/engine_input.js +6 -0
- package/lib/engine/engine_input.js.map +1 -1
- package/lib/engine/engine_license.d.ts +18 -0
- package/lib/engine/engine_license.js +160 -9
- package/lib/engine/engine_license.js.map +1 -1
- package/lib/engine/engine_networking.js +20 -5
- package/lib/engine/engine_networking.js.map +1 -1
- package/lib/engine/engine_physics.js.map +1 -1
- package/lib/engine/engine_serialization_builtin_serializer.js +1 -1
- package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
- package/lib/engine/engine_three_utils.js +2 -2
- package/lib/engine/engine_three_utils.js.map +1 -1
- package/lib/engine/engine_utils.d.ts +4 -1
- package/lib/engine/engine_utils.js +28 -4
- package/lib/engine/engine_utils.js.map +1 -1
- package/lib/engine/extensions/extensions.d.ts +29 -7
- package/lib/engine/extensions/extensions.js.map +1 -1
- package/lib/engine/webcomponents/WebXRButtons.js +13 -5
- package/lib/engine/webcomponents/WebXRButtons.js.map +1 -1
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -1
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js.map +1 -1
- package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +2 -0
- package/lib/engine/webcomponents/needle menu/needle-menu.js +37 -6
- package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
- package/lib/engine/webcomponents/needle-engine.ar-overlay.js +4 -0
- package/lib/engine/webcomponents/needle-engine.ar-overlay.js.map +1 -1
- package/lib/engine/xr/NeedleXRSession.d.ts +1 -1
- package/lib/engine/xr/NeedleXRSession.js +106 -22
- package/lib/engine/xr/NeedleXRSession.js.map +1 -1
- package/lib/engine/xr/TempXRContext.js +12 -2
- package/lib/engine/xr/TempXRContext.js.map +1 -1
- package/lib/engine/xr/usdz.js +6 -2
- package/lib/engine/xr/usdz.js.map +1 -1
- package/lib/engine-components/Camera.js +4 -1
- package/lib/engine-components/Camera.js.map +1 -1
- package/lib/engine-components/Component.d.ts +2 -1
- package/lib/engine-components/Component.js +3 -2
- package/lib/engine-components/Component.js.map +1 -1
- package/lib/engine-components/DragControls.js +1 -1
- package/lib/engine-components/DragControls.js.map +1 -1
- package/lib/engine-components/DropListener.d.ts +1 -0
- package/lib/engine-components/DropListener.js +26 -8
- package/lib/engine-components/DropListener.js.map +1 -1
- package/lib/engine-components/EventList.js +4 -1
- package/lib/engine-components/EventList.js.map +1 -1
- package/lib/engine-components/SceneSwitcher.d.ts +3 -2
- package/lib/engine-components/SceneSwitcher.js +20 -11
- package/lib/engine-components/SceneSwitcher.js.map +1 -1
- package/lib/engine-components/SpectatorCamera.js +15 -7
- package/lib/engine-components/SpectatorCamera.js.map +1 -1
- package/lib/engine-components/api.d.ts +1 -1
- package/lib/engine-components/api.js +1 -1
- package/lib/engine-components/api.js.map +1 -1
- package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.js +8 -0
- package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.js.map +1 -1
- package/lib/engine-components/webxr/Avatar.js +2 -0
- package/lib/engine-components/webxr/Avatar.js.map +1 -1
- package/lib/engine-components/webxr/WebARSessionRoot.d.ts +5 -2
- package/lib/engine-components/webxr/WebARSessionRoot.js +5 -2
- package/lib/engine-components/webxr/WebARSessionRoot.js.map +1 -1
- package/lib/engine-components/webxr/WebXR.d.ts +3 -1
- package/lib/engine-components/webxr/WebXR.js +21 -13
- package/lib/engine-components/webxr/WebXR.js.map +1 -1
- package/package.json +4 -4
- package/plugins/vite/poster-client.js +8 -1
- package/src/engine/debug/debug_console.ts +449 -1
- package/src/engine/engine_components.ts +4 -4
- package/src/engine/engine_context.ts +2 -0
- package/src/engine/engine_input.ts +7 -0
- package/src/engine/engine_license.ts +176 -9
- package/src/engine/engine_networking.ts +20 -5
- package/src/engine/engine_physics.ts +3 -3
- package/src/engine/engine_serialization_builtin_serializer.ts +1 -1
- package/src/engine/engine_three_utils.ts +4 -2
- package/src/engine/engine_utils.ts +23 -4
- package/src/engine/extensions/extensions.ts +30 -6
- package/src/engine/webcomponents/WebXRButtons.ts +15 -5
- package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -1
- package/src/engine/webcomponents/needle menu/needle-menu.ts +39 -7
- package/src/engine/webcomponents/needle-engine.ar-overlay.ts +6 -0
- package/src/engine/xr/NeedleXRSession.ts +120 -24
- package/src/engine/xr/TempXRContext.ts +12 -2
- package/src/engine/xr/usdz.ts +6 -1
- package/src/engine-components/Camera.ts +4 -1
- package/src/engine-components/Component.ts +5 -4
- package/src/engine-components/DragControls.ts +1 -1
- package/src/engine-components/DropListener.ts +29 -8
- package/src/engine-components/EventList.ts +5 -1
- package/src/engine-components/SceneSwitcher.ts +23 -13
- package/src/engine-components/SpectatorCamera.ts +21 -10
- package/src/engine-components/api.ts +1 -1
- package/src/engine-components/export/usdz/extensions/behavior/BehaviourComponents.ts +11 -0
- package/src/engine-components/webxr/Avatar.ts +4 -0
- package/src/engine-components/webxr/WebARSessionRoot.ts +7 -3
- package/src/engine-components/webxr/WebXR.ts +23 -13
- package/dist/generateMeshBVH.worker-BvGEI0r7.js +0 -21
- package/dist/needle-engine.bundle-BZJhFSnI.umd.cjs +0 -1647
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { hasCommercialLicense, onLicenseCheckResultChanged } from "../../engine_license.js";
|
|
1
|
+
import { hasCommercialLicense, onLicenseCheckResultChanged, Telemetry } from "../../engine_license.js";
|
|
2
2
|
import { isLocalNetwork } from "../../engine_networking_utils.js";
|
|
3
3
|
import { DeviceUtilities, getParam } from "../../engine_utils.js";
|
|
4
4
|
import { onXRSessionStart } from "../../xr/events.js";
|
|
@@ -107,6 +107,9 @@ export class NeedleMenu {
|
|
|
107
107
|
console.error("NeedleMenu: onclick is not a valid link", buttoninfo.onclick);
|
|
108
108
|
}
|
|
109
109
|
};
|
|
110
|
+
Telemetry.sendEvent(this._context, "needle-menu", {
|
|
111
|
+
action: "button_added_via_postmessage",
|
|
112
|
+
});
|
|
110
113
|
this._menu.appendChild(button);
|
|
111
114
|
}
|
|
112
115
|
else if (debug)
|
|
@@ -540,16 +543,15 @@ export class NeedleMenuElement extends HTMLElement {
|
|
|
540
543
|
bottom: calc(100% + 5px);
|
|
541
544
|
z-index: 100;
|
|
542
545
|
width: auto;
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
+
max-width: 90vw;
|
|
547
|
+
left: 50%;
|
|
548
|
+
transform: translateX(-50%);
|
|
549
|
+
padding: .2rem 1em;
|
|
546
550
|
|
|
547
551
|
}
|
|
548
552
|
.compact.logo-hidden .foldout {
|
|
549
553
|
/** for when there's no logo we want to center the foldout **/
|
|
550
554
|
min-width: 24ch;
|
|
551
|
-
margin-left: 50%;
|
|
552
|
-
transform: translateX(calc(-50% - .2rem));
|
|
553
555
|
}
|
|
554
556
|
|
|
555
557
|
.compact.top .foldout {
|
|
@@ -853,13 +855,39 @@ export class NeedleMenuElement extends HTMLElement {
|
|
|
853
855
|
compactMenuButton;
|
|
854
856
|
/** @private foldout container used in compact mode */
|
|
855
857
|
foldout;
|
|
858
|
+
trackedElements = new WeakSet();
|
|
859
|
+
trackElement(el) {
|
|
860
|
+
if (this.trackedElements.has(el))
|
|
861
|
+
return;
|
|
862
|
+
this.trackedElements.add(el);
|
|
863
|
+
el.addEventListener("click", (evt) => {
|
|
864
|
+
Telemetry.sendEvent(this._context, "needle-menu", {
|
|
865
|
+
action: "button_clicked",
|
|
866
|
+
element: evt.target instanceof Node ? evt.target.nodeName : el.nodeName,
|
|
867
|
+
label: el.textContent,
|
|
868
|
+
title: (el instanceof HTMLElement) ? el.title : undefined,
|
|
869
|
+
pointerid: (evt instanceof PointerEvent) ? evt.pointerId : undefined,
|
|
870
|
+
});
|
|
871
|
+
});
|
|
872
|
+
// el.addEventListener("pointerenter", (evt) => {
|
|
873
|
+
// Telemetry.sendEvent(this._context, "needle-menu", {
|
|
874
|
+
// action: "button_hovered",
|
|
875
|
+
// element: evt.target instanceof Node ? evt.target.nodeName : el.nodeName,
|
|
876
|
+
// label: el.textContent,
|
|
877
|
+
// title: (el instanceof HTMLElement) ? el.title : undefined,
|
|
878
|
+
// pointerid: (evt instanceof PointerEvent) ? evt.pointerId : undefined,
|
|
879
|
+
// });
|
|
880
|
+
// });
|
|
881
|
+
}
|
|
856
882
|
append(...nodes) {
|
|
857
883
|
for (const node of nodes) {
|
|
858
884
|
if (typeof node === "string") {
|
|
859
885
|
const element = document.createTextNode(node);
|
|
886
|
+
this.trackElement(element);
|
|
860
887
|
this.options.appendChild(element);
|
|
861
888
|
}
|
|
862
889
|
else {
|
|
890
|
+
this.trackElement(node);
|
|
863
891
|
this.options.appendChild(node);
|
|
864
892
|
}
|
|
865
893
|
}
|
|
@@ -908,6 +936,7 @@ export class NeedleMenuElement extends HTMLElement {
|
|
|
908
936
|
}
|
|
909
937
|
node = button;
|
|
910
938
|
}
|
|
939
|
+
this.trackElement(node);
|
|
911
940
|
const res = this.options.appendChild(node);
|
|
912
941
|
return res;
|
|
913
942
|
}
|
|
@@ -915,9 +944,11 @@ export class NeedleMenuElement extends HTMLElement {
|
|
|
915
944
|
for (const node of nodes) {
|
|
916
945
|
if (typeof node === "string") {
|
|
917
946
|
const element = document.createTextNode(node);
|
|
947
|
+
this.trackElement(element);
|
|
918
948
|
this.options.prepend(element);
|
|
919
949
|
}
|
|
920
950
|
else {
|
|
951
|
+
this.trackElement(node);
|
|
921
952
|
this.options.prepend(node);
|
|
922
953
|
}
|
|
923
954
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"needle-menu.js","sourceRoot":"","sources":["../../../../src/engine/webcomponents/needle menu/needle-menu.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"needle-menu.js","sourceRoot":"","sources":["../../../../src/engine/webcomponents/needle menu/needle-menu.ts"],"names":[],"mappings":"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"}
|
|
@@ -101,6 +101,10 @@ export class AROverlayHandler {
|
|
|
101
101
|
this.currentSession = null;
|
|
102
102
|
}
|
|
103
103
|
ensureQuitARButton(element) {
|
|
104
|
+
// No quit button in app clips, we provide one via the native UI
|
|
105
|
+
if (DeviceUtilities.isNeedleAppClip()) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
104
108
|
const quitARSlot = document.createElement("slot");
|
|
105
109
|
quitARSlot.setAttribute("name", "quit-ar");
|
|
106
110
|
this.appendElement(quitARSlot, element);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"needle-engine.ar-overlay.js","sourceRoot":"","sources":["../../../src/engine/webcomponents/needle-engine.ar-overlay.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"needle-engine.ar-overlay.js","sourceRoot":"","sources":["../../../src/engine/webcomponents/needle-engine.ar-overlay.ts"],"names":[],"mappings":"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"}
|
|
@@ -164,7 +164,7 @@ export declare class NeedleXRSession implements INeedleXRSession {
|
|
|
164
164
|
* @param init The XRSessionInit to use (optional), docs: https://developer.mozilla.org/en-US/docs/Web/API/XRSessionInit
|
|
165
165
|
* @param context The Needle Engine context to use
|
|
166
166
|
*/
|
|
167
|
-
static start(mode: XRSessionMode | "ar", init?: XRSessionInit, context?: Context): Promise<NeedleXRSession | null>;
|
|
167
|
+
static start(mode: XRSessionMode | "ar" | "quicklook", init?: XRSessionInit, context?: Context): Promise<NeedleXRSession | null>;
|
|
168
168
|
static setSession(mode: XRSessionMode, session: XRSession, init: XRSessionInit, context: Context): NeedleXRSession;
|
|
169
169
|
private static $_stop_request;
|
|
170
170
|
/** stops the active XR session */
|
|
@@ -5,9 +5,10 @@ import { Context, FrameEvent } from "../engine_context.js";
|
|
|
5
5
|
import { ContextEvent, ContextRegistry } from "../engine_context_registry.js";
|
|
6
6
|
import { isDestroyed } from "../engine_gameobject.js";
|
|
7
7
|
import { Gizmos } from "../engine_gizmos.js";
|
|
8
|
+
import { Telemetry } from "../engine_license.js";
|
|
8
9
|
import { registerFrameEventCallback, unregisterFrameEventCallback } from "../engine_lifecycle_functions_internal.js";
|
|
9
10
|
import { getBoundingBox, getTempQuaternion, getTempVector, getWorldPosition, getWorldQuaternion, getWorldScale, setWorldPosition, setWorldQuaternion, setWorldScale } from "../engine_three_utils.js";
|
|
10
|
-
import {
|
|
11
|
+
import { DeviceUtilities, getParam } from "../engine_utils.js";
|
|
11
12
|
import { invokeXRSessionEnd, invokeXRSessionStart } from "./events.js";
|
|
12
13
|
import { flipForwardMatrix, flipForwardQuaternion, ImplictXRRig } from "./internal.js";
|
|
13
14
|
import { NeedleXRController } from "./NeedleXRController.js";
|
|
@@ -32,6 +33,30 @@ function getDOMOverlayElement(domElement) {
|
|
|
32
33
|
}
|
|
33
34
|
handleSessionGranted();
|
|
34
35
|
async function handleSessionGranted() {
|
|
36
|
+
// await delay(400);
|
|
37
|
+
let defaultMode = "immersive-vr";
|
|
38
|
+
try {
|
|
39
|
+
// In app clips we default to AR
|
|
40
|
+
if (DeviceUtilities.isNeedleAppClip()) {
|
|
41
|
+
defaultMode = "immersive-ar";
|
|
42
|
+
}
|
|
43
|
+
// Check if VR is even supported, otherwise try AR
|
|
44
|
+
else if (!(await navigator.xr?.isSessionSupported("immersive-vr"))) {
|
|
45
|
+
defaultMode = "immersive-ar";
|
|
46
|
+
}
|
|
47
|
+
// Check if AR is supported, otherwise we can't do anything
|
|
48
|
+
if (!(await navigator.xr?.isSessionSupported("immersive-ar")) && defaultMode === "immersive-ar") {
|
|
49
|
+
// console.warn("[NeedleXRSession:granted] Neither VR nor AR supported, aborting session start.");
|
|
50
|
+
// showBalloonMessage("NeidleXRSession: Neither VR nor AR supported, aborting session start.");
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
catch (e) {
|
|
55
|
+
console.debug("[NeedleXRSession:granted] Error while checking XR support:", e);
|
|
56
|
+
// showBalloonWarning("NeedleXRSession: Error while checking XR support: " + (e as Error).message);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
// showBalloonMessage("sessiongranted: " + defaultMode);
|
|
35
60
|
// TODO: asap session granted doesnt handle the pre-room yet
|
|
36
61
|
if (getParam("debugasap")) {
|
|
37
62
|
let asapSession = globalThis["needle:XRSession"];
|
|
@@ -45,17 +70,19 @@ async function handleSessionGranted() {
|
|
|
45
70
|
enableSpatialConsole(true);
|
|
46
71
|
const session = await asapSession;
|
|
47
72
|
if (session) {
|
|
48
|
-
const sessionInit = NeedleXRSession.getDefaultSessionInit(
|
|
49
|
-
NeedleXRSession.setSession(
|
|
73
|
+
const sessionInit = NeedleXRSession.getDefaultSessionInit(defaultMode);
|
|
74
|
+
NeedleXRSession.setSession(defaultMode, session, sessionInit, cb.context);
|
|
50
75
|
}
|
|
51
76
|
else {
|
|
52
|
-
console.error("NeedleXRSession: ASAP session was rejected");
|
|
77
|
+
console.error("[NeedleXRSession:granted] ASAP session was rejected");
|
|
53
78
|
}
|
|
54
79
|
asapSession = undefined;
|
|
55
80
|
});
|
|
56
81
|
return;
|
|
57
82
|
}
|
|
58
83
|
}
|
|
84
|
+
// console.log("Attaching sessiongranted handler...", { haveXR: 'xr' in navigator });
|
|
85
|
+
// setTimeout(() => console.log("Session Granted handler attached.", { haveXR: 'xr' in navigator }), 1000);
|
|
59
86
|
if ('xr' in navigator) {
|
|
60
87
|
// WebXRViewer (based on Firefox) has a bug where addEventListener
|
|
61
88
|
// throws a silent exception and aborts execution entirely.
|
|
@@ -64,15 +91,14 @@ async function handleSessionGranted() {
|
|
|
64
91
|
return;
|
|
65
92
|
}
|
|
66
93
|
navigator.xr?.addEventListener('sessiongranted', async () => {
|
|
67
|
-
enableSpatialConsole(true);
|
|
68
|
-
console.log("Received Session Granted...");
|
|
69
|
-
await delay(100);
|
|
94
|
+
// enableSpatialConsole(true);
|
|
70
95
|
const lastSessionMode = sessionStorage.getItem("needle_xr_session_mode");
|
|
71
96
|
const lastSessionInit = sessionStorage.getItem("needle_xr_session_init") ?? null;
|
|
72
97
|
const init = lastSessionInit ? JSON.parse(lastSessionInit) : null;
|
|
73
98
|
let info = null;
|
|
74
99
|
if (contextIsLoading()) {
|
|
75
|
-
await TemporaryXRContext.start(lastSessionMode ||
|
|
100
|
+
await TemporaryXRContext.start(lastSessionMode || defaultMode, init || NeedleXRSession.getDefaultSessionInit(defaultMode))
|
|
101
|
+
.catch(e => console.warn("[NeedleXRSession:granted] TemporaryXRContext start failed:", e));
|
|
76
102
|
await waitForContextLoadingFinished();
|
|
77
103
|
info = await TemporaryXRContext.handoff();
|
|
78
104
|
}
|
|
@@ -80,17 +106,20 @@ async function handleSessionGranted() {
|
|
|
80
106
|
NeedleXRSession.setSession(info.mode, info.session, info.init, Context.Current);
|
|
81
107
|
}
|
|
82
108
|
else if (lastSessionMode && lastSessionInit) {
|
|
83
|
-
console.log("
|
|
109
|
+
console.log("[NeedleXRSession:granted] Restore last session");
|
|
84
110
|
const init = JSON.parse(lastSessionInit);
|
|
85
111
|
NeedleXRSession.start(lastSessionMode, init).catch(e => console.warn(e));
|
|
86
112
|
}
|
|
87
113
|
else {
|
|
88
114
|
// if no session was found we start VR by default
|
|
89
|
-
NeedleXRSession.start(
|
|
115
|
+
NeedleXRSession.start(defaultMode).catch(e => console.warn("[NeedleXRSession:granted] failed:", e));
|
|
90
116
|
}
|
|
91
117
|
// make sure we only subscribe to the event once
|
|
92
118
|
}, { once: true });
|
|
93
119
|
}
|
|
120
|
+
else {
|
|
121
|
+
// showBalloonWarning("NeedleXRSession: WebXR not available in this browser.");
|
|
122
|
+
}
|
|
94
123
|
}
|
|
95
124
|
function saveSessionInfo(mode, init) {
|
|
96
125
|
sessionStorage.setItem("needle_xr_session_mode", mode);
|
|
@@ -354,21 +383,65 @@ export class NeedleXRSession {
|
|
|
354
383
|
* @param context The Needle Engine context to use
|
|
355
384
|
*/
|
|
356
385
|
static async start(mode, init, context) {
|
|
357
|
-
// handle iOS platform where "immersive-ar" is
|
|
386
|
+
// handle iOS platform where "immersive-ar" is special:
|
|
387
|
+
// - we either launch QuickLook
|
|
388
|
+
// - or forward to the Needle App Clip experience for WebXR AR
|
|
358
389
|
// TODO: should we add a separate mode (e.g. "AR")? https://linear.app/needle/issue/NE-5303
|
|
359
390
|
if (DeviceUtilities.isiOS()) {
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
391
|
+
const arSupported = await this.isARSupported().catch(() => false);
|
|
392
|
+
// On VisionOS, we use QuickLook for AR experiences; no AppClip support for now.
|
|
393
|
+
if (DeviceUtilities.isVisionOS() && !arSupported && (mode === "ar" || mode === "immersive-ar")) {
|
|
394
|
+
mode = "quicklook";
|
|
395
|
+
}
|
|
396
|
+
if (mode === "quicklook") {
|
|
397
|
+
Telemetry.sendEvent(Context.Current, "xr", {
|
|
398
|
+
action: "quicklook_export",
|
|
399
|
+
source: "NeedleXRSession.start",
|
|
400
|
+
});
|
|
401
|
+
InternalUSDZRegistry.exportAndOpen();
|
|
402
|
+
return null;
|
|
403
|
+
}
|
|
404
|
+
if (!arSupported && (mode === "immersive-ar" || mode === "ar")) {
|
|
405
|
+
// const debugAppClip = getParam("debugappclip")
|
|
406
|
+
// Forward to the AppClip experience (Using the apple.com url the appclip overlay shows immediately)
|
|
407
|
+
// const url =`https://appclip.needle.tools/ar?url=${(location.href)}`;
|
|
408
|
+
const url = new URL("https://appclip.apple.com/id?p=tools.needle.launch-app.Clip");
|
|
409
|
+
url.searchParams.set("url", location.href);
|
|
410
|
+
const urlStr = url.toString();
|
|
411
|
+
Telemetry.sendEvent(Context.Current, "xr", {
|
|
412
|
+
action: "app_clip_launch",
|
|
413
|
+
source: "NeedleXRSession.start",
|
|
414
|
+
url: urlStr,
|
|
415
|
+
});
|
|
416
|
+
// if we are in an iframe, we need to navigate the top window
|
|
417
|
+
const topWindow = window.top || window;
|
|
418
|
+
try {
|
|
419
|
+
console.debug("iOS device detected - opening Needle App Clip for AR experience", { mode, init, url });
|
|
420
|
+
// navigate to app clip url but keep the current url in history, open in same tab
|
|
421
|
+
// eslint-disable-next-line xss/no-location-href-assign
|
|
422
|
+
topWindow.location.href = urlStr;
|
|
365
423
|
}
|
|
366
|
-
|
|
367
|
-
|
|
424
|
+
catch (e) {
|
|
425
|
+
console.warn("Error navigating to AppClip " + urlStr + "\n", e);
|
|
426
|
+
// if top window navigation fails and we are in an iframe, we try to navigate the top window directly
|
|
427
|
+
const weAreInIframe = window !== window.top;
|
|
428
|
+
if (weAreInIframe) {
|
|
429
|
+
// we can try to open a new tab as a fallback
|
|
430
|
+
window.open(urlStr, "_blank");
|
|
431
|
+
}
|
|
432
|
+
// eslint-disable-next-line xss/no-location-href-assign
|
|
433
|
+
else
|
|
434
|
+
window.location.href = urlStr;
|
|
368
435
|
}
|
|
436
|
+
return null;
|
|
369
437
|
}
|
|
370
438
|
}
|
|
371
|
-
|
|
439
|
+
if (mode === "quicklook") {
|
|
440
|
+
console.warn("QuickLook mode is only supported on iOS devices");
|
|
441
|
+
return null;
|
|
442
|
+
}
|
|
443
|
+
// Since we now know we are not on iOS, ar mode becomes "immersive-ar"
|
|
444
|
+
if (mode == "ar") {
|
|
372
445
|
mode = "immersive-ar";
|
|
373
446
|
}
|
|
374
447
|
if (isDevEnvironment() && getParam("debugxrpreroom")) {
|
|
@@ -458,13 +531,19 @@ export class NeedleXRSession {
|
|
|
458
531
|
}
|
|
459
532
|
if (debug)
|
|
460
533
|
showBalloonMessage("Requesting " + mode + " session (" + Date.now() + ")");
|
|
534
|
+
Telemetry.sendEvent(Context.Current, "xr", {
|
|
535
|
+
action: "session_request",
|
|
536
|
+
mode: mode,
|
|
537
|
+
features: ((init.requiredFeatures ?? []).concat(init.optionalFeatures ?? [])).join(","),
|
|
538
|
+
source: "NeedleXRSession.start",
|
|
539
|
+
});
|
|
461
540
|
this._currentSessionRequest = navigator?.xr?.requestSession(mode, init);
|
|
462
541
|
this._currentSessionRequestMode = mode;
|
|
463
542
|
/**@type {XRSystem} */
|
|
464
543
|
const newSession = await (this._currentSessionRequest)?.catch(e => {
|
|
465
|
-
console.error(e, "Code: " + e
|
|
466
|
-
if (e
|
|
467
|
-
showBalloonWarning("Make sure
|
|
544
|
+
console.error(e, "Code: " + e?.code);
|
|
545
|
+
if (e?.code === 9)
|
|
546
|
+
showBalloonWarning("Couldn't start XR session. Make sure you allow the required permissions.");
|
|
468
547
|
console.log("If the specified XR configuration is not supported (e.g. entering AR doesnt work) - make sure you access the website on a secure connection (HTTPS) and your device has the required permissions (e.g. camera access)");
|
|
469
548
|
const notSecure = location.protocol === 'http:';
|
|
470
549
|
if (notSecure)
|
|
@@ -991,6 +1070,11 @@ export class NeedleXRSession {
|
|
|
991
1070
|
return;
|
|
992
1071
|
this._ended = true;
|
|
993
1072
|
console.debug("XR Session ended");
|
|
1073
|
+
Telemetry.sendEvent(Context.Current, "xr", {
|
|
1074
|
+
action: "session_end",
|
|
1075
|
+
mode: this.mode,
|
|
1076
|
+
source: "NeedleXRSession.onEnd",
|
|
1077
|
+
});
|
|
994
1078
|
deleteSessionInfo();
|
|
995
1079
|
this.onAfterRender();
|
|
996
1080
|
this.revertCustomForward();
|