@miris-inc/core 0.0.8-3aa0e78 → 0.0.8-3d45357

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,36 @@ 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_ELLIPSOIDS_COMPRESSED: string;
24
+ static readonly SHARK_SPHERICAL_HARMONICS: string;
25
+ static readonly COLOR: string;
26
+ static readonly OCTANT_OFFSETS: string;
27
+ }
28
+
29
+ declare type CachedAttribute = {
30
+ paddedData: Uint32Array<ArrayBuffer>;
31
+ originalSizeInUints: number;
32
+ };
33
+
10
34
  export declare class Camera {
11
35
  #private;
12
36
  readonly id: number;
13
37
  update(): void;
38
+ get viewportHeight(): number;
39
+ set viewportHeight(viewportHeight: number);
14
40
  get aspect(): number;
15
41
  set aspect(aspect: number);
16
42
  get fov(): number;
@@ -24,7 +50,7 @@ export declare class Camera {
24
50
  readonly engine: Engine;
25
51
  readonly miris: Miris;
26
52
  readonly scene: Scene;
27
- constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
53
+ constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
28
54
  }
29
55
 
30
56
  export declare type CameraInit = {
@@ -34,6 +60,7 @@ export declare type CameraInit = {
34
60
  far: number;
35
61
  matrix: Matrix4x4Tuple;
36
62
  scene: Scene;
63
+ viewportHeight?: number;
37
64
  };
38
65
 
39
66
  export declare class Change {
@@ -43,7 +70,7 @@ export declare class Change {
43
70
  }
44
71
 
45
72
  export declare type ChangeInit = {
46
- type: "created" | "activated" | "modified" | "deactivated" | "deleted";
73
+ type: "created" | "activated" | "modified" | "deactivated" | "deleted" | "remasked";
47
74
  lod: Lod;
48
75
  };
49
76
 
@@ -56,11 +83,11 @@ declare class Client {
56
83
  constructor({ engine, context }: ClientInit);
57
84
  dispose(): void;
58
85
  addStreamById(...args: ClientMethodParameters["addStreamById"]): number;
59
- addPrefetchStreamById(...args: ClientMethodParameters["addPrefetchStreamById"]): number;
60
86
  destroyClient(...args: ClientMethodParameters["destroyClient"]): AquaStatus;
61
87
  getAssetsAsync(...args: ClientMethodParameters["getAssetsAsync"]): AssetInfo[];
62
88
  getAttribute(...args: ClientMethodParameters["getAttribute"]): AquaStatus;
63
89
  getDefaultCameraId(...args: ClientMethodParameters["getDefaultCameraId"]): number;
90
+ getViewingVolumeId(...args: ClientMethodParameters["getViewingVolumeId"]): number;
64
91
  getLocalBoundingBox(...args: ClientMethodParameters["getLocalBoundingBox"]): AquaStatus;
65
92
  getWorldBoundingBox(...args: ClientMethodParameters["getWorldBoundingBox"]): AquaStatus;
66
93
  getLodIndex(...args: ClientMethodParameters["getLodIndex"]): number;
@@ -69,6 +96,7 @@ declare class Client {
69
96
  getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
70
97
  getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
71
98
  getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
99
+ getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
72
100
  getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
73
101
  getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
74
102
  hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
@@ -182,13 +210,6 @@ declare class Engine {
182
210
  assetId: string,
183
211
  doNotRefine: boolean
184
212
  ]): number;
185
- addPrefetchStreamById(...args: [
186
- handle: AquaClientHandle,
187
- streamName: string,
188
- assetId: string,
189
- maxPrefetchDepth: number,
190
- keepPrefetch: boolean
191
- ]): number;
192
213
  allocateSceneChangesArrays(...args: [sceneChangeIds: SceneChangeIds]): void;
193
214
  createContext(...args: []): AquaContextHandle;
194
215
  destroyContext(...args: [handle: AquaContextHandle]): AquaStatus;
@@ -197,6 +218,8 @@ declare class Engine {
197
218
  deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
198
219
  dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
199
220
  deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
221
+ remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
222
+ getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
200
223
  destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
201
224
  free(...args: [size: number]): number;
202
225
  getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
@@ -207,6 +230,7 @@ declare class Engine {
207
230
  attributeInfo: AttributeInfo
208
231
  ]): AquaStatus;
209
232
  getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
233
+ getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
210
234
  getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
211
235
  getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
212
236
  getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
@@ -255,17 +279,15 @@ declare class Engine {
255
279
  removeStream(...args: [handle: AquaClientHandle, streamObjectId: number]): boolean;
256
280
  setAssetViewerKey(...args: [handle: AquaClientHandle, key: string]): AquaStatus;
257
281
  setClientSpatialFormat(...args: [handle: AquaClientHandle, spatialFormat: SpatialFormat]): AquaStatus;
258
- setRuntimeSettings(...args: [
259
- handle: AquaClientHandle,
260
- settings: RuntimeSettings
261
- ]): AquaStatus;
282
+ setRuntimeSettings(...args: [handle: AquaClientHandle, settings: RuntimeSettings]): AquaStatus;
262
283
  setMainCameraTransform(...args: [handle: AquaClientHandle, cameraTransform: number]): AquaStatus;
263
284
  setMainCameraViewFrustum(...args: [
264
285
  handle: AquaClientHandle,
265
286
  aspectRatio: number,
266
287
  verticalFov: number,
267
288
  nearPlane: number,
268
- farPlane: number
289
+ farPlane: number,
290
+ viewportHeightPixels: number
269
291
  ]): AquaStatus;
270
292
  setMaxCacheSize(...args: [maxSizeBytes: number]): void;
271
293
  setSceneObjectTransform(...args: [
@@ -276,14 +298,8 @@ declare class Engine {
276
298
  hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
277
299
  getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
278
300
  getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
279
- getName(...args: [
280
- handle: AquaClientHandle,
281
- sceneObjectId: number
282
- ]): string;
283
- setVariantSelection(...args: [
284
- handle: AquaClientHandle,
285
- sceneObjectId: number
286
- ]): AquaStatus;
301
+ getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
302
+ setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
287
303
  takeAttribute(...args: [
288
304
  handle: AquaClientHandle,
289
305
  sceneObjectId: number,
@@ -313,25 +329,9 @@ export declare class Lod {
313
329
  #private;
314
330
  readonly id: LodInit["id"];
315
331
  readonly store: LodStore;
316
- useExtSplats: boolean;
317
- splatsExtendedData: Uint32Array<ArrayBuffer> | null;
318
- sh1Data: Uint32Array<ArrayBuffer> | null;
319
- sh1Max: number;
320
- sh2Data: Uint32Array<ArrayBuffer> | null;
321
- sh2Max: number;
322
- sh3Data: Uint32Array<ArrayBuffer> | null;
323
- sh3Max: number;
324
- sh3ExtendedData: Uint32Array<ArrayBuffer> | null;
325
332
  get key(): unknown;
326
333
  set key(key: unknown);
327
334
  readonly modelRoot: ModelRoot;
328
- set splats(splats: Uint32Array<ArrayBuffer> | null);
329
- get splats(): Uint32Array<ArrayBuffer> | null;
330
- /**
331
- * Sets the cached world bounds of this object
332
- *
333
- * @deprecated set the local bounds and transform as needed
334
- */
335
335
  set bounds(bounds: Float32Array<ArrayBuffer> | null);
336
336
  /**
337
337
  * Retrieves the cached world bounds of this object
@@ -349,21 +349,26 @@ export declare class Lod {
349
349
  get localBounds(): Float32Array<ArrayBuffer> | null;
350
350
  set lodIndex(index: number);
351
351
  get lodIndex(): number | null;
352
- set paddingCount(count: number);
353
- get paddingCount(): number;
352
+ set paddingSplatsCount(count: number);
353
+ get paddingSplatsCount(): number;
354
354
  set transform(transform: Float32Array<ArrayBuffer> | null);
355
355
  get transform(): Float32Array<ArrayBuffer> | null;
356
- setSh1(sh1Data: Uint32Array<ArrayBuffer>, sh1Max: number): void;
357
- setSh2(sh2Data: Uint32Array<ArrayBuffer>, sh2Max: number): void;
358
- setSh3(sh3Data: Uint32Array<ArrayBuffer>, sh3Max: number): void;
356
+ get _drawnOctantMask(): number;
357
+ set _drawnOctantMask(mask: number);
358
+ get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
359
+ get _hasOctantOffsets(): boolean;
360
+ _readOctantOffsets(engine: Engine): void;
361
+ hasAttribute(attributeName: string): boolean;
362
+ getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
359
363
  dispose(): void;
360
- constructor({ id, modelRoot, lodStore }: LodInit);
364
+ constructor({ id, modelRoot, lodStore, client }: LodInit);
361
365
  }
362
366
 
363
367
  export declare type LodInit = {
364
368
  id: number;
365
369
  modelRoot: ModelRoot;
366
370
  lodStore: LodStore;
371
+ client: Client;
367
372
  };
368
373
 
369
374
  export declare class LodStore {
@@ -404,7 +409,9 @@ declare interface MainModule {
404
409
  createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
405
410
  dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
406
411
  deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
412
+ remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
407
413
  deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
414
+ GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
408
415
  GetAssetsAsync(handle: number, tags: StringVector): unknown[];
409
416
  GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
410
417
  GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
@@ -432,6 +439,7 @@ declare interface MainModule {
432
439
  */
433
440
  export declare class Miris {
434
441
  #private;
442
+ static tryUseShark: boolean;
435
443
  static _instance: Miris;
436
444
  static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
437
445
  readonly engine: Engine;
@@ -450,6 +458,7 @@ export declare class Miris {
450
458
  protected _xrSession: XRSession | null;
451
459
  protected _requestAnimationFrame: RequestAnimationFrameFn | null;
452
460
  signalResumeFromIdle(): void;
461
+ get _splatCountBudget(): number;
453
462
  /**
454
463
  * Why 43? Because the AVP throttles down to 45Hz :(
455
464
  */
@@ -518,6 +527,7 @@ export declare class Scene extends EventTarget {
518
527
  readonly handle?: number;
519
528
  constructor({ miris, viewerKey }: SceneInit);
520
529
  dispose(): void;
530
+ /* Excluded from this release type: _getViewingVolumeObb */
521
531
  fetchAssets(tags?: string | Iterable<string>): Promise<{
522
532
  name: string;
523
533
  thumbnailUrl: string;
@@ -543,6 +553,7 @@ declare interface SceneChangeIds extends EmbindObject {
543
553
  readonly modifiedObjectsCount: number;
544
554
  readonly deactivatedObjectsCount: number;
545
555
  readonly deletedObjectsCount: number;
556
+ readonly remaskedObjectsCount: number;
546
557
  }
547
558
 
548
559
  export declare type SceneInit = {
@@ -554,6 +565,13 @@ declare interface SceneMetadata extends EmbindObject {
554
565
  readonly inputColorSpace: string;
555
566
  }
556
567
 
568
+ declare type SparkAttributeInfo = {
569
+ elementsPerSplat: number;
570
+ discard: boolean;
571
+ };
572
+
573
+ export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
574
+
557
575
  declare interface SpatialFormat extends EmbindObject {
558
576
  metersPerUnit: number;
559
577
  upAxis: number;
@@ -581,6 +599,8 @@ export declare class Stream extends EventTarget {
581
599
  set key(key: unknown);
582
600
  get matrix(): Matrix4x4Tuple;
583
601
  set matrix(matrix: Matrix4x4Tuple);
602
+ get opacity(): number;
603
+ set opacity(opacity: number);
584
604
  get boundingBox(): {
585
605
  min: {
586
606
  x: number;
@@ -609,7 +629,7 @@ export declare class Stream extends EventTarget {
609
629
  */
610
630
  get chunks(): Set<ModelRoot>;
611
631
  constructor(options: StreamInit);
612
- _initStream({ uuid, prefetch, prefetchMaxDepth, keepPrefetch }: StreamInit): void;
632
+ _initStream({ uuid }: StreamInit): void;
613
633
  /* Excluded from this release type: _onStreamLoaded */
614
634
  /* Excluded from this release type: _onRootLoaded */
615
635
  add(modelRoot: ModelRoot): void;
@@ -621,13 +641,6 @@ export declare type StreamInit = {
621
641
  scene: Scene;
622
642
  authToken?: string;
623
643
  drmKey?: string;
624
- /** When true the stream runs in prefetch-only mode: it downloads and caches
625
- * octree node data up to `prefetchMaxDepth` without rendering anything. */
626
- prefetch?: boolean;
627
- /** Maximum octree depth to prefetch. Set to -1 to disable prefetching. If omitted, defaults to 3 */
628
- prefetchMaxDepth?: number;
629
- /** Retain all prefetched data by the stream (make it non evictable) */
630
- keepPrefetch?: boolean;
631
644
  };
632
645
 
633
646
  declare type StringVector = EmbindVector<string>;