@iwsdk/core 0.5.2 → 1.0.0-rc.0

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.
Files changed (140) hide show
  1. package/README.md +22 -1
  2. package/dist/asset/asset-manager.d.ts.map +1 -1
  3. package/dist/asset/asset-manager.js +3 -2
  4. package/dist/asset/asset-manager.js.map +1 -1
  5. package/dist/camera/camera-system.d.ts +7 -3
  6. package/dist/camera/camera-system.d.ts.map +1 -1
  7. package/dist/camera/camera-system.js +81 -50
  8. package/dist/camera/camera-system.js.map +1 -1
  9. package/dist/camera/camera-utils.d.ts +5 -0
  10. package/dist/camera/camera-utils.d.ts.map +1 -1
  11. package/dist/camera/camera-utils.js +8 -1
  12. package/dist/camera/camera-utils.js.map +1 -1
  13. package/dist/depth/depth-sensing-system.d.ts +3 -0
  14. package/dist/depth/depth-sensing-system.d.ts.map +1 -1
  15. package/dist/depth/depth-sensing-system.js +55 -1
  16. package/dist/depth/depth-sensing-system.js.map +1 -1
  17. package/dist/ecs/world.d.ts +2 -0
  18. package/dist/ecs/world.d.ts.map +1 -1
  19. package/dist/ecs/world.js +4 -0
  20. package/dist/ecs/world.js.map +1 -1
  21. package/dist/grab/distance-grabbable.d.ts +5 -0
  22. package/dist/grab/distance-grabbable.d.ts.map +1 -1
  23. package/dist/grab/distance-grabbable.js +5 -0
  24. package/dist/grab/distance-grabbable.js.map +1 -1
  25. package/dist/grab/handles.d.ts +6 -0
  26. package/dist/grab/handles.d.ts.map +1 -1
  27. package/dist/grab/handles.js +46 -12
  28. package/dist/grab/handles.js.map +1 -1
  29. package/dist/grab/one-hand-grabbable.d.ts +5 -0
  30. package/dist/grab/one-hand-grabbable.d.ts.map +1 -1
  31. package/dist/grab/one-hand-grabbable.js +5 -0
  32. package/dist/grab/one-hand-grabbable.js.map +1 -1
  33. package/dist/grab/two-hands-grabbable.d.ts +5 -0
  34. package/dist/grab/two-hands-grabbable.d.ts.map +1 -1
  35. package/dist/grab/two-hands-grabbable.js +5 -0
  36. package/dist/grab/two-hands-grabbable.js.map +1 -1
  37. package/dist/index.js +7 -6
  38. package/dist/index.js.map +1 -1
  39. package/dist/init/index.d.ts +2 -2
  40. package/dist/init/index.d.ts.map +1 -1
  41. package/dist/init/session-grant.d.ts +34 -0
  42. package/dist/init/session-grant.d.ts.map +1 -0
  43. package/dist/init/session-grant.js +89 -0
  44. package/dist/init/session-grant.js.map +1 -0
  45. package/dist/init/world-initializer.d.ts +87 -4
  46. package/dist/init/world-initializer.d.ts.map +1 -1
  47. package/dist/init/world-initializer.js +48 -43
  48. package/dist/init/world-initializer.js.map +1 -1
  49. package/dist/init/xr.d.ts +19 -0
  50. package/dist/init/xr.d.ts.map +1 -1
  51. package/dist/init/xr.js +136 -41
  52. package/dist/init/xr.js.map +1 -1
  53. package/dist/input/canvas-pointer-system.d.ts +2 -0
  54. package/dist/input/canvas-pointer-system.d.ts.map +1 -1
  55. package/dist/input/canvas-pointer-system.js +33 -13
  56. package/dist/input/canvas-pointer-system.js.map +1 -1
  57. package/dist/input/input-system.d.ts.map +1 -1
  58. package/dist/input/input-system.js +5 -2
  59. package/dist/input/input-system.js.map +1 -1
  60. package/dist/layers/xr-cylinder-layer.d.ts +2 -1
  61. package/dist/layers/xr-cylinder-layer.d.ts.map +1 -1
  62. package/dist/layers/xr-cylinder-layer.js +2 -1
  63. package/dist/layers/xr-cylinder-layer.js.map +1 -1
  64. package/dist/layers/xr-layer-init.d.ts +19 -0
  65. package/dist/layers/xr-layer-init.d.ts.map +1 -0
  66. package/dist/layers/xr-layer-init.js +20 -0
  67. package/dist/layers/xr-layer-init.js.map +1 -0
  68. package/dist/layers/xr-layer-system.d.ts +41 -1
  69. package/dist/layers/xr-layer-system.d.ts.map +1 -1
  70. package/dist/layers/xr-layer-system.js +506 -132
  71. package/dist/layers/xr-layer-system.js.map +1 -1
  72. package/dist/layers/xr-layer-transform.d.ts +18 -0
  73. package/dist/layers/xr-layer-transform.d.ts.map +1 -0
  74. package/dist/layers/xr-layer-transform.js +115 -0
  75. package/dist/layers/xr-layer-transform.js.map +1 -0
  76. package/dist/layers/xr-quad-layer.d.ts +2 -1
  77. package/dist/layers/xr-quad-layer.d.ts.map +1 -1
  78. package/dist/layers/xr-quad-layer.js +2 -1
  79. package/dist/layers/xr-quad-layer.js.map +1 -1
  80. package/dist/level/level-component-applier.d.ts +2 -0
  81. package/dist/level/level-component-applier.d.ts.map +1 -1
  82. package/dist/level/level-component-applier.js +24 -5
  83. package/dist/level/level-component-applier.js.map +1 -1
  84. package/dist/mcp/ecs-debug-tools.d.ts +4 -1
  85. package/dist/mcp/ecs-debug-tools.d.ts.map +1 -1
  86. package/dist/mcp/ecs-debug-tools.js +113 -10
  87. package/dist/mcp/ecs-debug-tools.js.map +1 -1
  88. package/dist/mcp/index.d.ts +1 -0
  89. package/dist/mcp/index.d.ts.map +1 -1
  90. package/dist/mcp/mcp-runtime.d.ts +2 -0
  91. package/dist/mcp/mcp-runtime.d.ts.map +1 -1
  92. package/dist/mcp/mcp-runtime.js +41 -0
  93. package/dist/mcp/mcp-runtime.js.map +1 -1
  94. package/dist/mcp/ui-debug-tools.d.ts +56 -0
  95. package/dist/mcp/ui-debug-tools.d.ts.map +1 -0
  96. package/dist/mcp/ui-debug-tools.js +412 -0
  97. package/dist/mcp/ui-debug-tools.js.map +1 -0
  98. package/dist/physics/index.js +1 -1
  99. package/dist/physics/physics-runtime.d.ts +22 -0
  100. package/dist/physics/physics-runtime.d.ts.map +1 -0
  101. package/dist/physics/physics-runtime.js +423 -0
  102. package/dist/physics/physics-runtime.js.map +1 -0
  103. package/dist/physics/physics-system.d.ts +84 -108
  104. package/dist/physics/physics-system.d.ts.map +1 -1
  105. package/dist/physics/physics-system.js +686 -555
  106. package/dist/physics/physics-system.js.map +1 -1
  107. package/dist/physics/physics-transport.d.ts +20 -0
  108. package/dist/physics/physics-transport.d.ts.map +1 -0
  109. package/dist/physics/physics-transport.js +111 -0
  110. package/dist/physics/physics-transport.js.map +1 -0
  111. package/dist/physics/physics-worker-protocol.d.ts +144 -0
  112. package/dist/physics/physics-worker-protocol.d.ts.map +1 -0
  113. package/dist/physics/physics-worker-protocol.js +41 -0
  114. package/dist/physics/physics-worker-protocol.js.map +1 -0
  115. package/dist/physics/physics-worker-utils.d.ts +8 -0
  116. package/dist/physics/physics-worker-utils.d.ts.map +1 -0
  117. package/dist/physics/physics-worker-utils.js +12 -0
  118. package/dist/physics/physics-worker-utils.js.map +1 -0
  119. package/dist/physics/physics-worker.d.ts +8 -0
  120. package/dist/physics/physics-worker.d.ts.map +1 -0
  121. package/dist/physics/physics-worker.js +66 -0
  122. package/dist/physics/physics-worker.js.map +1 -0
  123. package/dist/project/normalize.js +7 -1
  124. package/dist/project/normalize.js.map +1 -1
  125. package/dist/project/types.d.ts +7 -1
  126. package/dist/project/types.d.ts.map +1 -1
  127. package/dist/project/validation.js +36 -2
  128. package/dist/project/validation.js.map +1 -1
  129. package/dist/scene-understanding/scene-understanding-system.d.ts +42 -6
  130. package/dist/scene-understanding/scene-understanding-system.d.ts.map +1 -1
  131. package/dist/scene-understanding/scene-understanding-system.js +391 -106
  132. package/dist/scene-understanding/scene-understanding-system.js.map +1 -1
  133. package/dist/schemas/iwsdk-project.v1.schema.json +20 -1
  134. package/dist/ui/follow.d.ts.map +1 -1
  135. package/dist/ui/follow.js +0 -1
  136. package/dist/ui/follow.js.map +1 -1
  137. package/dist/version.d.ts +1 -1
  138. package/dist/version.d.ts.map +1 -1
  139. package/dist/version.js +1 -1
  140. package/package.json +5 -5
package/README.md CHANGED
@@ -26,7 +26,28 @@ This will guide you through creating a new project with all the recommended tool
26
26
  ## Manual Installation
27
27
 
28
28
  ```bash
29
- npm install @iwsdk/core three
29
+ npm install @iwsdk/core three@npm:super-three@0.181.0
30
+ ```
31
+
32
+ Keep `three` pinned to the same alias in your application manifest. The
33
+ override prevents another dependency from installing a second Three.js module
34
+ instance:
35
+
36
+ ```json
37
+ {
38
+ "dependencies": {
39
+ "@iwsdk/core": "^1.0.0",
40
+ "three": "npm:super-three@0.181.0"
41
+ },
42
+ "overrides": {
43
+ "three": "npm:super-three@0.181.0"
44
+ },
45
+ "pnpm": {
46
+ "overrides": {
47
+ "three": "npm:super-three@0.181.0"
48
+ }
49
+ }
50
+ }
30
51
  ```
31
52
 
32
53
  ### Basic Example
@@ -1 +1 @@
1
- {"version":3,"file":"asset-manager.d.ts","sourceRoot":"","sources":["../../src/asset/asset-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"asset-manager.d.ts","sourceRoot":"","sources":["../../src/asset/asset-manager.ts"],"names":[],"mappings":"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"}
@@ -396,7 +396,8 @@ AssetManager.manifestEntries = new Map();
396
396
  function isObject3DManifestEntry(entry) {
397
397
  return (entry === null || entry === void 0 ? void 0 : entry.isObject3D) === true;
398
398
  }
399
- const SUPPORTED_ASSET_TYPES = new Set(Object.values(AssetType));
399
+ const SUPPORTED_ASSET_TYPE_NAMES = Object.values(AssetType);
400
+ const SUPPORTED_ASSET_TYPES = new Set(SUPPORTED_ASSET_TYPE_NAMES);
400
401
  const SUPPORTED_ASSET_PRIORITIES = new Set([
401
402
  'critical',
402
403
  'background',
@@ -418,7 +419,7 @@ function assertAssetManifestEntry(id, entry) {
418
419
  }
419
420
  if (typeof candidate.type !== 'string' ||
420
421
  !SUPPORTED_ASSET_TYPES.has(candidate.type)) {
421
- throw new Error(`Asset manifest entry "${id}" has unsupported type "${String(candidate.type)}"`);
422
+ throw new Error(`Asset manifest entry "${id}" has unsupported type "${String(candidate.type)}". Supported types: ${SUPPORTED_ASSET_TYPE_NAMES.join(', ')}`);
422
423
  }
423
424
  if (candidate.priority !== undefined &&
424
425
  !SUPPORTED_ASSET_PRIORITIES.has(candidate.priority)) {
@@ -1 +1 @@
1
- {"version":3,"file":"asset-manager.js","sources":["../../src/asset/asset-manager.ts"],"sourcesContent":[null],"names":["cloneObject3D"],"mappings":"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"}
1
+ {"version":3,"file":"asset-manager.js","sources":["../../src/asset/asset-manager.ts"],"sourcesContent":[null],"names":["cloneObject3D"],"mappings":"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"}
@@ -113,10 +113,9 @@ declare const CameraSystem_base: import("elics").SystemConstructor<import("elics
113
113
  * CameraSystem - Manages camera stream lifecycle for CameraSource components
114
114
  * Automatically starts streams when the world is visible, including browser
115
115
  * non-immersive mode and immersive XR sessions.
116
- *
117
- * System is stateless - all state is stored in CameraSource components
118
116
  */
119
117
  export declare class CameraSystem extends CameraSystem_base {
118
+ private readonly operationIds;
120
119
  init(): void;
121
120
  update(): void;
122
121
  /**
@@ -124,13 +123,18 @@ export declare class CameraSystem extends CameraSystem_base {
124
123
  * Async operation - sets state to Starting, then Active when complete
125
124
  * Users should check state or null-check texture/videoElement before using
126
125
  *
127
- * Checks state after each async operation to abort if stopCamera was called
126
+ * Checks an operation generation after each async operation so a restarted
127
+ * camera cannot be overwritten by an older request that resolves later.
128
128
  */
129
129
  private startCamera;
130
130
  /**
131
131
  * Stop camera stream for an entity
132
132
  */
133
133
  private stopCamera;
134
+ private releaseCameraResources;
135
+ private stopAllCameras;
136
+ private beginOperation;
137
+ private isCurrentStart;
134
138
  /**
135
139
  * Clean up camera resources (stream, video element, texture)
136
140
  */
@@ -1 +1 @@
1
- {"version":3,"file":"camera-system.d.ts","sourceRoot":"","sources":["../../src/camera/camera-system.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeH;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,iBAEhC;IACA,IAAI;IAeJ,MAAM;IAgBN;;;;;;OAMG;YACW,WAAW;IAqKzB;;OAEG;IACH,OAAO,CAAC,UAAU;IAuBlB;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAgB/B"}
1
+ {"version":3,"file":"camera-system.d.ts","sourceRoot":"","sources":["../../src/camera/camera-system.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeH;;;;GAIG;AACH,qBAAa,YAAa,SAAQ,iBAEhC;IACA,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiC;IAE9D,IAAI;IAkCJ,MAAM;IAqBN;;;;;;;OAOG;YACW,WAAW;IA0IzB;;OAEG;IACH,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,sBAAsB;IAqB9B,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAgB/B"}
@@ -16,33 +16,49 @@ import { VideoTexture, LinearFilter } from 'three';
16
16
  * CameraSystem - Manages camera stream lifecycle for CameraSource components
17
17
  * Automatically starts streams when the world is visible, including browser
18
18
  * non-immersive mode and immersive XR sessions.
19
- *
20
- * System is stateless - all state is stored in CameraSource components
21
19
  */
22
20
  class CameraSystem extends createSystem({
23
21
  cameras: { required: [CameraSource] },
24
22
  }) {
23
+ constructor() {
24
+ super(...arguments);
25
+ this.operationIds = new WeakMap();
26
+ }
25
27
  init() {
26
- // Stop all cameras only when the page/session is hidden. Register the
27
- // unsubscribe so the callback (and its closure over `this`) is released on
28
- // system teardown rather than leaking.
28
+ const stopIfDocumentHidden = () => {
29
+ if (document.visibilityState === 'hidden') {
30
+ this.stopAllCameras();
31
+ }
32
+ };
33
+ const hasDocumentVisibility = typeof document !== 'undefined' &&
34
+ typeof document.addEventListener === 'function';
35
+ if (hasDocumentVisibility) {
36
+ document.addEventListener('visibilitychange', stopIfDocumentHidden);
37
+ }
29
38
  this.cleanupFuncs.push(this.world.visibilityState.subscribe((state) => {
30
39
  if (state === VisibilityState.Hidden) {
31
- for (const entity of this.queries.cameras.entities) {
32
- this.stopCamera(entity);
33
- }
40
+ this.stopAllCameras();
41
+ }
42
+ }), this.queries.cameras.subscribe('disqualify', (entity) => {
43
+ this.stopCamera(entity);
44
+ }), () => {
45
+ if (hasDocumentVisibility) {
46
+ document.removeEventListener('visibilitychange', stopIfDocumentHidden);
34
47
  }
35
- }));
48
+ this.stopAllCameras();
49
+ });
36
50
  }
37
51
  update() {
38
52
  // CameraSource uses browser media APIs and works outside immersive XR.
39
- if (this.world.visibilityState.value === VisibilityState.Hidden) {
53
+ const documentHidden = typeof document !== 'undefined' && document.visibilityState === 'hidden';
54
+ if (documentHidden ||
55
+ this.world.visibilityState.value === VisibilityState.Hidden) {
40
56
  return;
41
57
  }
42
58
  for (const entity of this.queries.cameras.entities) {
43
59
  const state = entity.getValue(CameraSource, 'state');
44
- // Start camera if inactive (not started or errored)
45
- if (state === CameraState.Inactive || state === CameraState.Error) {
60
+ // Error is terminal until callers explicitly set the source inactive.
61
+ if (state === CameraState.Inactive) {
46
62
  this.startCamera(entity);
47
63
  }
48
64
  }
@@ -52,19 +68,23 @@ class CameraSystem extends createSystem({
52
68
  * Async operation - sets state to Starting, then Active when complete
53
69
  * Users should check state or null-check texture/videoElement before using
54
70
  *
55
- * Checks state after each async operation to abort if stopCamera was called
71
+ * Checks an operation generation after each async operation so a restarted
72
+ * camera cannot be overwritten by an older request that resolves later.
56
73
  */
57
74
  async startCamera(entity) {
75
+ const operationId = this.beginOperation(entity);
76
+ this.releaseCameraResources(entity);
58
77
  // Set state to Starting to prevent duplicate attempts
59
78
  entity.setValue(CameraSource, 'state', CameraState.Starting);
79
+ let stream = null;
80
+ let video = null;
81
+ let texture = null;
60
82
  try {
61
83
  let deviceId = entity.getValue(CameraSource, 'deviceId');
62
84
  // Auto-select camera if no deviceId provided
63
85
  if (!deviceId) {
64
86
  const devices = await CameraUtils.getDevices();
65
- // Check if we should abort (stopCamera was called during async operation)
66
- const currentState = entity.getValue(CameraSource, 'state');
67
- if (currentState !== CameraState.Starting) {
87
+ if (!this.isCurrentStart(entity, operationId)) {
68
88
  return; // Aborted
69
89
  }
70
90
  const facing = entity.getValue(CameraSource, 'facing');
@@ -100,7 +120,7 @@ class CameraSystem extends createSystem({
100
120
  const height = entity.getValue(CameraSource, 'height');
101
121
  const frameRate = entity.getValue(CameraSource, 'frameRate');
102
122
  // Request camera stream
103
- const stream = await navigator.mediaDevices.getUserMedia({
123
+ stream = await navigator.mediaDevices.getUserMedia({
104
124
  video: {
105
125
  deviceId: { exact: deviceId },
106
126
  width: { ideal: width },
@@ -108,50 +128,45 @@ class CameraSystem extends createSystem({
108
128
  frameRate: { ideal: frameRate },
109
129
  },
110
130
  });
111
- // Check if we should abort after getting stream
112
- const currentState = entity.getValue(CameraSource, 'state');
113
- if (currentState !== CameraState.Starting) {
131
+ if (!this.isCurrentStart(entity, operationId)) {
114
132
  // Aborted - clean up the stream we just created
115
133
  this.cleanupCameraResources(stream, null, null);
116
134
  return;
117
135
  }
118
136
  // Create video element
119
- const video = document.createElement('video');
120
- video.setAttribute('playsinline', '');
121
- video.setAttribute('autoplay', '');
122
- video.muted = true;
123
- video.srcObject = stream;
137
+ const createdVideo = document.createElement('video');
138
+ video = createdVideo;
139
+ createdVideo.setAttribute('playsinline', '');
140
+ createdVideo.setAttribute('autoplay', '');
141
+ createdVideo.muted = true;
142
+ createdVideo.srcObject = stream;
124
143
  // Wait for video to be ready
125
144
  await new Promise((resolve, reject) => {
126
145
  const onCanPlay = () => {
127
- video.removeEventListener('canplay', onCanPlay);
128
- video.removeEventListener('error', onError);
146
+ createdVideo.removeEventListener('canplay', onCanPlay);
147
+ createdVideo.removeEventListener('error', onError);
129
148
  resolve();
130
149
  };
131
150
  const onError = (error) => {
132
- video.removeEventListener('canplay', onCanPlay);
133
- video.removeEventListener('error', onError);
151
+ createdVideo.removeEventListener('canplay', onCanPlay);
152
+ createdVideo.removeEventListener('error', onError);
134
153
  reject(error);
135
154
  };
136
- video.addEventListener('canplay', onCanPlay);
137
- video.addEventListener('error', onError);
155
+ createdVideo.addEventListener('canplay', onCanPlay);
156
+ createdVideo.addEventListener('error', onError);
138
157
  });
139
- // Check if we should abort after video ready
140
- const finalState = entity.getValue(CameraSource, 'state');
141
- if (finalState !== CameraState.Starting) {
158
+ if (!this.isCurrentStart(entity, operationId)) {
142
159
  // Aborted - clean up everything
143
160
  this.cleanupCameraResources(stream, video, null);
144
161
  return;
145
162
  }
146
163
  // Start playback
147
- await video.play();
164
+ await createdVideo.play();
148
165
  // Create VideoTexture
149
- const texture = new VideoTexture(video);
166
+ texture = new VideoTexture(createdVideo);
150
167
  texture.minFilter = LinearFilter;
151
168
  texture.magFilter = LinearFilter;
152
- // Final check before committing - ensure state is still Starting
153
- const committingState = entity.getValue(CameraSource, 'state');
154
- if (committingState !== CameraState.Starting) {
169
+ if (!this.isCurrentStart(entity, operationId)) {
155
170
  // Aborted at the last moment - clean up everything
156
171
  this.cleanupCameraResources(stream, video, texture);
157
172
  return;
@@ -163,31 +178,47 @@ class CameraSystem extends createSystem({
163
178
  entity.setValue(CameraSource, 'state', CameraState.Active);
164
179
  }
165
180
  catch (error) {
166
- console.error('Failed to start camera:', error);
167
- // Clean up any partial state
168
- const stream = entity.getValue(CameraSource, 'stream');
169
- const video = entity.getValue(CameraSource, 'videoElement');
170
- const texture = entity.getValue(CameraSource, 'texture');
171
181
  this.cleanupCameraResources(stream, video, texture);
172
- entity.setValue(CameraSource, 'stream', null);
173
- entity.setValue(CameraSource, 'videoElement', null);
174
- entity.setValue(CameraSource, 'texture', null);
175
- entity.setValue(CameraSource, 'state', CameraState.Error);
182
+ if (this.isCurrentStart(entity, operationId)) {
183
+ console.error('Failed to start camera:', error);
184
+ entity.setValue(CameraSource, 'stream', null);
185
+ entity.setValue(CameraSource, 'videoElement', null);
186
+ entity.setValue(CameraSource, 'texture', null);
187
+ entity.setValue(CameraSource, 'state', CameraState.Error);
188
+ }
176
189
  }
177
190
  }
178
191
  /**
179
192
  * Stop camera stream for an entity
180
193
  */
181
194
  stopCamera(entity) {
195
+ this.beginOperation(entity);
196
+ this.releaseCameraResources(entity);
197
+ entity.setValue(CameraSource, 'state', CameraState.Inactive);
198
+ }
199
+ releaseCameraResources(entity) {
182
200
  const stream = entity.getValue(CameraSource, 'stream');
183
201
  const video = entity.getValue(CameraSource, 'videoElement');
184
202
  const texture = entity.getValue(CameraSource, 'texture');
185
203
  this.cleanupCameraResources(stream, video, texture);
186
- // Clear component values and set state to Inactive
187
204
  entity.setValue(CameraSource, 'stream', null);
188
205
  entity.setValue(CameraSource, 'videoElement', null);
189
206
  entity.setValue(CameraSource, 'texture', null);
190
- entity.setValue(CameraSource, 'state', CameraState.Inactive);
207
+ }
208
+ stopAllCameras() {
209
+ for (const entity of this.queries.cameras.entities) {
210
+ this.stopCamera(entity);
211
+ }
212
+ }
213
+ beginOperation(entity) {
214
+ var _a;
215
+ const operationId = ((_a = this.operationIds.get(entity)) !== null && _a !== void 0 ? _a : 0) + 1;
216
+ this.operationIds.set(entity, operationId);
217
+ return operationId;
218
+ }
219
+ isCurrentStart(entity, operationId) {
220
+ return (this.operationIds.get(entity) === operationId &&
221
+ entity.getValue(CameraSource, 'state') === CameraState.Starting);
191
222
  }
192
223
  /**
193
224
  * Clean up camera resources (stream, video element, texture)
@@ -1 +1 @@
1
- {"version":3,"file":"camera-system.js","sources":["../../src/camera/camera-system.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"camera-system.js","sources":["../../src/camera/camera-system.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -35,6 +35,11 @@ export declare class CameraUtils {
35
35
  * Check if camera permission is granted (doesn't request)
36
36
  */
37
37
  static hasPermission(): Promise<boolean>;
38
+ /**
39
+ * Restart a camera source after changing its configuration or handling an
40
+ * error. CameraSystem releases the previous resources before starting again.
41
+ */
42
+ static restart(entity: Entity): void;
38
43
  /**
39
44
  * Capture current video frame as a canvas
40
45
  * Returns canvas at full video resolution, ready for processing
@@ -1 +1 @@
1
- {"version":3,"file":"camera-utils.d.ts","sourceRoot":"","sources":["../../src/camera/camera-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,aAAa,CAAmC;IAE/D;;;;;;;;;;;;;OAaG;WACU,UAAU,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAoDrE;;OAEG;IACH,MAAM,CAAC,YAAY,CACjB,OAAO,EAAE,gBAAgB,EAAE,EAC3B,MAAM,EAAE,gBAAgB,GACvB,gBAAgB,GAAG,IAAI;IAI1B;;OAEG;WACU,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAY9C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;CA+B9D"}
1
+ {"version":3,"file":"camera-utils.d.ts","sourceRoot":"","sources":["../../src/camera/camera-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,aAAa,CAAmC;IAE/D;;;;;;;;;;;;;OAaG;WACU,UAAU,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAoDrE;;OAEG;IACH,MAAM,CAAC,YAAY,CACjB,OAAO,EAAE,gBAAgB,EAAE,EAC3B,MAAM,EAAE,gBAAgB,GACvB,gBAAgB,GAAG,IAAI;IAI1B;;OAEG;WACU,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAY9C;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIpC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;CA+B9D"}
@@ -1,5 +1,5 @@
1
1
  import { CameraSource } from './camera-source.js';
2
- import { CameraFacing } from './types.js';
2
+ import { CameraFacing, CameraState } from './types.js';
3
3
 
4
4
  /**
5
5
  * Copyright (c) Meta Platforms, Inc. and affiliates.
@@ -89,6 +89,13 @@ class CameraUtils {
89
89
  return false;
90
90
  }
91
91
  }
92
+ /**
93
+ * Restart a camera source after changing its configuration or handling an
94
+ * error. CameraSystem releases the previous resources before starting again.
95
+ */
96
+ static restart(entity) {
97
+ entity.setValue(CameraSource, 'state', CameraState.Inactive);
98
+ }
92
99
  /**
93
100
  * Capture current video frame as a canvas
94
101
  * Returns canvas at full video resolution, ready for processing
@@ -1 +1 @@
1
- {"version":3,"file":"camera-utils.js","sources":["../../src/camera/camera-utils.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"camera-utils.js","sources":["../../src/camera/camera-utils.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -107,6 +107,7 @@ export declare class DepthSensingSystem extends DepthSensingSystem_base {
107
107
  private depthFeatureEnabled;
108
108
  cpuDepthData: XRCPUDepthInformation[];
109
109
  gpuDepthData: XRWebGLDepthInformation[];
110
+ private hasCurrentFrameDepthData;
110
111
  private depthTextures?;
111
112
  private entityShaderMap;
112
113
  private readonly viewportSize;
@@ -123,6 +124,8 @@ export declare class DepthSensingSystem extends DepthSensingSystem_base {
123
124
  */
124
125
  private attachOcclusionToEntity;
125
126
  private detachOcclusionFromEntity;
127
+ private clearOcclusionUniforms;
128
+ private clearAllOcclusionUniforms;
126
129
  /**
127
130
  * Modifies a material's shader in-place to incorporate inline depth-based
128
131
  * occlusion. Compares the virtual fragment's view-space depth against the
@@ -1 +1 @@
1
- {"version":3,"file":"depth-sensing-system.d.ts","sourceRoot":"","sources":["../../src/depth/depth-sensing-system.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiB5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,kBAAmB,SAAQ,uBAUvC;IACC,OAAO,CAAC,mBAAmB,CAAsB;IAGjD,YAAY,EAAE,qBAAqB,EAAE,CAAM;IAC3C,YAAY,EAAE,uBAAuB,EAAE,CAAM;IAC7C,OAAO,CAAC,aAAa,CAAC,CAAgB;IAGtC,OAAO,CAAC,eAAe,CAA0C;IACjE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiB;IAC9C,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,iBAAiB,CAAK;IAE9B;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,CAO7B;IAED,IAAI,IAAI,IAAI;IAiEZ,OAAO,CAAC,uBAAuB;IAI/B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAwC/B,OAAO,CAAC,yBAAyB;IAIjC;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAsInC,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,qBAAqB;IAe7B,MAAM,IAAI,IAAI;IAgBd;;;;OAIG;IACH,OAAO,KAAK,UAAU,GAGrB;IAED,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,sBAAsB;IA8C9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAgCxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAuChC"}
1
+ {"version":3,"file":"depth-sensing-system.d.ts","sourceRoot":"","sources":["../../src/depth/depth-sensing-system.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiB5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,kBAAmB,SAAQ,uBAUvC;IACC,OAAO,CAAC,mBAAmB,CAAsB;IAGjD,YAAY,EAAE,qBAAqB,EAAE,CAAM;IAC3C,YAAY,EAAE,uBAAuB,EAAE,CAAM;IAC7C,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,aAAa,CAAC,CAAgB;IAGtC,OAAO,CAAC,eAAe,CAA0C;IACjE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiB;IAC9C,OAAO,CAAC,iBAAiB,CAAC,CAAyB;IACnD,OAAO,CAAC,iBAAiB,CAAK;IAE9B;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,CAO7B;IAED,IAAI,IAAI,IAAI;IAmEZ,OAAO,CAAC,uBAAuB;IAI/B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAwC/B,OAAO,CAAC,yBAAyB;IAUjC,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,yBAAyB;IAMjC;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAsInC,OAAO,CAAC,OAAO;IAgBf,OAAO,CAAC,qBAAqB;IAe7B,MAAM,IAAI,IAAI;IA8Bd;;;;OAIG;IACH,OAAO,KAAK,UAAU,GAGrB;IAED,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,sBAAsB;IA8C9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4CxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAwChC"}