@miris-inc/core 0.0.8-14e5abe → 0.0.8-183de29

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
@@ -1,3 +1,8 @@
1
+ export declare const AssetFormat: {
2
+ readonly GaussianSplats: 1;
3
+ readonly GES: 2;
4
+ };
5
+
1
6
  declare interface AttributeInfo extends EmbindObject {
2
7
  readonly dataType: number;
3
8
  readonly componentCount: number;
@@ -20,7 +25,9 @@ export declare class AttributeNames {
20
25
  static readonly SPARK_EXTENDED_SH3_B: string;
21
26
  static readonly UNUSED: string;
22
27
  static readonly SHARK_ELLIPSOIDS: string;
28
+ static readonly SHARK_ELLIPSOIDS_COMPRESSED: string;
23
29
  static readonly SHARK_SPHERICAL_HARMONICS: string;
30
+ static readonly COLOR: string;
24
31
  static readonly OCTANT_OFFSETS: string;
25
32
  }
26
33
 
@@ -110,6 +117,7 @@ declare class Client {
110
117
  hasFeature(...args: ClientMethodParameters["hasFeature"]): boolean;
111
118
  getFeatureVersion(...args: ClientMethodParameters["getFeatureVersion"]): number;
112
119
  getFeatureState(...args: ClientMethodParameters["getFeatureState"]): number;
120
+ getAssetFormatVersion(...args: ClientMethodParameters["getAssetFormatVersion"]): number;
113
121
  getName(...args: ClientMethodParameters["getName"]): string;
114
122
  setVariantSelection(...args: ClientMethodParameters["setVariantSelection"]): AquaStatus;
115
123
  takeAttribute(...args: ClientMethodParameters["takeAttribute"]): AquaStatus;
@@ -117,7 +125,6 @@ declare class Client {
117
125
  takeRenderRequired(...args: ClientMethodParameters["takeRenderRequired"]): boolean;
118
126
  unlockScene(...args: ClientMethodParameters["unlockScene"]): boolean;
119
127
  updateSceneExecution(...args: ClientMethodParameters["updateSceneExecution"]): AquaStatus;
120
- recordFrameTime(...args: ClientMethodParameters["recordFrameTime"]): AquaStatus;
121
128
  }
122
129
 
123
130
  declare type ClientInit = {
@@ -227,8 +234,8 @@ declare class Engine {
227
234
  attributeName: string,
228
235
  attributeInfo: AttributeInfo
229
236
  ]): AquaStatus;
230
- getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
231
- getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
237
+ getDefaultCameraId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
238
+ getViewingVolumeId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
232
239
  getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
233
240
  getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
234
241
  getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
@@ -288,6 +295,7 @@ declare class Engine {
288
295
  viewportHeightPixels: number
289
296
  ]): AquaStatus;
290
297
  setMaxCacheSize(...args: [maxSizeBytes: number]): void;
298
+ setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
291
299
  setSceneObjectTransform(...args: [
292
300
  handle: AquaClientHandle,
293
301
  sceneObjectId: number,
@@ -296,6 +304,7 @@ declare class Engine {
296
304
  hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
297
305
  getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
298
306
  getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
307
+ getAssetFormatVersion(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
299
308
  getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
300
309
  setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
301
310
  takeAttribute(...args: [
@@ -308,8 +317,15 @@ declare class Engine {
308
317
  getActiveClientSideIdsCheckSum(): number;
309
318
  unlockScene(...args: [handle: AquaClientHandle]): boolean;
310
319
  updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
311
- recordFrameTime(...args: [handle: AquaClientHandle, frameTimeMs: number]): AquaStatus;
312
320
  takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
321
+ /**
322
+ * Advances the runtime by one frame and recomputes the streaming budget. Call once per
323
+ * displayed frame per context, before the per-client updateSceneExecution() calls.
324
+ * `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
325
+ * measurement (first frame, or a resume from a stall) and the frame advances without recording
326
+ * one.
327
+ */
328
+ beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
313
329
  createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
314
330
  cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
315
331
  submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
@@ -418,13 +434,16 @@ declare interface MainModule {
418
434
  HasFeature(handle: number, sceneObjectId: number, feature: number): boolean;
419
435
  GetFeatureVersion(handle: number, sceneObjectId: number, feature: number): number;
420
436
  GetFeatureState(handle: number, sceneObjectId: number, feature: number): number;
437
+ GetAssetFormatVersion(handle: number, sceneObjectId: number): number;
421
438
  SetClientSpatialFormat(handle: number, spatialFormat: SpatialFormat): { value: number };
422
439
  SetRuntimeSettings(handle: number, settings: RuntimeSettings): { value: number };
423
440
  TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
424
441
  GetActiveClientSideIdsCheckSum(): number;
425
442
  TakeRenderRequired(handle: number): boolean;
443
+ BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
426
444
  modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
427
445
  setMaxCacheSize(maxSizeBytes: number): void;
446
+ SetPreferSharkEncodingProfiles(prefer: boolean): void;
428
447
  }
429
448
 
430
449
  /**
@@ -461,13 +480,21 @@ export declare class Miris {
461
480
  * Why 43? Because the AVP throttles down to 45Hz :(
462
481
  */
463
482
  static readonly _XR_TARGET_FRAME_RATE = 43;
483
+ /* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
484
+ /* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
485
+ static readonly _SHARK_SPLAT_CAPACITY_DESKTOP = 3000000;
486
+ /* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
487
+ static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2500000;
488
+ /* Excluded from this release type: _isMobileDevice */
489
+ /* Excluded from this release type: _sharkSplatCapacity */
490
+ /* Excluded from this release type: _sharkSplatBudgetCap */
464
491
  /* Excluded from this release type: _setTargetFrameRate */
465
492
  /* Excluded from this release type: _setXRModeActive */
466
493
  /* Excluded from this release type: _setSplatCountBudgetOverride */
467
494
  /* Excluded from this release type: _update */
468
495
  getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
469
496
  getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
470
- update(): boolean;
497
+ /* Excluded from this release type: _updateForScene */
471
498
  applyChanges(_entries: Change[]): void;
472
499
  _computeAdditionalRenderNeeded(): boolean;
473
500
  onColorSpaceDetected(_isLinear: boolean): void;
@@ -504,6 +531,7 @@ declare interface RuntimeSettings extends EmbindObject {
504
531
  targetFramesPerSecond: number;
505
532
  xrModeActive: boolean;
506
533
  splatCountBudget: number;
534
+ splatCountBudgetCap: number;
507
535
  }
508
536
 
509
537
  export declare class Scene extends EventTarget {
@@ -515,6 +543,7 @@ export declare class Scene extends EventTarget {
515
543
  readonly id: number;
516
544
  get key(): unknown;
517
545
  set key(key: unknown);
546
+ /* Excluded from this release type: _assetFormat */
518
547
  get viewerKey(): string | null;
519
548
  set viewerKey(viewerKey: string | null);
520
549
  get streams(): Set<Stream>;
@@ -524,19 +553,30 @@ export declare class Scene extends EventTarget {
524
553
  readonly client: Client;
525
554
  readonly handle?: number;
526
555
  constructor({ miris, viewerKey }: SceneInit);
556
+ /**
557
+ * Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
558
+ * displayed frame from the host's animation loop, and render when it returns true.
559
+ *
560
+ * Every scene on the page calls this from its own loop. The first call in a displayed frame
561
+ * drives one engine tick for all of them; the rest recognise the frame and reuse it.
562
+ *
563
+ * @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
564
+ * reads the same for every scene in a displayed frame. Pass it when the host runs its own
565
+ * clock, as an immersive XR session does, because XRFrame time is not the document timeline.
566
+ */
567
+ update(ts?: DOMHighResTimeStamp): boolean;
527
568
  dispose(): void;
528
- /* Excluded from this release type: _getViewingVolumeObb */
529
569
  fetchAssets(tags?: string | Iterable<string>): Promise<{
530
570
  name: string;
531
571
  thumbnailUrl: string;
532
572
  uuid: string;
533
573
  tags: string[];
534
574
  }[]>;
535
- getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
536
575
  add(stream: Stream): void;
537
576
  getStreamForId(streamObjectId: number): Stream | undefined;
538
577
  getStreamForDescendentId(descendentObjectId: number): Stream | null;
539
578
  getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
579
+ _recordAssetFormat(modelRoot: ModelRoot, formatVersion: number): void;
540
580
  /* Excluded from this release type: _getFeatureMesh */
541
581
  /* Excluded from this release type: _getDrMap */
542
582
  /* Excluded from this release type: _onFeatureData */
@@ -629,6 +669,8 @@ export declare class Stream extends EventTarget {
629
669
  constructor(options: StreamInit);
630
670
  _initStream({ uuid }: StreamInit): void;
631
671
  /* Excluded from this release type: _onStreamLoaded */
672
+ getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
673
+ /* Excluded from this release type: _getViewingVolumeObb */
632
674
  /* Excluded from this release type: _onRootLoaded */
633
675
  add(modelRoot: ModelRoot): void;
634
676
  end(): void;