@miris-inc/core 0.0.8-79a58cb → 0.0.8-7ac5894
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 +0 -0
- package/dist/aqua-parser.wasm +0 -0
- package/dist/core.d.ts +113 -13
- package/dist/core.js +427 -76
- package/dist/core.prod.js +1 -1
- package/dist/core.standalone.js +906 -535
- package/dist/core.standalone.prod.js +1 -1
- package/dist/webshark.d.ts +321 -0
- package/dist/webshark.js +2 -0
- package/dist/webshark.wasm +0 -0
- package/package.json +5 -1
package/dist/AquaApi.wasm
CHANGED
|
Binary file
|
package/dist/aqua-parser.wasm
CHANGED
|
Binary file
|
package/dist/core.d.ts
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
|
+
export declare const AssetFormat: {
|
|
2
|
+
readonly GaussianSplats: 1;
|
|
3
|
+
readonly GES: 2;
|
|
4
|
+
};
|
|
5
|
+
|
|
1
6
|
declare interface AttributeInfo extends EmbindObject {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
readonly
|
|
5
|
-
readonly
|
|
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
|
+
// 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 };
|
|
7
15
|
readonly maxValue: { x: number; y: number; z: number };
|
|
8
16
|
}
|
|
9
17
|
|
|
@@ -20,8 +28,19 @@ export declare class AttributeNames {
|
|
|
20
28
|
static readonly SPARK_EXTENDED_SH3_B: string;
|
|
21
29
|
static readonly UNUSED: string;
|
|
22
30
|
static readonly SHARK_ELLIPSOIDS: string;
|
|
31
|
+
static readonly SHARK_ELLIPSOIDS_COMPRESSED: string;
|
|
23
32
|
static readonly SHARK_SPHERICAL_HARMONICS: string;
|
|
33
|
+
static readonly COLOR: string;
|
|
24
34
|
static readonly OCTANT_OFFSETS: string;
|
|
35
|
+
static readonly SURFEL_OCTANT_OFFSETS: string;
|
|
36
|
+
static readonly SURFEL_COUNT: string;
|
|
37
|
+
static readonly SURFEL_OWNER_GROUPS: string;
|
|
38
|
+
static readonly OCTANT_CELL: string;
|
|
39
|
+
static readonly REFLECTANCE_DATA_V1: string;
|
|
40
|
+
static readonly REFLECTANCE_DATA_V2: string;
|
|
41
|
+
static readonly GLASS_MESH_GEOMETRY: string;
|
|
42
|
+
static readonly GLASS_MESH_PANELS: string;
|
|
43
|
+
static readonly MOD_DEPTH: string;
|
|
25
44
|
}
|
|
26
45
|
|
|
27
46
|
declare type CachedAttribute = {
|
|
@@ -33,6 +52,8 @@ export declare class Camera {
|
|
|
33
52
|
#private;
|
|
34
53
|
readonly id: number;
|
|
35
54
|
update(): void;
|
|
55
|
+
get viewportHeight(): number;
|
|
56
|
+
set viewportHeight(viewportHeight: number);
|
|
36
57
|
get aspect(): number;
|
|
37
58
|
set aspect(aspect: number);
|
|
38
59
|
get fov(): number;
|
|
@@ -46,7 +67,7 @@ export declare class Camera {
|
|
|
46
67
|
readonly engine: Engine;
|
|
47
68
|
readonly miris: Miris;
|
|
48
69
|
readonly scene: Scene;
|
|
49
|
-
constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
|
|
70
|
+
constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
|
|
50
71
|
}
|
|
51
72
|
|
|
52
73
|
export declare type CameraInit = {
|
|
@@ -56,6 +77,7 @@ export declare type CameraInit = {
|
|
|
56
77
|
far: number;
|
|
57
78
|
matrix: Matrix4x4Tuple;
|
|
58
79
|
scene: Scene;
|
|
80
|
+
viewportHeight?: number;
|
|
59
81
|
};
|
|
60
82
|
|
|
61
83
|
export declare class Change {
|
|
@@ -107,6 +129,8 @@ declare class Client {
|
|
|
107
129
|
hasFeature(...args: ClientMethodParameters["hasFeature"]): boolean;
|
|
108
130
|
getFeatureVersion(...args: ClientMethodParameters["getFeatureVersion"]): number;
|
|
109
131
|
getFeatureState(...args: ClientMethodParameters["getFeatureState"]): number;
|
|
132
|
+
getAssetFormatVersion(...args: ClientMethodParameters["getAssetFormatVersion"]): number;
|
|
133
|
+
getDrMapLadderRoughnessLevels(...args: ClientMethodParameters["getDrMapLadderRoughnessLevels"]): number[];
|
|
110
134
|
getName(...args: ClientMethodParameters["getName"]): string;
|
|
111
135
|
setVariantSelection(...args: ClientMethodParameters["setVariantSelection"]): AquaStatus;
|
|
112
136
|
takeAttribute(...args: ClientMethodParameters["takeAttribute"]): AquaStatus;
|
|
@@ -114,7 +138,6 @@ declare class Client {
|
|
|
114
138
|
takeRenderRequired(...args: ClientMethodParameters["takeRenderRequired"]): boolean;
|
|
115
139
|
unlockScene(...args: ClientMethodParameters["unlockScene"]): boolean;
|
|
116
140
|
updateSceneExecution(...args: ClientMethodParameters["updateSceneExecution"]): AquaStatus;
|
|
117
|
-
recordFrameTime(...args: ClientMethodParameters["recordFrameTime"]): AquaStatus;
|
|
118
141
|
}
|
|
119
142
|
|
|
120
143
|
declare type ClientInit = {
|
|
@@ -178,6 +201,10 @@ declare class Engine {
|
|
|
178
201
|
get module(): MainModule;
|
|
179
202
|
constructor(moduleOptions?: Record<string, unknown>);
|
|
180
203
|
get AttributeInfo(): new () => AttributeInfo;
|
|
204
|
+
get CompressionType(): {
|
|
205
|
+
SHARK_ELLIPSOID_COMPRESSED: unknown;
|
|
206
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
|
|
207
|
+
};
|
|
181
208
|
get Handedness(): {
|
|
182
209
|
Right: number;
|
|
183
210
|
Left: number;
|
|
@@ -224,8 +251,8 @@ declare class Engine {
|
|
|
224
251
|
attributeName: string,
|
|
225
252
|
attributeInfo: AttributeInfo
|
|
226
253
|
]): AquaStatus;
|
|
227
|
-
getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
|
|
228
|
-
getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
|
|
254
|
+
getDefaultCameraId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
|
|
255
|
+
getViewingVolumeId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
|
|
229
256
|
getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
|
|
230
257
|
getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
|
|
231
258
|
getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
@@ -281,9 +308,11 @@ declare class Engine {
|
|
|
281
308
|
aspectRatio: number,
|
|
282
309
|
verticalFov: number,
|
|
283
310
|
nearPlane: number,
|
|
284
|
-
farPlane: number
|
|
311
|
+
farPlane: number,
|
|
312
|
+
viewportHeightPixels: number
|
|
285
313
|
]): AquaStatus;
|
|
286
314
|
setMaxCacheSize(...args: [maxSizeBytes: number]): void;
|
|
315
|
+
setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
|
|
287
316
|
setSceneObjectTransform(...args: [
|
|
288
317
|
handle: AquaClientHandle,
|
|
289
318
|
sceneObjectId: number,
|
|
@@ -292,6 +321,8 @@ declare class Engine {
|
|
|
292
321
|
hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
|
|
293
322
|
getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
|
|
294
323
|
getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
|
|
324
|
+
getDrMapLadderRoughnessLevels(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
|
|
325
|
+
getAssetFormatVersion(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
|
|
295
326
|
getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
|
|
296
327
|
setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
|
|
297
328
|
takeAttribute(...args: [
|
|
@@ -304,8 +335,15 @@ declare class Engine {
|
|
|
304
335
|
getActiveClientSideIdsCheckSum(): number;
|
|
305
336
|
unlockScene(...args: [handle: AquaClientHandle]): boolean;
|
|
306
337
|
updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
|
|
307
|
-
recordFrameTime(...args: [handle: AquaClientHandle, frameTimeMs: number]): AquaStatus;
|
|
308
338
|
takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
|
|
339
|
+
/**
|
|
340
|
+
* Advances the runtime by one frame and recomputes the streaming budget. Call once per
|
|
341
|
+
* displayed frame per context, before the per-client updateSceneExecution() calls.
|
|
342
|
+
* `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
|
|
343
|
+
* measurement (first frame, or a resume from a stall) and the frame advances without recording
|
|
344
|
+
* one.
|
|
345
|
+
*/
|
|
346
|
+
beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
|
|
309
347
|
createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
|
|
310
348
|
cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
|
|
311
349
|
submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
|
|
@@ -351,9 +389,15 @@ export declare class Lod {
|
|
|
351
389
|
set _drawnOctantMask(mask: number);
|
|
352
390
|
get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
|
|
353
391
|
get _hasOctantOffsets(): boolean;
|
|
392
|
+
get _surfelOctantOffsets(): Uint32Array<ArrayBuffer> | null;
|
|
393
|
+
get _surfelCount(): number;
|
|
394
|
+
get _surfelOwnerGroups(): Uint32Array<ArrayBuffer> | null;
|
|
395
|
+
get _octantCell(): Uint32Array<ArrayBuffer> | null;
|
|
354
396
|
_readOctantOffsets(engine: Engine): void;
|
|
355
397
|
hasAttribute(attributeName: string): boolean;
|
|
356
398
|
getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
|
|
399
|
+
_getRawByteAttribute(engine: Engine, attributeName: string): Uint8Array<ArrayBuffer> | null;
|
|
400
|
+
_getRawByteAttributeWithBounds(engine: Engine, attributeName: string): RawByteAttributeWithBounds | null;
|
|
357
401
|
dispose(): void;
|
|
358
402
|
constructor({ id, modelRoot, lodStore, client }: LodInit);
|
|
359
403
|
}
|
|
@@ -378,6 +422,10 @@ export declare class LodStore {
|
|
|
378
422
|
|
|
379
423
|
declare interface MainModule {
|
|
380
424
|
AttributeInfo: new () => AttributeInfo;
|
|
425
|
+
CompressionType: {
|
|
426
|
+
SHARK_ELLIPSOID_COMPRESSED: unknown;
|
|
427
|
+
SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
|
|
428
|
+
};
|
|
381
429
|
Handedness: { Right: number; Left: number };
|
|
382
430
|
HEAPF32: Float32Array<ArrayBuffer>;
|
|
383
431
|
HEAPU8: Uint8Array<ArrayBuffer>;
|
|
@@ -414,13 +462,17 @@ declare interface MainModule {
|
|
|
414
462
|
HasFeature(handle: number, sceneObjectId: number, feature: number): boolean;
|
|
415
463
|
GetFeatureVersion(handle: number, sceneObjectId: number, feature: number): number;
|
|
416
464
|
GetFeatureState(handle: number, sceneObjectId: number, feature: number): number;
|
|
465
|
+
GetAssetFormatVersion(handle: number, sceneObjectId: number): number;
|
|
466
|
+
GetDrMapLadderRoughnessLevels(handle: number, sceneObjectId: number): number[];
|
|
417
467
|
SetClientSpatialFormat(handle: number, spatialFormat: SpatialFormat): { value: number };
|
|
418
468
|
SetRuntimeSettings(handle: number, settings: RuntimeSettings): { value: number };
|
|
419
469
|
TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
|
|
420
470
|
GetActiveClientSideIdsCheckSum(): number;
|
|
421
471
|
TakeRenderRequired(handle: number): boolean;
|
|
472
|
+
BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
|
|
422
473
|
modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
423
474
|
setMaxCacheSize(maxSizeBytes: number): void;
|
|
475
|
+
SetPreferSharkEncodingProfiles(prefer: boolean): void;
|
|
424
476
|
}
|
|
425
477
|
|
|
426
478
|
/**
|
|
@@ -452,17 +504,27 @@ export declare class Miris {
|
|
|
452
504
|
protected _xrSession: XRSession | null;
|
|
453
505
|
protected _requestAnimationFrame: RequestAnimationFrameFn | null;
|
|
454
506
|
signalResumeFromIdle(): void;
|
|
507
|
+
get _splatCountBudget(): number;
|
|
455
508
|
/**
|
|
456
509
|
* Why 43? Because the AVP throttles down to 45Hz :(
|
|
457
510
|
*/
|
|
458
511
|
static readonly _XR_TARGET_FRAME_RATE = 43;
|
|
512
|
+
/* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
|
|
513
|
+
/* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
|
|
514
|
+
static readonly _SHARK_SPLAT_CAPACITY_DESKTOP = 3000000;
|
|
515
|
+
/* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
|
|
516
|
+
static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2500000;
|
|
517
|
+
/* Excluded from this release type: _isMobileDevice */
|
|
518
|
+
/* Excluded from this release type: _sharkSplatCapacity */
|
|
519
|
+
/* Excluded from this release type: _limitSharkSplatCapacity */
|
|
520
|
+
/* Excluded from this release type: _sharkSplatBudgetCap */
|
|
459
521
|
/* Excluded from this release type: _setTargetFrameRate */
|
|
460
522
|
/* Excluded from this release type: _setXRModeActive */
|
|
461
523
|
/* Excluded from this release type: _setSplatCountBudgetOverride */
|
|
462
524
|
/* Excluded from this release type: _update */
|
|
463
525
|
getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
464
526
|
getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
465
|
-
|
|
527
|
+
/* Excluded from this release type: _updateForScene */
|
|
466
528
|
applyChanges(_entries: Change[]): void;
|
|
467
529
|
_computeAdditionalRenderNeeded(): boolean;
|
|
468
530
|
onColorSpaceDetected(_isLinear: boolean): void;
|
|
@@ -491,6 +553,28 @@ export declare type ModelRootInit = {
|
|
|
491
553
|
stream: Stream;
|
|
492
554
|
};
|
|
493
555
|
|
|
556
|
+
/**
|
|
557
|
+
* The byte-exact counterpart of getRawUint32Attribute above: same no-padding, no-takeAttribute
|
|
558
|
+
* contract, returning bytes rather than words.
|
|
559
|
+
*
|
|
560
|
+
* Use this rather than that one wherever the stride is not a whole number of words: the
|
|
561
|
+
* reflectance records' 18- and 26-byte strides are not, and an odd record count would lose that
|
|
562
|
+
* record's last field to dataPtrView's truncation.
|
|
563
|
+
*/
|
|
564
|
+
export declare type RawByteAttributeWithBounds = {
|
|
565
|
+
bytes: Uint8Array<ArrayBuffer>;
|
|
566
|
+
minValue: {
|
|
567
|
+
x: number;
|
|
568
|
+
y: number;
|
|
569
|
+
z: number;
|
|
570
|
+
};
|
|
571
|
+
maxValue: {
|
|
572
|
+
x: number;
|
|
573
|
+
y: number;
|
|
574
|
+
z: number;
|
|
575
|
+
};
|
|
576
|
+
};
|
|
577
|
+
|
|
494
578
|
declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
|
|
495
579
|
|
|
496
580
|
declare interface RuntimeSettings extends EmbindObject {
|
|
@@ -499,6 +583,7 @@ declare interface RuntimeSettings extends EmbindObject {
|
|
|
499
583
|
targetFramesPerSecond: number;
|
|
500
584
|
xrModeActive: boolean;
|
|
501
585
|
splatCountBudget: number;
|
|
586
|
+
splatCountBudgetCap: number;
|
|
502
587
|
}
|
|
503
588
|
|
|
504
589
|
export declare class Scene extends EventTarget {
|
|
@@ -510,6 +595,7 @@ export declare class Scene extends EventTarget {
|
|
|
510
595
|
readonly id: number;
|
|
511
596
|
get key(): unknown;
|
|
512
597
|
set key(key: unknown);
|
|
598
|
+
/* Excluded from this release type: _assetFormat */
|
|
513
599
|
get viewerKey(): string | null;
|
|
514
600
|
set viewerKey(viewerKey: string | null);
|
|
515
601
|
get streams(): Set<Stream>;
|
|
@@ -519,21 +605,33 @@ export declare class Scene extends EventTarget {
|
|
|
519
605
|
readonly client: Client;
|
|
520
606
|
readonly handle?: number;
|
|
521
607
|
constructor({ miris, viewerKey }: SceneInit);
|
|
608
|
+
/**
|
|
609
|
+
* Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
|
|
610
|
+
* displayed frame from the host's animation loop, and render when it returns true.
|
|
611
|
+
*
|
|
612
|
+
* Every scene on the page calls this from its own loop. The first call in a displayed frame
|
|
613
|
+
* drives one engine tick for all of them; the rest recognise the frame and reuse it.
|
|
614
|
+
*
|
|
615
|
+
* @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
|
|
616
|
+
* reads the same for every scene in a displayed frame. Pass it when the host runs its own
|
|
617
|
+
* clock, as an immersive XR session does, because XRFrame time is not the document timeline.
|
|
618
|
+
*/
|
|
619
|
+
update(ts?: DOMHighResTimeStamp): boolean;
|
|
522
620
|
dispose(): void;
|
|
523
|
-
/* Excluded from this release type: _getViewingVolumeObb */
|
|
524
621
|
fetchAssets(tags?: string | Iterable<string>): Promise<{
|
|
525
622
|
name: string;
|
|
526
623
|
thumbnailUrl: string;
|
|
527
624
|
uuid: string;
|
|
528
625
|
tags: string[];
|
|
529
626
|
}[]>;
|
|
530
|
-
getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
|
|
531
627
|
add(stream: Stream): void;
|
|
532
628
|
getStreamForId(streamObjectId: number): Stream | undefined;
|
|
533
629
|
getStreamForDescendentId(descendentObjectId: number): Stream | null;
|
|
534
630
|
getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
|
|
631
|
+
_recordAssetFormat(modelRoot: ModelRoot, formatVersion: number): void;
|
|
535
632
|
/* Excluded from this release type: _getFeatureMesh */
|
|
536
633
|
/* Excluded from this release type: _getDrMap */
|
|
634
|
+
/* Excluded from this release type: _onDrMapLadder */
|
|
537
635
|
/* Excluded from this release type: _onFeatureData */
|
|
538
636
|
/* Excluded from this release type: _onSceneLoaded */
|
|
539
637
|
delete(stream: Stream): void;
|
|
@@ -624,6 +722,8 @@ export declare class Stream extends EventTarget {
|
|
|
624
722
|
constructor(options: StreamInit);
|
|
625
723
|
_initStream({ uuid }: StreamInit): void;
|
|
626
724
|
/* Excluded from this release type: _onStreamLoaded */
|
|
725
|
+
getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
|
|
726
|
+
/* Excluded from this release type: _getViewingVolumeObb */
|
|
627
727
|
/* Excluded from this release type: _onRootLoaded */
|
|
628
728
|
add(modelRoot: ModelRoot): void;
|
|
629
729
|
end(): void;
|