@miris-inc/core 0.0.8-ccd19da → 0.0.8-d17ca7c

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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  <p align="center">
2
2
  <a href="https://miris.com">
3
- <img src="./banner.svg" alt="Miris" width="100%" />
3
+ <img src="https://cdn.jsdelivr.net/npm/@miris-inc/core/banner.svg" alt="Miris" width="100%" />
4
4
  </a>
5
5
  </p>
6
6
 
package/dist/AquaApi.wasm CHANGED
Binary file
Binary file
package/dist/core.d.ts CHANGED
@@ -1,16 +1,54 @@
1
+ export declare const AssetFormat: {
2
+ readonly GaussianSplats: 1;
3
+ readonly GES: 2;
4
+ };
5
+
1
6
  declare interface AttributeInfo extends EmbindObject {
2
- readonly dataType: number;
3
- readonly componentCount: number;
4
- readonly dataPtr: number;
5
- readonly dataByteLength: number;
7
+ // Logical elements from the drop metadata: splats for a per-splat attribute, records for a
8
+ // per-surfel one. Not necessarily dataSizeBytes / bytesPerElement.
9
+ readonly elementCount: number;
10
+ readonly dataSizeBytes: number;
6
11
  readonly clientSideId: bigint;
12
+ readonly minValue: { x: number; y: number; z: number };
7
13
  readonly maxValue: { x: number; y: number; z: number };
8
14
  }
9
15
 
16
+ export declare class AttributeNames {
17
+ static readonly SPARK_PACKED_SPLAT: string;
18
+ static readonly SPARK_EXTENDED_SPLAT_LOW: string;
19
+ static readonly SPARK_EXTENDED_SPLAT_HIGH: string;
20
+ static readonly SPARK_PACKED_SH1: string;
21
+ static readonly SPARK_PACKED_SH2: string;
22
+ static readonly SPARK_PACKED_SH3: string;
23
+ static readonly SPARK_EXTENDED_SH1: string;
24
+ static readonly SPARK_EXTENDED_SH2: string;
25
+ static readonly SPARK_EXTENDED_SH3_A: string;
26
+ static readonly SPARK_EXTENDED_SH3_B: string;
27
+ static readonly UNUSED: string;
28
+ static readonly SHARK_ELLIPSOIDS: string;
29
+ static readonly SHARK_ELLIPSOIDS_COMPRESSED: string;
30
+ static readonly SHARK_SPHERICAL_HARMONICS: string;
31
+ static readonly COLOR: string;
32
+ static readonly OCTANT_OFFSETS: string;
33
+ static readonly SURFEL_OCTANT_OFFSETS: string;
34
+ static readonly SURFEL_COUNT: string;
35
+ static readonly REFLECTANCE_DATA_V1: string;
36
+ static readonly GLASS_MESH_GEOMETRY: string;
37
+ static readonly GLASS_MESH_PANELS: string;
38
+ static readonly MOD_DEPTH: string;
39
+ }
40
+
41
+ declare type CachedAttribute = {
42
+ paddedData: Uint32Array<ArrayBuffer>;
43
+ originalSizeInUints: number;
44
+ };
45
+
10
46
  export declare class Camera {
11
47
  #private;
12
48
  readonly id: number;
13
49
  update(): void;
50
+ get viewportHeight(): number;
51
+ set viewportHeight(viewportHeight: number);
14
52
  get aspect(): number;
15
53
  set aspect(aspect: number);
16
54
  get fov(): number;
@@ -24,7 +62,7 @@ export declare class Camera {
24
62
  readonly engine: Engine;
25
63
  readonly miris: Miris;
26
64
  readonly scene: Scene;
27
- constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
65
+ constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
28
66
  }
29
67
 
30
68
  export declare type CameraInit = {
@@ -34,6 +72,7 @@ export declare type CameraInit = {
34
72
  far: number;
35
73
  matrix: Matrix4x4Tuple;
36
74
  scene: Scene;
75
+ viewportHeight?: number;
37
76
  };
38
77
 
39
78
  export declare class Change {
@@ -43,7 +82,7 @@ export declare class Change {
43
82
  }
44
83
 
45
84
  export declare type ChangeInit = {
46
- type: "created" | "activated" | "modified" | "deactivated" | "deleted";
85
+ type: "created" | "activated" | "modified" | "deactivated" | "deleted" | "remasked";
47
86
  lod: Lod;
48
87
  };
49
88
 
@@ -60,6 +99,7 @@ declare class Client {
60
99
  getAssetsAsync(...args: ClientMethodParameters["getAssetsAsync"]): AssetInfo[];
61
100
  getAttribute(...args: ClientMethodParameters["getAttribute"]): AquaStatus;
62
101
  getDefaultCameraId(...args: ClientMethodParameters["getDefaultCameraId"]): number;
102
+ getViewingVolumeId(...args: ClientMethodParameters["getViewingVolumeId"]): number;
63
103
  getLocalBoundingBox(...args: ClientMethodParameters["getLocalBoundingBox"]): AquaStatus;
64
104
  getWorldBoundingBox(...args: ClientMethodParameters["getWorldBoundingBox"]): AquaStatus;
65
105
  getLodIndex(...args: ClientMethodParameters["getLodIndex"]): number;
@@ -68,6 +108,7 @@ declare class Client {
68
108
  getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
69
109
  getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
70
110
  getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
111
+ getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
71
112
  getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
72
113
  getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
73
114
  hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
@@ -83,6 +124,8 @@ declare class Client {
83
124
  hasFeature(...args: ClientMethodParameters["hasFeature"]): boolean;
84
125
  getFeatureVersion(...args: ClientMethodParameters["getFeatureVersion"]): number;
85
126
  getFeatureState(...args: ClientMethodParameters["getFeatureState"]): number;
127
+ getAssetFormatVersion(...args: ClientMethodParameters["getAssetFormatVersion"]): number;
128
+ getDrMapLadderRoughnessLevels(...args: ClientMethodParameters["getDrMapLadderRoughnessLevels"]): number[];
86
129
  getName(...args: ClientMethodParameters["getName"]): string;
87
130
  setVariantSelection(...args: ClientMethodParameters["setVariantSelection"]): AquaStatus;
88
131
  takeAttribute(...args: ClientMethodParameters["takeAttribute"]): AquaStatus;
@@ -139,6 +182,8 @@ declare class Engine {
139
182
  };
140
183
  static Feature: {
141
184
  readonly DrMap: 0;
185
+ readonly ReflMesh: 1;
186
+ readonly GlassMesh: 2;
142
187
  };
143
188
  static FeatureState: {
144
189
  readonly NotLoaded: 0;
@@ -186,6 +231,8 @@ declare class Engine {
186
231
  deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
187
232
  dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
188
233
  deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
234
+ remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
235
+ getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
189
236
  destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
190
237
  free(...args: [size: number]): number;
191
238
  getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
@@ -195,7 +242,8 @@ declare class Engine {
195
242
  attributeName: string,
196
243
  attributeInfo: AttributeInfo
197
244
  ]): AquaStatus;
198
- getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
245
+ getDefaultCameraId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
246
+ getViewingVolumeId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
199
247
  getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
200
248
  getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
201
249
  getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
@@ -244,19 +292,18 @@ declare class Engine {
244
292
  removeStream(...args: [handle: AquaClientHandle, streamObjectId: number]): boolean;
245
293
  setAssetViewerKey(...args: [handle: AquaClientHandle, key: string]): AquaStatus;
246
294
  setClientSpatialFormat(...args: [handle: AquaClientHandle, spatialFormat: SpatialFormat]): AquaStatus;
247
- setRuntimeSettings(...args: [
248
- handle: AquaClientHandle,
249
- settings: RuntimeSettings
250
- ]): AquaStatus;
295
+ setRuntimeSettings(...args: [handle: AquaClientHandle, settings: RuntimeSettings]): AquaStatus;
251
296
  setMainCameraTransform(...args: [handle: AquaClientHandle, cameraTransform: number]): AquaStatus;
252
297
  setMainCameraViewFrustum(...args: [
253
298
  handle: AquaClientHandle,
254
299
  aspectRatio: number,
255
300
  verticalFov: number,
256
301
  nearPlane: number,
257
- farPlane: number
302
+ farPlane: number,
303
+ viewportHeightPixels: number
258
304
  ]): AquaStatus;
259
305
  setMaxCacheSize(...args: [maxSizeBytes: number]): void;
306
+ setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
260
307
  setSceneObjectTransform(...args: [
261
308
  handle: AquaClientHandle,
262
309
  sceneObjectId: number,
@@ -265,14 +312,10 @@ declare class Engine {
265
312
  hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
266
313
  getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
267
314
  getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
268
- getName(...args: [
269
- handle: AquaClientHandle,
270
- sceneObjectId: number
271
- ]): string;
272
- setVariantSelection(...args: [
273
- handle: AquaClientHandle,
274
- sceneObjectId: number
275
- ]): AquaStatus;
315
+ getDrMapLadderRoughnessLevels(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
316
+ getAssetFormatVersion(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
317
+ getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
318
+ setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
276
319
  takeAttribute(...args: [
277
320
  handle: AquaClientHandle,
278
321
  sceneObjectId: number,
@@ -282,11 +325,16 @@ declare class Engine {
282
325
  takeEvictedClientSideAttributeIds(...args: [handle: AquaClientHandle]): EmbindVector<bigint>;
283
326
  getActiveClientSideIdsCheckSum(): number;
284
327
  unlockScene(...args: [handle: AquaClientHandle]): boolean;
285
- updateSceneExecution(...args: [
286
- handle: AquaClientHandle,
287
- firstInSequence: boolean
288
- ]): AquaStatus;
328
+ updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
289
329
  takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
330
+ /**
331
+ * Advances the runtime by one frame and recomputes the streaming budget. Call once per
332
+ * displayed frame per context, before the per-client updateSceneExecution() calls.
333
+ * `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
334
+ * measurement (first frame, or a resume from a stall) and the frame advances without recording
335
+ * one.
336
+ */
337
+ beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
290
338
  createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
291
339
  cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
292
340
  submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
@@ -304,41 +352,50 @@ export declare class Lod {
304
352
  #private;
305
353
  readonly id: LodInit["id"];
306
354
  readonly store: LodStore;
307
- useExtSplats: boolean;
308
- splatsExtendedData: Uint32Array<ArrayBuffer> | null;
309
- sh1Data: Uint32Array<ArrayBuffer> | null;
310
- sh1Max: number;
311
- sh2Data: Uint32Array<ArrayBuffer> | null;
312
- sh2Max: number;
313
- sh3Data: Uint32Array<ArrayBuffer> | null;
314
- sh3Max: number;
315
- sh3ExtendedData: Uint32Array<ArrayBuffer> | null;
316
355
  get key(): unknown;
317
356
  set key(key: unknown);
318
357
  readonly modelRoot: ModelRoot;
319
- set splats(splats: Uint32Array<ArrayBuffer> | null);
320
- get splats(): Uint32Array<ArrayBuffer> | null;
321
358
  set bounds(bounds: Float32Array<ArrayBuffer> | null);
359
+ /**
360
+ * Retrieves the cached world bounds of this object
361
+ *
362
+ * @deprecated Retrieve the local bounds and transform as needed
363
+ */
322
364
  get bounds(): Float32Array<ArrayBuffer> | null;
323
- /* Excluded from this release type: _boundsStreamSpace */
324
- /* Excluded from this release type: _boundsStreamSpace */
365
+ /**
366
+ * Sets the local bounds of this lod
367
+ */
368
+ set localBounds(bounds: Float32Array<ArrayBuffer> | null);
369
+ /**
370
+ * Retrieves the local bounds of this lod
371
+ */
372
+ get localBounds(): Float32Array<ArrayBuffer> | null;
325
373
  set lodIndex(index: number);
326
374
  get lodIndex(): number | null;
327
- set paddingCount(count: number);
328
- get paddingCount(): number;
375
+ set paddingSplatsCount(count: number);
376
+ get paddingSplatsCount(): number;
329
377
  set transform(transform: Float32Array<ArrayBuffer> | null);
330
378
  get transform(): Float32Array<ArrayBuffer> | null;
331
- setSh1(sh1Data: Uint32Array<ArrayBuffer>, sh1Max: number): void;
332
- setSh2(sh2Data: Uint32Array<ArrayBuffer>, sh2Max: number): void;
333
- setSh3(sh3Data: Uint32Array<ArrayBuffer>, sh3Max: number): void;
379
+ get _drawnOctantMask(): number;
380
+ set _drawnOctantMask(mask: number);
381
+ get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
382
+ get _hasOctantOffsets(): boolean;
383
+ get _surfelOctantOffsets(): Uint32Array<ArrayBuffer> | null;
384
+ get _surfelCount(): number;
385
+ _readOctantOffsets(engine: Engine): void;
386
+ hasAttribute(attributeName: string): boolean;
387
+ getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
388
+ _getRawByteAttribute(engine: Engine, attributeName: string): Uint8Array<ArrayBuffer> | null;
389
+ _getRawByteAttributeWithBounds(engine: Engine, attributeName: string): RawByteAttributeWithBounds | null;
334
390
  dispose(): void;
335
- constructor({ id, modelRoot, lodStore }: LodInit);
391
+ constructor({ id, modelRoot, lodStore, client }: LodInit);
336
392
  }
337
393
 
338
394
  export declare type LodInit = {
339
395
  id: number;
340
396
  modelRoot: ModelRoot;
341
397
  lodStore: LodStore;
398
+ client: Client;
342
399
  };
343
400
 
344
401
  export declare class LodStore {
@@ -379,7 +436,9 @@ declare interface MainModule {
379
436
  createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
380
437
  dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
381
438
  deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
439
+ remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
382
440
  deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
441
+ GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
383
442
  GetAssetsAsync(handle: number, tags: StringVector): unknown[];
384
443
  GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
385
444
  GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
@@ -388,13 +447,17 @@ declare interface MainModule {
388
447
  HasFeature(handle: number, sceneObjectId: number, feature: number): boolean;
389
448
  GetFeatureVersion(handle: number, sceneObjectId: number, feature: number): number;
390
449
  GetFeatureState(handle: number, sceneObjectId: number, feature: number): number;
450
+ GetAssetFormatVersion(handle: number, sceneObjectId: number): number;
451
+ GetDrMapLadderRoughnessLevels(handle: number, sceneObjectId: number): number[];
391
452
  SetClientSpatialFormat(handle: number, spatialFormat: SpatialFormat): { value: number };
392
453
  SetRuntimeSettings(handle: number, settings: RuntimeSettings): { value: number };
393
454
  TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
394
455
  GetActiveClientSideIdsCheckSum(): number;
395
456
  TakeRenderRequired(handle: number): boolean;
457
+ BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
396
458
  modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
397
459
  setMaxCacheSize(maxSizeBytes: number): void;
460
+ SetPreferSharkEncodingProfiles(prefer: boolean): void;
398
461
  }
399
462
 
400
463
  /**
@@ -407,6 +470,7 @@ declare interface MainModule {
407
470
  */
408
471
  export declare class Miris {
409
472
  #private;
473
+ static tryUseShark: boolean;
410
474
  static _instance: Miris;
411
475
  static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
412
476
  readonly engine: Engine;
@@ -416,14 +480,35 @@ export declare class Miris {
416
480
  get viewerKey(): string | null | undefined;
417
481
  set viewerKey(viewerKey: string | null | undefined);
418
482
  get scenes(): Set<Scene>;
483
+ get useSphericalHarmonics(): boolean;
484
+ set useSphericalHarmonics(value: boolean);
419
485
  constructor();
420
486
  dispose(): void;
421
487
  updateParentedTransform(_modelTransform: Float32Array<ArrayBuffer>, _parentTransform: Float32Array<ArrayBuffer>): Float32Array<ArrayBuffer> | undefined;
488
+ protected _xrModeActive: boolean;
489
+ protected _xrSession: XRSession | null;
490
+ protected _requestAnimationFrame: RequestAnimationFrameFn | null;
491
+ signalResumeFromIdle(): void;
492
+ get _splatCountBudget(): number;
493
+ /**
494
+ * Why 43? Because the AVP throttles down to 45Hz :(
495
+ */
496
+ static readonly _XR_TARGET_FRAME_RATE = 43;
497
+ /* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
498
+ /* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
499
+ static readonly _SHARK_SPLAT_CAPACITY_DESKTOP = 3000000;
500
+ /* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
501
+ static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2500000;
502
+ /* Excluded from this release type: _isMobileDevice */
503
+ /* Excluded from this release type: _sharkSplatCapacity */
504
+ /* Excluded from this release type: _sharkSplatBudgetCap */
505
+ /* Excluded from this release type: _setTargetFrameRate */
422
506
  /* Excluded from this release type: _setXRModeActive */
507
+ /* Excluded from this release type: _setSplatCountBudgetOverride */
423
508
  /* Excluded from this release type: _update */
424
509
  getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
425
510
  getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
426
- update(): boolean;
511
+ /* Excluded from this release type: _updateForScene */
427
512
  applyChanges(_entries: Change[]): void;
428
513
  _computeAdditionalRenderNeeded(): boolean;
429
514
  onColorSpaceDetected(_isLinear: boolean): void;
@@ -452,11 +537,37 @@ export declare type ModelRootInit = {
452
537
  stream: Stream;
453
538
  };
454
539
 
540
+ /**
541
+ * The byte-exact counterpart of getRawUint32Attribute above: same no-padding, no-takeAttribute
542
+ * contract, returning bytes rather than words.
543
+ *
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.
547
+ */
548
+ export declare type RawByteAttributeWithBounds = {
549
+ bytes: Uint8Array<ArrayBuffer>;
550
+ minValue: {
551
+ x: number;
552
+ y: number;
553
+ z: number;
554
+ };
555
+ maxValue: {
556
+ x: number;
557
+ y: number;
558
+ z: number;
559
+ };
560
+ };
561
+
562
+ declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
563
+
455
564
  declare interface RuntimeSettings extends EmbindObject {
456
565
  maxBandwidthBitsPerSecond: number;
457
566
  maxConcurrentRequests: number;
458
567
  targetFramesPerSecond: number;
459
568
  xrModeActive: boolean;
569
+ splatCountBudget: number;
570
+ splatCountBudgetCap: number;
460
571
  }
461
572
 
462
573
  export declare class Scene extends EventTarget {
@@ -468,6 +579,7 @@ export declare class Scene extends EventTarget {
468
579
  readonly id: number;
469
580
  get key(): unknown;
470
581
  set key(key: unknown);
582
+ /* Excluded from this release type: _assetFormat */
471
583
  get viewerKey(): string | null;
472
584
  set viewerKey(viewerKey: string | null);
473
585
  get streams(): Set<Stream>;
@@ -477,6 +589,18 @@ export declare class Scene extends EventTarget {
477
589
  readonly client: Client;
478
590
  readonly handle?: number;
479
591
  constructor({ miris, viewerKey }: SceneInit);
592
+ /**
593
+ * Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
594
+ * displayed frame from the host's animation loop, and render when it returns true.
595
+ *
596
+ * Every scene on the page calls this from its own loop. The first call in a displayed frame
597
+ * drives one engine tick for all of them; the rest recognise the frame and reuse it.
598
+ *
599
+ * @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
600
+ * reads the same for every scene in a displayed frame. Pass it when the host runs its own
601
+ * clock, as an immersive XR session does, because XRFrame time is not the document timeline.
602
+ */
603
+ update(ts?: DOMHighResTimeStamp): boolean;
480
604
  dispose(): void;
481
605
  fetchAssets(tags?: string | Iterable<string>): Promise<{
482
606
  name: string;
@@ -484,12 +608,14 @@ export declare class Scene extends EventTarget {
484
608
  uuid: string;
485
609
  tags: string[];
486
610
  }[]>;
487
- getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
488
611
  add(stream: Stream): void;
489
612
  getStreamForId(streamObjectId: number): Stream | undefined;
490
613
  getStreamForDescendentId(descendentObjectId: number): Stream | null;
491
614
  getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
615
+ _recordAssetFormat(modelRoot: ModelRoot, formatVersion: number): void;
616
+ /* Excluded from this release type: _getFeatureMesh */
492
617
  /* Excluded from this release type: _getDrMap */
618
+ /* Excluded from this release type: _onDrMapLadder */
493
619
  /* Excluded from this release type: _onFeatureData */
494
620
  /* Excluded from this release type: _onSceneLoaded */
495
621
  delete(stream: Stream): void;
@@ -502,6 +628,7 @@ declare interface SceneChangeIds extends EmbindObject {
502
628
  readonly modifiedObjectsCount: number;
503
629
  readonly deactivatedObjectsCount: number;
504
630
  readonly deletedObjectsCount: number;
631
+ readonly remaskedObjectsCount: number;
505
632
  }
506
633
 
507
634
  export declare type SceneInit = {
@@ -513,6 +640,13 @@ declare interface SceneMetadata extends EmbindObject {
513
640
  readonly inputColorSpace: string;
514
641
  }
515
642
 
643
+ declare type SparkAttributeInfo = {
644
+ elementsPerSplat: number;
645
+ discard: boolean;
646
+ };
647
+
648
+ export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
649
+
516
650
  declare interface SpatialFormat extends EmbindObject {
517
651
  metersPerUnit: number;
518
652
  upAxis: number;
@@ -540,6 +674,8 @@ export declare class Stream extends EventTarget {
540
674
  set key(key: unknown);
541
675
  get matrix(): Matrix4x4Tuple;
542
676
  set matrix(matrix: Matrix4x4Tuple);
677
+ get opacity(): number;
678
+ set opacity(opacity: number);
543
679
  get boundingBox(): {
544
680
  min: {
545
681
  x: number;
@@ -570,6 +706,8 @@ export declare class Stream extends EventTarget {
570
706
  constructor(options: StreamInit);
571
707
  _initStream({ uuid }: StreamInit): void;
572
708
  /* Excluded from this release type: _onStreamLoaded */
709
+ getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
710
+ /* Excluded from this release type: _getViewingVolumeObb */
573
711
  /* Excluded from this release type: _onRootLoaded */
574
712
  add(modelRoot: ModelRoot): void;
575
713
  end(): void;