@miris-inc/core 0.0.8-07e9c0a → 0.0.8-0a1616e

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
@@ -9,7 +9,9 @@ declare interface AttributeInfo extends EmbindObject {
9
9
  readonly elementCount: number;
10
10
  readonly dataSizeBytes: number;
11
11
  readonly clientSideId: bigint;
12
- readonly minValue: { x: number; y: number; z: number };
12
+ // An embind CompressionType value, compared by identity against MainModule.CompressionType
13
+ readonly compressionType: unknown;
14
+ readonly minValue: { x: number; y: number; z: number; w: number };
13
15
  readonly maxValue: { x: number; y: number; z: number };
14
16
  }
15
17
 
@@ -32,7 +34,10 @@ export declare class AttributeNames {
32
34
  static readonly OCTANT_OFFSETS: string;
33
35
  static readonly SURFEL_OCTANT_OFFSETS: string;
34
36
  static readonly SURFEL_COUNT: string;
37
+ static readonly SURFEL_OWNER_GROUPS: string;
38
+ static readonly OCTANT_CELL: string;
35
39
  static readonly REFLECTANCE_DATA_V1: string;
40
+ static readonly REFLECTANCE_DATA_V2: string;
36
41
  static readonly GLASS_MESH_GEOMETRY: string;
37
42
  static readonly GLASS_MESH_PANELS: string;
38
43
  static readonly MOD_DEPTH: string;
@@ -108,7 +113,9 @@ declare class Client {
108
113
  getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
109
114
  getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
110
115
  getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
116
+ getStreamStatus(...args: ClientMethodParameters["getStreamStatus"]): StreamStatus;
111
117
  getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
118
+ getOctantLocalBoundingBoxes(...args: ClientMethodParameters["getOctantLocalBoundingBoxes"]): number[];
112
119
  getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
113
120
  getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
114
121
  hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
@@ -191,11 +198,23 @@ declare class Engine {
191
198
  readonly Loaded: 2;
192
199
  readonly Failed: 3;
193
200
  };
201
+ static StreamStatus: {
202
+ readonly Unknown: 0;
203
+ readonly Resolving: 1;
204
+ readonly Loading: 2;
205
+ readonly Ready: 3;
206
+ readonly Failed: 4;
207
+ };
194
208
  readonly ready: Promise<this>;
195
209
  readonly pending: boolean;
196
210
  get module(): MainModule;
197
211
  constructor(moduleOptions?: Record<string, unknown>);
198
212
  get AttributeInfo(): new () => AttributeInfo;
213
+ get CompressionType(): {
214
+ SHARK_ELLIPSOID_COMPRESSED: unknown;
215
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
216
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE_V2: unknown;
217
+ };
199
218
  get Handedness(): {
200
219
  Right: number;
201
220
  Left: number;
@@ -216,6 +235,7 @@ declare class Engine {
216
235
  Y: number;
217
236
  Z: number;
218
237
  };
238
+ get UsePadding(): boolean;
219
239
  activatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
220
240
  addStreamById(...args: [
221
241
  handle: AquaClientHandle,
@@ -233,6 +253,7 @@ declare class Engine {
233
253
  deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
234
254
  remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
235
255
  getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
256
+ getOctantLocalBoundingBoxes(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
236
257
  destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
237
258
  free(...args: [size: number]): number;
238
259
  getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
@@ -251,6 +272,7 @@ declare class Engine {
251
272
  getSceneChangesCounts(...args: [handle: AquaClientHandle, sceneChangeIds: SceneChangeIds]): void;
252
273
  getSceneMetadata(...args: [handle: AquaClientHandle, metadata: SceneMetadata]): number;
253
274
  getSceneObjectParent(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
275
+ getStreamStatus(...args: [handle: AquaClientHandle, streamObjectId: number]): StreamStatus;
254
276
  getSceneObjectType(...args: [handle: AquaClientHandle, sceneObjectId: number]): SceneObjectType;
255
277
  getLocalTransform(...args: [
256
278
  handle: AquaClientHandle,
@@ -304,6 +326,7 @@ declare class Engine {
304
326
  ]): AquaStatus;
305
327
  setMaxCacheSize(...args: [maxSizeBytes: number]): void;
306
328
  setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
329
+ setPadSplatAttributes(usePadding: boolean): void;
307
330
  setSceneObjectTransform(...args: [
308
331
  handle: AquaClientHandle,
309
332
  sceneObjectId: number,
@@ -332,9 +355,16 @@ declare class Engine {
332
355
  * displayed frame per context, before the per-client updateSceneExecution() calls.
333
356
  * `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
334
357
  * measurement (first frame, or a resume from a stall) and the frame advances without recording
335
- * one.
358
+ * `primsResident` is what the renderer held at the end of the previous frame, fading
359
+ * prims included, and `primCapacity` what it can hold; activations that would not fit are
360
+ * deferred, where primCapacity 0 means deferral is disabled.
336
361
  */
337
- beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
362
+ beginFrame(...args: [
363
+ contextHandle: AquaContextHandle,
364
+ previousFrameTimeMs: number,
365
+ primsResident: number,
366
+ primCapacity: number
367
+ ]): AquaStatus;
338
368
  createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
339
369
  cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
340
370
  submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
@@ -348,6 +378,12 @@ declare type EngineMethodParameters<E extends Engine = Engine> = {
348
378
  [Key in keyof E]: E[Key] extends (...args: any[]) => any ? Parameters<E[Key]> : never;
349
379
  };
350
380
 
381
+ export declare const HaveData = 2;
382
+
383
+ export declare const HaveMetadata = 1;
384
+
385
+ export declare const HaveNothing = 0;
386
+
351
387
  export declare class Lod {
352
388
  #private;
353
389
  readonly id: LodInit["id"];
@@ -378,10 +414,14 @@ export declare class Lod {
378
414
  get transform(): Float32Array<ArrayBuffer> | null;
379
415
  get _drawnOctantMask(): number;
380
416
  set _drawnOctantMask(mask: number);
417
+ get _octantLocalBounds(): Float32Array<ArrayBuffer> | null;
418
+ set _octantLocalBounds(bounds: Float32Array<ArrayBuffer> | null);
381
419
  get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
382
420
  get _hasOctantOffsets(): boolean;
383
421
  get _surfelOctantOffsets(): Uint32Array<ArrayBuffer> | null;
384
422
  get _surfelCount(): number;
423
+ get _surfelOwnerGroups(): Uint32Array<ArrayBuffer> | null;
424
+ get _octantCell(): Uint32Array<ArrayBuffer> | null;
385
425
  _readOctantOffsets(engine: Engine): void;
386
426
  hasAttribute(attributeName: string): boolean;
387
427
  getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
@@ -411,6 +451,11 @@ export declare class LodStore {
411
451
 
412
452
  declare interface MainModule {
413
453
  AttributeInfo: new () => AttributeInfo;
454
+ CompressionType: {
455
+ SHARK_ELLIPSOID_COMPRESSED: unknown;
456
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
457
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE_V2: unknown;
458
+ };
414
459
  Handedness: { Right: number; Left: number };
415
460
  HEAPF32: Float32Array<ArrayBuffer>;
416
461
  HEAPU8: Uint8Array<ArrayBuffer>;
@@ -439,6 +484,7 @@ declare interface MainModule {
439
484
  remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
440
485
  deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
441
486
  GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
487
+ GetOctantLocalBoundingBoxes(handle: number, sceneObjectId: number): number[];
442
488
  GetAssetsAsync(handle: number, tags: StringVector): unknown[];
443
489
  GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
444
490
  GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
@@ -454,7 +500,12 @@ declare interface MainModule {
454
500
  TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
455
501
  GetActiveClientSideIdsCheckSum(): number;
456
502
  TakeRenderRequired(handle: number): boolean;
457
- BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
503
+ BeginFrame(
504
+ contextHandle: number,
505
+ previousFrameTimeMs: number,
506
+ primsResident: number,
507
+ primCapacity: number,
508
+ ): number;
458
509
  modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
459
510
  setMaxCacheSize(maxSizeBytes: number): void;
460
511
  SetPreferSharkEncodingProfiles(prefer: boolean): void;
@@ -496,15 +547,20 @@ export declare class Miris {
496
547
  static readonly _XR_TARGET_FRAME_RATE = 43;
497
548
  /* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
498
549
  /* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
499
- static readonly _SHARK_SPLAT_CAPACITY_DESKTOP = 3000000;
550
+ static readonly _SHARK_SPLAT_CAPACITY_DESKTOP: number;
500
551
  /* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
501
- static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2500000;
552
+ static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2400000;
502
553
  /* Excluded from this release type: _isMobileDevice */
503
554
  /* Excluded from this release type: _sharkSplatCapacity */
555
+ /* Excluded from this release type: _minimumSplatCount */
556
+ /* Excluded from this release type: _splatCountStorageKey */
557
+ /* Excluded from this release type: _reloadWithLowerSplatCapacity */
558
+ /* Excluded from this release type: _limitSharkSplatCapacity */
504
559
  /* Excluded from this release type: _sharkSplatBudgetCap */
505
560
  /* Excluded from this release type: _setTargetFrameRate */
506
561
  /* Excluded from this release type: _setXRModeActive */
507
562
  /* Excluded from this release type: _setSplatCountBudgetOverride */
563
+ /* Excluded from this release type: _reportRendererPrims */
508
564
  /* Excluded from this release type: _update */
509
565
  getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
510
566
  getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
@@ -541,9 +597,9 @@ export declare type ModelRootInit = {
541
597
  * The byte-exact counterpart of getRawUint32Attribute above: same no-padding, no-takeAttribute
542
598
  * contract, returning bytes rather than words.
543
599
  *
544
- * Use this rather than that one wherever the stride is not a whole number of words:
545
- * reflectanceDataV1's 26-byte record is not, and an odd record count would lose that record's
546
- * last field to dataPtrView's truncation.
600
+ * Use this rather than that one wherever the stride is not a whole number of words: the
601
+ * reflectance records' 18- and 26-byte strides are not, and an odd record count would lose that
602
+ * record's last field to dataPtrView's truncation.
547
603
  */
548
604
  export declare type RawByteAttributeWithBounds = {
549
605
  bytes: Uint8Array<ArrayBuffer>;
@@ -559,6 +615,9 @@ export declare type RawByteAttributeWithBounds = {
559
615
  };
560
616
  };
561
617
 
618
+ declare type ReadyState_2 = typeof HaveNothing | typeof HaveMetadata | typeof HaveData;
619
+ export { ReadyState_2 as ReadyState }
620
+
562
621
  declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
563
622
 
564
623
  declare interface RuntimeSettings extends EmbindObject {
@@ -617,6 +676,7 @@ export declare class Scene extends EventTarget {
617
676
  /* Excluded from this release type: _getDrMap */
618
677
  /* Excluded from this release type: _onDrMapLadder */
619
678
  /* Excluded from this release type: _onFeatureData */
679
+ /* Excluded from this release type: _updateStreamStatuses */
620
680
  /* Excluded from this release type: _onSceneLoaded */
621
681
  delete(stream: Stream): void;
622
682
  close(): void;
@@ -708,6 +768,9 @@ export declare class Stream extends EventTarget {
708
768
  /* Excluded from this release type: _onStreamLoaded */
709
769
  getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
710
770
  /* Excluded from this release type: _getViewingVolumeObb */
771
+ /** How much of the stream has loaded, as of the last frame. */
772
+ get readyState(): ReadyState_2;
773
+ /* Excluded from this release type: _updateStatus */
711
774
  /* Excluded from this release type: _onRootLoaded */
712
775
  add(modelRoot: ModelRoot): void;
713
776
  end(): void;