@miris-inc/core 0.0.8-7bd29ff → 0.0.8-7db43c1
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 +32 -5
- package/dist/core.js +120 -21
- package/dist/core.prod.js +1 -1
- package/dist/core.standalone.js +440 -341
- package/dist/core.standalone.prod.js +1 -1
- package/package.json +1 -1
package/dist/AquaApi.wasm
CHANGED
|
Binary file
|
package/dist/aqua-parser.wasm
CHANGED
|
Binary file
|
package/dist/core.d.ts
CHANGED
|
@@ -20,7 +20,9 @@ export declare class AttributeNames {
|
|
|
20
20
|
static readonly SPARK_EXTENDED_SH3_B: string;
|
|
21
21
|
static readonly UNUSED: string;
|
|
22
22
|
static readonly SHARK_ELLIPSOIDS: string;
|
|
23
|
+
static readonly SHARK_ELLIPSOIDS_COMPRESSED: string;
|
|
23
24
|
static readonly SHARK_SPHERICAL_HARMONICS: string;
|
|
25
|
+
static readonly COLOR: string;
|
|
24
26
|
static readonly OCTANT_OFFSETS: string;
|
|
25
27
|
}
|
|
26
28
|
|
|
@@ -33,6 +35,8 @@ export declare class Camera {
|
|
|
33
35
|
#private;
|
|
34
36
|
readonly id: number;
|
|
35
37
|
update(): void;
|
|
38
|
+
get viewportHeight(): number;
|
|
39
|
+
set viewportHeight(viewportHeight: number);
|
|
36
40
|
get aspect(): number;
|
|
37
41
|
set aspect(aspect: number);
|
|
38
42
|
get fov(): number;
|
|
@@ -46,7 +50,7 @@ export declare class Camera {
|
|
|
46
50
|
readonly engine: Engine;
|
|
47
51
|
readonly miris: Miris;
|
|
48
52
|
readonly scene: Scene;
|
|
49
|
-
constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
|
|
53
|
+
constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
|
|
50
54
|
}
|
|
51
55
|
|
|
52
56
|
export declare type CameraInit = {
|
|
@@ -56,6 +60,7 @@ export declare type CameraInit = {
|
|
|
56
60
|
far: number;
|
|
57
61
|
matrix: Matrix4x4Tuple;
|
|
58
62
|
scene: Scene;
|
|
63
|
+
viewportHeight?: number;
|
|
59
64
|
};
|
|
60
65
|
|
|
61
66
|
export declare class Change {
|
|
@@ -114,7 +119,6 @@ declare class Client {
|
|
|
114
119
|
takeRenderRequired(...args: ClientMethodParameters["takeRenderRequired"]): boolean;
|
|
115
120
|
unlockScene(...args: ClientMethodParameters["unlockScene"]): boolean;
|
|
116
121
|
updateSceneExecution(...args: ClientMethodParameters["updateSceneExecution"]): AquaStatus;
|
|
117
|
-
recordFrameTime(...args: ClientMethodParameters["recordFrameTime"]): AquaStatus;
|
|
118
122
|
}
|
|
119
123
|
|
|
120
124
|
declare type ClientInit = {
|
|
@@ -281,7 +285,8 @@ declare class Engine {
|
|
|
281
285
|
aspectRatio: number,
|
|
282
286
|
verticalFov: number,
|
|
283
287
|
nearPlane: number,
|
|
284
|
-
farPlane: number
|
|
288
|
+
farPlane: number,
|
|
289
|
+
viewportHeightPixels: number
|
|
285
290
|
]): AquaStatus;
|
|
286
291
|
setMaxCacheSize(...args: [maxSizeBytes: number]): void;
|
|
287
292
|
setSceneObjectTransform(...args: [
|
|
@@ -304,8 +309,15 @@ declare class Engine {
|
|
|
304
309
|
getActiveClientSideIdsCheckSum(): number;
|
|
305
310
|
unlockScene(...args: [handle: AquaClientHandle]): boolean;
|
|
306
311
|
updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
|
|
307
|
-
recordFrameTime(...args: [handle: AquaClientHandle, frameTimeMs: number]): AquaStatus;
|
|
308
312
|
takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
|
|
313
|
+
/**
|
|
314
|
+
* Advances the runtime by one frame and recomputes the streaming budget. Call once per
|
|
315
|
+
* displayed frame per context, before the per-client updateSceneExecution() calls.
|
|
316
|
+
* `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
|
|
317
|
+
* measurement (first frame, or a resume from a stall) and the frame advances without recording
|
|
318
|
+
* one.
|
|
319
|
+
*/
|
|
320
|
+
beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
|
|
309
321
|
createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
|
|
310
322
|
cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
|
|
311
323
|
submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
|
|
@@ -419,6 +431,7 @@ declare interface MainModule {
|
|
|
419
431
|
TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
|
|
420
432
|
GetActiveClientSideIdsCheckSum(): number;
|
|
421
433
|
TakeRenderRequired(handle: number): boolean;
|
|
434
|
+
BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
|
|
422
435
|
modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
|
|
423
436
|
setMaxCacheSize(maxSizeBytes: number): void;
|
|
424
437
|
}
|
|
@@ -452,17 +465,19 @@ export declare class Miris {
|
|
|
452
465
|
protected _xrSession: XRSession | null;
|
|
453
466
|
protected _requestAnimationFrame: RequestAnimationFrameFn | null;
|
|
454
467
|
signalResumeFromIdle(): void;
|
|
468
|
+
get _splatCountBudget(): number;
|
|
455
469
|
/**
|
|
456
470
|
* Why 43? Because the AVP throttles down to 45Hz :(
|
|
457
471
|
*/
|
|
458
472
|
static readonly _XR_TARGET_FRAME_RATE = 43;
|
|
473
|
+
/* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
|
|
459
474
|
/* Excluded from this release type: _setTargetFrameRate */
|
|
460
475
|
/* Excluded from this release type: _setXRModeActive */
|
|
461
476
|
/* Excluded from this release type: _setSplatCountBudgetOverride */
|
|
462
477
|
/* Excluded from this release type: _update */
|
|
463
478
|
getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
464
479
|
getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
|
|
465
|
-
|
|
480
|
+
/* Excluded from this release type: _updateForScene */
|
|
466
481
|
applyChanges(_entries: Change[]): void;
|
|
467
482
|
_computeAdditionalRenderNeeded(): boolean;
|
|
468
483
|
onColorSpaceDetected(_isLinear: boolean): void;
|
|
@@ -519,6 +534,18 @@ export declare class Scene extends EventTarget {
|
|
|
519
534
|
readonly client: Client;
|
|
520
535
|
readonly handle?: number;
|
|
521
536
|
constructor({ miris, viewerKey }: SceneInit);
|
|
537
|
+
/**
|
|
538
|
+
* Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
|
|
539
|
+
* displayed frame from the host's animation loop, and render when it returns true.
|
|
540
|
+
*
|
|
541
|
+
* Every scene on the page calls this from its own loop. The first call in a displayed frame
|
|
542
|
+
* drives one engine tick for all of them; the rest recognise the frame and reuse it.
|
|
543
|
+
*
|
|
544
|
+
* @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
|
|
545
|
+
* reads the same for every scene in a displayed frame. Pass it when the host runs its own
|
|
546
|
+
* clock, as an immersive XR session does, because XRFrame time is not the document timeline.
|
|
547
|
+
*/
|
|
548
|
+
update(ts?: DOMHighResTimeStamp): boolean;
|
|
522
549
|
dispose(): void;
|
|
523
550
|
/* Excluded from this release type: _getViewingVolumeObb */
|
|
524
551
|
fetchAssets(tags?: string | Iterable<string>): Promise<{
|