@miris-inc/core 0.0.8-9b42582 → 0.0.8-9c5b021

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/dist/AquaApi.wasm CHANGED
Binary file
Binary file
package/dist/core.d.ts CHANGED
@@ -7,10 +7,34 @@ declare interface AttributeInfo extends EmbindObject {
7
7
  readonly maxValue: { x: number; y: number; z: number };
8
8
  }
9
9
 
10
+ export declare class AttributeNames {
11
+ static readonly SPARK_PACKED_SPLAT: string;
12
+ static readonly SPARK_EXTENDED_SPLAT_LOW: string;
13
+ static readonly SPARK_EXTENDED_SPLAT_HIGH: string;
14
+ static readonly SPARK_PACKED_SH1: string;
15
+ static readonly SPARK_PACKED_SH2: string;
16
+ static readonly SPARK_PACKED_SH3: string;
17
+ static readonly SPARK_EXTENDED_SH1: string;
18
+ static readonly SPARK_EXTENDED_SH2: string;
19
+ static readonly SPARK_EXTENDED_SH3_A: string;
20
+ static readonly SPARK_EXTENDED_SH3_B: string;
21
+ static readonly UNUSED: string;
22
+ static readonly SHARK_ELLIPSOIDS: string;
23
+ static readonly SHARK_SPHERICAL_HARMONICS: string;
24
+ static readonly OCTANT_OFFSETS: string;
25
+ }
26
+
27
+ declare type CachedAttribute = {
28
+ paddedData: Uint32Array<ArrayBuffer>;
29
+ originalSizeInUints: number;
30
+ };
31
+
10
32
  export declare class Camera {
11
33
  #private;
12
34
  readonly id: number;
13
35
  update(): void;
36
+ get viewportHeight(): number;
37
+ set viewportHeight(viewportHeight: number);
14
38
  get aspect(): number;
15
39
  set aspect(aspect: number);
16
40
  get fov(): number;
@@ -24,7 +48,7 @@ export declare class Camera {
24
48
  readonly engine: Engine;
25
49
  readonly miris: Miris;
26
50
  readonly scene: Scene;
27
- constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
51
+ constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
28
52
  }
29
53
 
30
54
  export declare type CameraInit = {
@@ -34,6 +58,7 @@ export declare type CameraInit = {
34
58
  far: number;
35
59
  matrix: Matrix4x4Tuple;
36
60
  scene: Scene;
61
+ viewportHeight?: number;
37
62
  };
38
63
 
39
64
  export declare class Change {
@@ -43,7 +68,7 @@ export declare class Change {
43
68
  }
44
69
 
45
70
  export declare type ChangeInit = {
46
- type: "created" | "activated" | "modified" | "deactivated" | "deleted";
71
+ type: "created" | "activated" | "modified" | "deactivated" | "deleted" | "remasked";
47
72
  lod: Lod;
48
73
  };
49
74
 
@@ -60,6 +85,7 @@ declare class Client {
60
85
  getAssetsAsync(...args: ClientMethodParameters["getAssetsAsync"]): AssetInfo[];
61
86
  getAttribute(...args: ClientMethodParameters["getAttribute"]): AquaStatus;
62
87
  getDefaultCameraId(...args: ClientMethodParameters["getDefaultCameraId"]): number;
88
+ getViewingVolumeId(...args: ClientMethodParameters["getViewingVolumeId"]): number;
63
89
  getLocalBoundingBox(...args: ClientMethodParameters["getLocalBoundingBox"]): AquaStatus;
64
90
  getWorldBoundingBox(...args: ClientMethodParameters["getWorldBoundingBox"]): AquaStatus;
65
91
  getLodIndex(...args: ClientMethodParameters["getLodIndex"]): number;
@@ -68,6 +94,7 @@ declare class Client {
68
94
  getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
69
95
  getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
70
96
  getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
97
+ getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
71
98
  getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
72
99
  getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
73
100
  hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
@@ -140,6 +167,8 @@ declare class Engine {
140
167
  };
141
168
  static Feature: {
142
169
  readonly DrMap: 0;
170
+ readonly ReflMesh: 1;
171
+ readonly GlassMesh: 2;
143
172
  };
144
173
  static FeatureState: {
145
174
  readonly NotLoaded: 0;
@@ -187,6 +216,8 @@ declare class Engine {
187
216
  deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
188
217
  dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
189
218
  deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
219
+ remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
220
+ getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
190
221
  destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
191
222
  free(...args: [size: number]): number;
192
223
  getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
@@ -197,6 +228,7 @@ declare class Engine {
197
228
  attributeInfo: AttributeInfo
198
229
  ]): AquaStatus;
199
230
  getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
231
+ getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
200
232
  getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
201
233
  getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
202
234
  getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
@@ -245,17 +277,15 @@ declare class Engine {
245
277
  removeStream(...args: [handle: AquaClientHandle, streamObjectId: number]): boolean;
246
278
  setAssetViewerKey(...args: [handle: AquaClientHandle, key: string]): AquaStatus;
247
279
  setClientSpatialFormat(...args: [handle: AquaClientHandle, spatialFormat: SpatialFormat]): AquaStatus;
248
- setRuntimeSettings(...args: [
249
- handle: AquaClientHandle,
250
- settings: RuntimeSettings
251
- ]): AquaStatus;
280
+ setRuntimeSettings(...args: [handle: AquaClientHandle, settings: RuntimeSettings]): AquaStatus;
252
281
  setMainCameraTransform(...args: [handle: AquaClientHandle, cameraTransform: number]): AquaStatus;
253
282
  setMainCameraViewFrustum(...args: [
254
283
  handle: AquaClientHandle,
255
284
  aspectRatio: number,
256
285
  verticalFov: number,
257
286
  nearPlane: number,
258
- farPlane: number
287
+ farPlane: number,
288
+ viewportHeightPixels: number
259
289
  ]): AquaStatus;
260
290
  setMaxCacheSize(...args: [maxSizeBytes: number]): void;
261
291
  setSceneObjectTransform(...args: [
@@ -266,14 +296,8 @@ declare class Engine {
266
296
  hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
267
297
  getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
268
298
  getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
269
- getName(...args: [
270
- handle: AquaClientHandle,
271
- sceneObjectId: number
272
- ]): string;
273
- setVariantSelection(...args: [
274
- handle: AquaClientHandle,
275
- sceneObjectId: number
276
- ]): AquaStatus;
299
+ getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
300
+ setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
277
301
  takeAttribute(...args: [
278
302
  handle: AquaClientHandle,
279
303
  sceneObjectId: number,
@@ -303,41 +327,46 @@ export declare class Lod {
303
327
  #private;
304
328
  readonly id: LodInit["id"];
305
329
  readonly store: LodStore;
306
- useExtSplats: boolean;
307
- splatsExtendedData: Uint32Array<ArrayBuffer> | null;
308
- sh1Data: Uint32Array<ArrayBuffer> | null;
309
- sh1Max: number;
310
- sh2Data: Uint32Array<ArrayBuffer> | null;
311
- sh2Max: number;
312
- sh3Data: Uint32Array<ArrayBuffer> | null;
313
- sh3Max: number;
314
- sh3ExtendedData: Uint32Array<ArrayBuffer> | null;
315
330
  get key(): unknown;
316
331
  set key(key: unknown);
317
332
  readonly modelRoot: ModelRoot;
318
- set splats(splats: Uint32Array<ArrayBuffer> | null);
319
- get splats(): Uint32Array<ArrayBuffer> | null;
320
333
  set bounds(bounds: Float32Array<ArrayBuffer> | null);
334
+ /**
335
+ * Retrieves the cached world bounds of this object
336
+ *
337
+ * @deprecated Retrieve the local bounds and transform as needed
338
+ */
321
339
  get bounds(): Float32Array<ArrayBuffer> | null;
322
- /* Excluded from this release type: _boundsStreamSpace */
323
- /* Excluded from this release type: _boundsStreamSpace */
340
+ /**
341
+ * Sets the local bounds of this lod
342
+ */
343
+ set localBounds(bounds: Float32Array<ArrayBuffer> | null);
344
+ /**
345
+ * Retrieves the local bounds of this lod
346
+ */
347
+ get localBounds(): Float32Array<ArrayBuffer> | null;
324
348
  set lodIndex(index: number);
325
349
  get lodIndex(): number | null;
326
- set paddingCount(count: number);
327
- get paddingCount(): number;
350
+ set paddingSplatsCount(count: number);
351
+ get paddingSplatsCount(): number;
328
352
  set transform(transform: Float32Array<ArrayBuffer> | null);
329
353
  get transform(): Float32Array<ArrayBuffer> | null;
330
- setSh1(sh1Data: Uint32Array<ArrayBuffer>, sh1Max: number): void;
331
- setSh2(sh2Data: Uint32Array<ArrayBuffer>, sh2Max: number): void;
332
- setSh3(sh3Data: Uint32Array<ArrayBuffer>, sh3Max: number): void;
354
+ get _drawnOctantMask(): number;
355
+ set _drawnOctantMask(mask: number);
356
+ get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
357
+ get _hasOctantOffsets(): boolean;
358
+ _readOctantOffsets(engine: Engine): void;
359
+ hasAttribute(attributeName: string): boolean;
360
+ getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
333
361
  dispose(): void;
334
- constructor({ id, modelRoot, lodStore }: LodInit);
362
+ constructor({ id, modelRoot, lodStore, client }: LodInit);
335
363
  }
336
364
 
337
365
  export declare type LodInit = {
338
366
  id: number;
339
367
  modelRoot: ModelRoot;
340
368
  lodStore: LodStore;
369
+ client: Client;
341
370
  };
342
371
 
343
372
  export declare class LodStore {
@@ -378,7 +407,9 @@ declare interface MainModule {
378
407
  createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
379
408
  dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
380
409
  deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
410
+ remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
381
411
  deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
412
+ GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
382
413
  GetAssetsAsync(handle: number, tags: StringVector): unknown[];
383
414
  GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
384
415
  GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
@@ -406,6 +437,7 @@ declare interface MainModule {
406
437
  */
407
438
  export declare class Miris {
408
439
  #private;
440
+ static tryUseShark: boolean;
409
441
  static _instance: Miris;
410
442
  static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
411
443
  readonly engine: Engine;
@@ -415,10 +447,23 @@ export declare class Miris {
415
447
  get viewerKey(): string | null | undefined;
416
448
  set viewerKey(viewerKey: string | null | undefined);
417
449
  get scenes(): Set<Scene>;
450
+ get useSphericalHarmonics(): boolean;
451
+ set useSphericalHarmonics(value: boolean);
418
452
  constructor();
419
453
  dispose(): void;
420
454
  updateParentedTransform(_modelTransform: Float32Array<ArrayBuffer>, _parentTransform: Float32Array<ArrayBuffer>): Float32Array<ArrayBuffer> | undefined;
455
+ protected _xrModeActive: boolean;
456
+ protected _xrSession: XRSession | null;
457
+ protected _requestAnimationFrame: RequestAnimationFrameFn | null;
458
+ signalResumeFromIdle(): void;
459
+ get _splatCountBudget(): number;
460
+ /**
461
+ * Why 43? Because the AVP throttles down to 45Hz :(
462
+ */
463
+ static readonly _XR_TARGET_FRAME_RATE = 43;
464
+ /* Excluded from this release type: _setTargetFrameRate */
421
465
  /* Excluded from this release type: _setXRModeActive */
466
+ /* Excluded from this release type: _setSplatCountBudgetOverride */
422
467
  /* Excluded from this release type: _update */
423
468
  getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
424
469
  getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
@@ -451,11 +496,14 @@ export declare type ModelRootInit = {
451
496
  stream: Stream;
452
497
  };
453
498
 
499
+ declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
500
+
454
501
  declare interface RuntimeSettings extends EmbindObject {
455
502
  maxBandwidthBitsPerSecond: number;
456
503
  maxConcurrentRequests: number;
457
504
  targetFramesPerSecond: number;
458
505
  xrModeActive: boolean;
506
+ splatCountBudget: number;
459
507
  }
460
508
 
461
509
  export declare class Scene extends EventTarget {
@@ -477,6 +525,7 @@ export declare class Scene extends EventTarget {
477
525
  readonly handle?: number;
478
526
  constructor({ miris, viewerKey }: SceneInit);
479
527
  dispose(): void;
528
+ /* Excluded from this release type: _getViewingVolumeObb */
480
529
  fetchAssets(tags?: string | Iterable<string>): Promise<{
481
530
  name: string;
482
531
  thumbnailUrl: string;
@@ -488,6 +537,7 @@ export declare class Scene extends EventTarget {
488
537
  getStreamForId(streamObjectId: number): Stream | undefined;
489
538
  getStreamForDescendentId(descendentObjectId: number): Stream | null;
490
539
  getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
540
+ /* Excluded from this release type: _getFeatureMesh */
491
541
  /* Excluded from this release type: _getDrMap */
492
542
  /* Excluded from this release type: _onFeatureData */
493
543
  /* Excluded from this release type: _onSceneLoaded */
@@ -501,6 +551,7 @@ declare interface SceneChangeIds extends EmbindObject {
501
551
  readonly modifiedObjectsCount: number;
502
552
  readonly deactivatedObjectsCount: number;
503
553
  readonly deletedObjectsCount: number;
554
+ readonly remaskedObjectsCount: number;
504
555
  }
505
556
 
506
557
  export declare type SceneInit = {
@@ -512,6 +563,13 @@ declare interface SceneMetadata extends EmbindObject {
512
563
  readonly inputColorSpace: string;
513
564
  }
514
565
 
566
+ declare type SparkAttributeInfo = {
567
+ elementsPerSplat: number;
568
+ discard: boolean;
569
+ };
570
+
571
+ export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
572
+
515
573
  declare interface SpatialFormat extends EmbindObject {
516
574
  metersPerUnit: number;
517
575
  upAxis: number;
@@ -539,6 +597,8 @@ export declare class Stream extends EventTarget {
539
597
  set key(key: unknown);
540
598
  get matrix(): Matrix4x4Tuple;
541
599
  set matrix(matrix: Matrix4x4Tuple);
600
+ get opacity(): number;
601
+ set opacity(opacity: number);
542
602
  get boundingBox(): {
543
603
  min: {
544
604
  x: number;