@miris-inc/core 0.0.8-e6a4189 → 0.0.8-e6a94a6

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,6 +7,28 @@ 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;
@@ -43,7 +65,7 @@ export declare class Change {
43
65
  }
44
66
 
45
67
  export declare type ChangeInit = {
46
- type: "created" | "activated" | "modified" | "deactivated" | "deleted";
68
+ type: "created" | "activated" | "modified" | "deactivated" | "deleted" | "remasked";
47
69
  lod: Lod;
48
70
  };
49
71
 
@@ -60,6 +82,7 @@ declare class Client {
60
82
  getAssetsAsync(...args: ClientMethodParameters["getAssetsAsync"]): AssetInfo[];
61
83
  getAttribute(...args: ClientMethodParameters["getAttribute"]): AquaStatus;
62
84
  getDefaultCameraId(...args: ClientMethodParameters["getDefaultCameraId"]): number;
85
+ getViewingVolumeId(...args: ClientMethodParameters["getViewingVolumeId"]): number;
63
86
  getLocalBoundingBox(...args: ClientMethodParameters["getLocalBoundingBox"]): AquaStatus;
64
87
  getWorldBoundingBox(...args: ClientMethodParameters["getWorldBoundingBox"]): AquaStatus;
65
88
  getLodIndex(...args: ClientMethodParameters["getLodIndex"]): number;
@@ -68,6 +91,7 @@ declare class Client {
68
91
  getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
69
92
  getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
70
93
  getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
94
+ getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
71
95
  getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
72
96
  getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
73
97
  hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
@@ -140,6 +164,8 @@ declare class Engine {
140
164
  };
141
165
  static Feature: {
142
166
  readonly DrMap: 0;
167
+ readonly ReflMesh: 1;
168
+ readonly GlassMesh: 2;
143
169
  };
144
170
  static FeatureState: {
145
171
  readonly NotLoaded: 0;
@@ -187,6 +213,8 @@ declare class Engine {
187
213
  deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
188
214
  dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
189
215
  deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
216
+ remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
217
+ getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
190
218
  destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
191
219
  free(...args: [size: number]): number;
192
220
  getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
@@ -197,6 +225,7 @@ declare class Engine {
197
225
  attributeInfo: AttributeInfo
198
226
  ]): AquaStatus;
199
227
  getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
228
+ getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
200
229
  getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
201
230
  getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
202
231
  getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
@@ -245,10 +274,7 @@ declare class Engine {
245
274
  removeStream(...args: [handle: AquaClientHandle, streamObjectId: number]): boolean;
246
275
  setAssetViewerKey(...args: [handle: AquaClientHandle, key: string]): AquaStatus;
247
276
  setClientSpatialFormat(...args: [handle: AquaClientHandle, spatialFormat: SpatialFormat]): AquaStatus;
248
- setRuntimeSettings(...args: [
249
- handle: AquaClientHandle,
250
- settings: RuntimeSettings
251
- ]): AquaStatus;
277
+ setRuntimeSettings(...args: [handle: AquaClientHandle, settings: RuntimeSettings]): AquaStatus;
252
278
  setMainCameraTransform(...args: [handle: AquaClientHandle, cameraTransform: number]): AquaStatus;
253
279
  setMainCameraViewFrustum(...args: [
254
280
  handle: AquaClientHandle,
@@ -266,14 +292,8 @@ declare class Engine {
266
292
  hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
267
293
  getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
268
294
  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;
295
+ getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
296
+ setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
277
297
  takeAttribute(...args: [
278
298
  handle: AquaClientHandle,
279
299
  sceneObjectId: number,
@@ -303,41 +323,46 @@ export declare class Lod {
303
323
  #private;
304
324
  readonly id: LodInit["id"];
305
325
  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
326
  get key(): unknown;
316
327
  set key(key: unknown);
317
328
  readonly modelRoot: ModelRoot;
318
- set splats(splats: Uint32Array<ArrayBuffer> | null);
319
- get splats(): Uint32Array<ArrayBuffer> | null;
320
329
  set bounds(bounds: Float32Array<ArrayBuffer> | null);
330
+ /**
331
+ * Retrieves the cached world bounds of this object
332
+ *
333
+ * @deprecated Retrieve the local bounds and transform as needed
334
+ */
321
335
  get bounds(): Float32Array<ArrayBuffer> | null;
322
- /* Excluded from this release type: _boundsStreamSpace */
323
- /* Excluded from this release type: _boundsStreamSpace */
336
+ /**
337
+ * Sets the local bounds of this lod
338
+ */
339
+ set localBounds(bounds: Float32Array<ArrayBuffer> | null);
340
+ /**
341
+ * Retrieves the local bounds of this lod
342
+ */
343
+ get localBounds(): Float32Array<ArrayBuffer> | null;
324
344
  set lodIndex(index: number);
325
345
  get lodIndex(): number | null;
326
- set paddingCount(count: number);
327
- get paddingCount(): number;
346
+ set paddingSplatsCount(count: number);
347
+ get paddingSplatsCount(): number;
328
348
  set transform(transform: Float32Array<ArrayBuffer> | null);
329
349
  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;
350
+ get _drawnOctantMask(): number;
351
+ set _drawnOctantMask(mask: number);
352
+ get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
353
+ get _hasOctantOffsets(): boolean;
354
+ _readOctantOffsets(engine: Engine): void;
355
+ hasAttribute(attributeName: string): boolean;
356
+ getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
333
357
  dispose(): void;
334
- constructor({ id, modelRoot, lodStore }: LodInit);
358
+ constructor({ id, modelRoot, lodStore, client }: LodInit);
335
359
  }
336
360
 
337
361
  export declare type LodInit = {
338
362
  id: number;
339
363
  modelRoot: ModelRoot;
340
364
  lodStore: LodStore;
365
+ client: Client;
341
366
  };
342
367
 
343
368
  export declare class LodStore {
@@ -378,7 +403,9 @@ declare interface MainModule {
378
403
  createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
379
404
  dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
380
405
  deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
406
+ remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
381
407
  deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
408
+ GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
382
409
  GetAssetsAsync(handle: number, tags: StringVector): unknown[];
383
410
  GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
384
411
  GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
@@ -406,6 +433,7 @@ declare interface MainModule {
406
433
  */
407
434
  export declare class Miris {
408
435
  #private;
436
+ static tryUseShark: boolean;
409
437
  static _instance: Miris;
410
438
  static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
411
439
  readonly engine: Engine;
@@ -415,10 +443,22 @@ export declare class Miris {
415
443
  get viewerKey(): string | null | undefined;
416
444
  set viewerKey(viewerKey: string | null | undefined);
417
445
  get scenes(): Set<Scene>;
446
+ get useSphericalHarmonics(): boolean;
447
+ set useSphericalHarmonics(value: boolean);
418
448
  constructor();
419
449
  dispose(): void;
420
450
  updateParentedTransform(_modelTransform: Float32Array<ArrayBuffer>, _parentTransform: Float32Array<ArrayBuffer>): Float32Array<ArrayBuffer> | undefined;
451
+ protected _xrModeActive: boolean;
452
+ protected _xrSession: XRSession | null;
453
+ protected _requestAnimationFrame: RequestAnimationFrameFn | null;
454
+ signalResumeFromIdle(): void;
455
+ /**
456
+ * Why 43? Because the AVP throttles down to 45Hz :(
457
+ */
458
+ static readonly _XR_TARGET_FRAME_RATE = 43;
459
+ /* Excluded from this release type: _setTargetFrameRate */
421
460
  /* Excluded from this release type: _setXRModeActive */
461
+ /* Excluded from this release type: _setSplatCountBudgetOverride */
422
462
  /* Excluded from this release type: _update */
423
463
  getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
424
464
  getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
@@ -451,11 +491,14 @@ export declare type ModelRootInit = {
451
491
  stream: Stream;
452
492
  };
453
493
 
494
+ declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
495
+
454
496
  declare interface RuntimeSettings extends EmbindObject {
455
497
  maxBandwidthBitsPerSecond: number;
456
498
  maxConcurrentRequests: number;
457
499
  targetFramesPerSecond: number;
458
500
  xrModeActive: boolean;
501
+ splatCountBudget: number;
459
502
  }
460
503
 
461
504
  export declare class Scene extends EventTarget {
@@ -477,6 +520,7 @@ export declare class Scene extends EventTarget {
477
520
  readonly handle?: number;
478
521
  constructor({ miris, viewerKey }: SceneInit);
479
522
  dispose(): void;
523
+ /* Excluded from this release type: _getViewingVolumeObb */
480
524
  fetchAssets(tags?: string | Iterable<string>): Promise<{
481
525
  name: string;
482
526
  thumbnailUrl: string;
@@ -488,6 +532,7 @@ export declare class Scene extends EventTarget {
488
532
  getStreamForId(streamObjectId: number): Stream | undefined;
489
533
  getStreamForDescendentId(descendentObjectId: number): Stream | null;
490
534
  getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
535
+ /* Excluded from this release type: _getFeatureMesh */
491
536
  /* Excluded from this release type: _getDrMap */
492
537
  /* Excluded from this release type: _onFeatureData */
493
538
  /* Excluded from this release type: _onSceneLoaded */
@@ -501,6 +546,7 @@ declare interface SceneChangeIds extends EmbindObject {
501
546
  readonly modifiedObjectsCount: number;
502
547
  readonly deactivatedObjectsCount: number;
503
548
  readonly deletedObjectsCount: number;
549
+ readonly remaskedObjectsCount: number;
504
550
  }
505
551
 
506
552
  export declare type SceneInit = {
@@ -512,6 +558,13 @@ declare interface SceneMetadata extends EmbindObject {
512
558
  readonly inputColorSpace: string;
513
559
  }
514
560
 
561
+ declare type SparkAttributeInfo = {
562
+ elementsPerSplat: number;
563
+ discard: boolean;
564
+ };
565
+
566
+ export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
567
+
515
568
  declare interface SpatialFormat extends EmbindObject {
516
569
  metersPerUnit: number;
517
570
  upAxis: number;
@@ -539,6 +592,8 @@ export declare class Stream extends EventTarget {
539
592
  set key(key: unknown);
540
593
  get matrix(): Matrix4x4Tuple;
541
594
  set matrix(matrix: Matrix4x4Tuple);
595
+ get opacity(): number;
596
+ set opacity(opacity: number);
542
597
  get boundingBox(): {
543
598
  min: {
544
599
  x: number;