@opsydyn/effect-three 0.0.0-stage → 0.1.0
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/CHANGELOG.md +58 -0
- package/LICENSE +21 -0
- package/README.md +191 -2
- package/dist/index-4045wme0.js +129 -0
- package/dist/index-4045wme0.js.map +10 -0
- package/dist/index-ef8pbv9g.js +5118 -0
- package/dist/index-ef8pbv9g.js.map +40 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1361 -0
- package/dist/index.js.map +14 -0
- package/dist/kernel/animation.d.ts +14 -0
- package/dist/kernel/animation.d.ts.map +1 -0
- package/dist/kernel/behaviours.d.ts +16 -0
- package/dist/kernel/behaviours.d.ts.map +1 -0
- package/dist/kernel/bodies.d.ts +60 -0
- package/dist/kernel/bodies.d.ts.map +1 -0
- package/dist/kernel/bodySources.d.ts +47 -0
- package/dist/kernel/bodySources.d.ts.map +1 -0
- package/dist/kernel/build.d.ts +564 -0
- package/dist/kernel/build.d.ts.map +1 -0
- package/dist/kernel/cameraMotion.d.ts +39 -0
- package/dist/kernel/cameraMotion.d.ts.map +1 -0
- package/dist/kernel/clock.d.ts +17 -0
- package/dist/kernel/clock.d.ts.map +1 -0
- package/dist/kernel/contactShadowPasses.d.ts +47 -0
- package/dist/kernel/contactShadowPasses.d.ts.map +1 -0
- package/dist/kernel/description.d.ts +1120 -0
- package/dist/kernel/description.d.ts.map +1 -0
- package/dist/kernel/diff.d.ts +90 -0
- package/dist/kernel/diff.d.ts.map +1 -0
- package/dist/kernel/environmentPresets.d.ts +30 -0
- package/dist/kernel/environmentPresets.d.ts.map +1 -0
- package/dist/kernel/equality.d.ts +64 -0
- package/dist/kernel/equality.d.ts.map +1 -0
- package/dist/kernel/frames.d.ts +55 -0
- package/dist/kernel/frames.d.ts.map +1 -0
- package/dist/kernel/index.d.ts +37 -0
- package/dist/kernel/index.d.ts.map +1 -0
- package/dist/kernel/index.js +335 -0
- package/dist/kernel/index.js.map +9 -0
- package/dist/kernel/instances.d.ts +26 -0
- package/dist/kernel/instances.d.ts.map +1 -0
- package/dist/kernel/labels.d.ts +45 -0
- package/dist/kernel/labels.d.ts.map +1 -0
- package/dist/kernel/loop.d.ts +49 -0
- package/dist/kernel/loop.d.ts.map +1 -0
- package/dist/kernel/materials.d.ts +24 -0
- package/dist/kernel/materials.d.ts.map +1 -0
- package/dist/kernel/motion.d.ts +36 -0
- package/dist/kernel/motion.d.ts.map +1 -0
- package/dist/kernel/orbit.d.ts +127 -0
- package/dist/kernel/orbit.d.ts.map +1 -0
- package/dist/kernel/overlays.d.ts +16 -0
- package/dist/kernel/overlays.d.ts.map +1 -0
- package/dist/kernel/performance.d.ts +41 -0
- package/dist/kernel/performance.d.ts.map +1 -0
- package/dist/kernel/physics.d.ts +166 -0
- package/dist/kernel/physics.d.ts.map +1 -0
- package/dist/kernel/physicsDebug.d.ts +18 -0
- package/dist/kernel/physicsDebug.d.ts.map +1 -0
- package/dist/kernel/pointer.d.ts +357 -0
- package/dist/kernel/pointer.d.ts.map +1 -0
- package/dist/kernel/renderKit.d.ts +48 -0
- package/dist/kernel/renderKit.d.ts.map +1 -0
- package/dist/kernel/renderer.d.ts +83 -0
- package/dist/kernel/renderer.d.ts.map +1 -0
- package/dist/kernel/resources.d.ts +112 -0
- package/dist/kernel/resources.d.ts.map +1 -0
- package/dist/kernel/sceneGraph.d.ts +155 -0
- package/dist/kernel/sceneGraph.d.ts.map +1 -0
- package/dist/kernel/sceneIndex.d.ts +90 -0
- package/dist/kernel/sceneIndex.d.ts.map +1 -0
- package/dist/kernel/stage.d.ts +87 -0
- package/dist/kernel/stage.d.ts.map +1 -0
- package/dist/kernel/textLayout.d.ts +29 -0
- package/dist/kernel/textLayout.d.ts.map +1 -0
- package/dist/kernel/tween.d.ts +35 -0
- package/dist/kernel/tween.d.ts.map +1 -0
- package/dist/kernel/xrInput.d.ts +107 -0
- package/dist/kernel/xrInput.d.ts.map +1 -0
- package/dist/kernel/xrLocomotion.d.ts +38 -0
- package/dist/kernel/xrLocomotion.d.ts.map +1 -0
- package/dist/runtime/FrameSource.d.ts +29 -0
- package/dist/runtime/FrameSource.d.ts.map +1 -0
- package/dist/runtime/ResourceRegistry.d.ts +18 -0
- package/dist/runtime/ResourceRegistry.d.ts.map +1 -0
- package/dist/runtime/SceneRuntime.d.ts +68 -0
- package/dist/runtime/SceneRuntime.d.ts.map +1 -0
- package/dist/runtime/SceneSchema.d.ts +2536 -0
- package/dist/runtime/SceneSchema.d.ts.map +1 -0
- package/dist/runtime/errors.d.ts +19 -0
- package/dist/runtime/errors.d.ts.map +1 -0
- package/dist/runtime/index.d.ts +11 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/webgl/contactShadows.d.ts +5 -0
- package/dist/webgl/contactShadows.d.ts.map +1 -0
- package/dist/webgl/index.d.ts +11 -0
- package/dist/webgl/index.d.ts.map +1 -0
- package/dist/webgl/index.js +239 -0
- package/dist/webgl/index.js.map +13 -0
- package/dist/webgl/shaderGrid.d.ts +27 -0
- package/dist/webgl/shaderGrid.d.ts.map +1 -0
- package/dist/webgl/sky.d.ts +4 -0
- package/dist/webgl/sky.d.ts.map +1 -0
- package/dist/webgpu/contactShadows.d.ts +5 -0
- package/dist/webgpu/contactShadows.d.ts.map +1 -0
- package/dist/webgpu/index.d.ts +10 -0
- package/dist/webgpu/index.d.ts.map +1 -0
- package/dist/webgpu/index.js +216 -0
- package/dist/webgpu/index.js.map +13 -0
- package/dist/webgpu/shaderGrid.d.ts +5 -0
- package/dist/webgpu/shaderGrid.d.ts.map +1 -0
- package/dist/webgpu/sky.d.ts +4 -0
- package/dist/webgpu/sky.d.ts.map +1 -0
- package/package.json +82 -4
- package/src/index.ts +11 -0
- package/src/kernel/animation.ts +24 -0
- package/src/kernel/behaviours.ts +36 -0
- package/src/kernel/bodies.ts +338 -0
- package/src/kernel/bodySources.ts +203 -0
- package/src/kernel/build.ts +1325 -0
- package/src/kernel/cameraMotion.ts +202 -0
- package/src/kernel/clock.ts +35 -0
- package/src/kernel/contactShadowPasses.ts +207 -0
- package/src/kernel/description.ts +1197 -0
- package/src/kernel/diff.ts +383 -0
- package/src/kernel/environmentPresets.ts +38 -0
- package/src/kernel/equality.ts +604 -0
- package/src/kernel/frames.ts +124 -0
- package/src/kernel/index.ts +274 -0
- package/src/kernel/instances.ts +97 -0
- package/src/kernel/labels.ts +48 -0
- package/src/kernel/loop.ts +248 -0
- package/src/kernel/materials.ts +258 -0
- package/src/kernel/motion.ts +75 -0
- package/src/kernel/orbit.ts +554 -0
- package/src/kernel/overlays.ts +130 -0
- package/src/kernel/performance.ts +101 -0
- package/src/kernel/physics.ts +361 -0
- package/src/kernel/physicsDebug.ts +68 -0
- package/src/kernel/pointer.ts +785 -0
- package/src/kernel/renderKit.ts +53 -0
- package/src/kernel/renderer.ts +136 -0
- package/src/kernel/resources.ts +504 -0
- package/src/kernel/sceneGraph.ts +1440 -0
- package/src/kernel/sceneIndex.ts +219 -0
- package/src/kernel/stage.ts +157 -0
- package/src/kernel/textLayout.ts +102 -0
- package/src/kernel/tween.ts +80 -0
- package/src/kernel/xrInput.ts +230 -0
- package/src/kernel/xrLocomotion.ts +72 -0
- package/src/runtime/FrameSource.ts +41 -0
- package/src/runtime/ResourceRegistry.ts +24 -0
- package/src/runtime/SceneRuntime.ts +229 -0
- package/src/runtime/SceneSchema.ts +983 -0
- package/src/runtime/errors.ts +18 -0
- package/src/runtime/index.ts +10 -0
- package/src/webgl/contactShadows.ts +67 -0
- package/src/webgl/index.ts +19 -0
- package/src/webgl/shaderGrid.ts +196 -0
- package/src/webgl/sky.ts +42 -0
- package/src/webgpu/contactShadows.ts +83 -0
- package/src/webgpu/index.ts +19 -0
- package/src/webgpu/shaderGrid.ts +158 -0
- package/src/webgpu/sky.ts +35 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../src/kernel/description.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keyed diff: `(previous index, next description) => operations`.
|
|
3
|
+
*
|
|
4
|
+
* Pure. Operations are emitted in the order the applier must run them:
|
|
5
|
+
*
|
|
6
|
+
* 1. `SetCamera`, `DefineResources`
|
|
7
|
+
* 2. `Create`, `Replace`, `Move`, `Update` in depth-first pre-order (parents first)
|
|
8
|
+
* 3. `Remove`
|
|
9
|
+
* 4. `Order`, only where child order would otherwise be wrong
|
|
10
|
+
*
|
|
11
|
+
* Keys are unique across the scene, so a node keeps its identity when it moves between
|
|
12
|
+
* parents. A node whose kind changes under the same key is replaced.
|
|
13
|
+
*
|
|
14
|
+
* @module
|
|
15
|
+
*/
|
|
16
|
+
import type { Camera, RenderSettings, ResourceDefinitions, SceneDescription, SceneNode, View } from './description.ts';
|
|
17
|
+
import { type DescriptionError, type ParentKey, type SceneIndex } from './sceneIndex.ts';
|
|
18
|
+
/** A node property that an `Update` changes. */
|
|
19
|
+
export type Field = 'position' | 'rotation' | 'scale' | 'transition' | 'geometry' | 'material' | 'interactive' | 'color' | 'intensity' | 'groundColor' | 'target' | 'distance' | 'angle' | 'penumbra' | 'decay' | 'castShadow' | 'receiveShadow' | 'shadowMapSize' | 'shadowBias' | 'shadowArea' | 'instances' | 'id' | 'animation' | 'behaviour' | 'size' | 'divisions' | 'centerColor' | 'body'
|
|
20
|
+
/** A label's text or any of its type settings. */
|
|
21
|
+
| 'text'
|
|
22
|
+
/** A shader grid's look: anything but where it is. */
|
|
23
|
+
| 'grid'
|
|
24
|
+
/** The tracked space a group follows. */
|
|
25
|
+
| 'follow';
|
|
26
|
+
/** A single change to apply to the hosted scene graph. */
|
|
27
|
+
export type Op = {
|
|
28
|
+
readonly _tag: 'SetCamera';
|
|
29
|
+
readonly camera: Camera;
|
|
30
|
+
} | {
|
|
31
|
+
readonly _tag: 'SetViews';
|
|
32
|
+
readonly views: ReadonlyArray<View>;
|
|
33
|
+
}
|
|
34
|
+
/** A render texture was created, resized or its scene changed (its own operations). */
|
|
35
|
+
| {
|
|
36
|
+
readonly _tag: 'UpdateRenderTexture';
|
|
37
|
+
readonly id: string;
|
|
38
|
+
readonly ops: ReadonlyArray<Op>;
|
|
39
|
+
} | {
|
|
40
|
+
readonly _tag: 'RemoveRenderTexture';
|
|
41
|
+
readonly id: string;
|
|
42
|
+
} | {
|
|
43
|
+
readonly _tag: 'SetRenderSettings';
|
|
44
|
+
readonly settings: RenderSettings;
|
|
45
|
+
} | {
|
|
46
|
+
readonly _tag: 'DefineResources';
|
|
47
|
+
readonly resources: ResourceDefinitions;
|
|
48
|
+
} | {
|
|
49
|
+
readonly _tag: 'Create';
|
|
50
|
+
readonly node: SceneNode;
|
|
51
|
+
readonly parent: ParentKey;
|
|
52
|
+
} | {
|
|
53
|
+
readonly _tag: 'Replace';
|
|
54
|
+
readonly node: SceneNode;
|
|
55
|
+
readonly parent: ParentKey;
|
|
56
|
+
} | {
|
|
57
|
+
readonly _tag: 'Move';
|
|
58
|
+
readonly key: string;
|
|
59
|
+
readonly parent: ParentKey;
|
|
60
|
+
} | {
|
|
61
|
+
readonly _tag: 'Update';
|
|
62
|
+
readonly node: SceneNode;
|
|
63
|
+
readonly fields: ReadonlyArray<Field>;
|
|
64
|
+
} | {
|
|
65
|
+
readonly _tag: 'Remove';
|
|
66
|
+
readonly key: string;
|
|
67
|
+
} | {
|
|
68
|
+
readonly _tag: 'Order';
|
|
69
|
+
readonly parent: ParentKey;
|
|
70
|
+
readonly keys: ReadonlyArray<string>;
|
|
71
|
+
};
|
|
72
|
+
export type DiffResult = {
|
|
73
|
+
readonly _tag: 'Diffed';
|
|
74
|
+
readonly ops: ReadonlyArray<Op>;
|
|
75
|
+
readonly index: SceneIndex;
|
|
76
|
+
} | {
|
|
77
|
+
readonly _tag: 'Invalid';
|
|
78
|
+
readonly error: DescriptionError;
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Fields that differ between two nodes, or `undefined` when the kind changed and the
|
|
82
|
+
* node must be replaced.
|
|
83
|
+
*/
|
|
84
|
+
export declare const changedFields: (prev: SceneNode, next: SceneNode) => ReadonlyArray<Field> | undefined;
|
|
85
|
+
/**
|
|
86
|
+
* Diffs a validated previous scene against the next description. `behaviours` are the
|
|
87
|
+
* names registered with the scene; naming any other is invalid.
|
|
88
|
+
*/
|
|
89
|
+
export declare const diff: (prev: SceneIndex, next: SceneDescription, behaviours?: ReadonlySet<string>) => DiffResult;
|
|
90
|
+
//# sourceMappingURL=diff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../src/kernel/diff.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Drei's environment presets (`src/helpers/environment-assets.ts` and the `CUBEMAP_ROOT` of
|
|
3
|
+
* `src/core/useEnvironment.tsx` at `bf6f4ad`): Poly Haven HDR panoramas (CC0) on Drei's
|
|
4
|
+
* asset repository at the commit Drei pins, served by a CDN. Nothing is fetched until an
|
|
5
|
+
* application loads one, as an environment map lent like any other:
|
|
6
|
+
*
|
|
7
|
+
* ```ts
|
|
8
|
+
* environment.assets.loadEnvironment('sky', environmentPresetUrl('city'));
|
|
9
|
+
* scene({ environment: environment({ map: 'sky' }) });
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* @module
|
|
13
|
+
*/
|
|
14
|
+
/** Each preset's file. */
|
|
15
|
+
export declare const environmentPresets: {
|
|
16
|
+
apartment: string;
|
|
17
|
+
city: string;
|
|
18
|
+
dawn: string;
|
|
19
|
+
forest: string;
|
|
20
|
+
lobby: string;
|
|
21
|
+
night: string;
|
|
22
|
+
park: string;
|
|
23
|
+
studio: string;
|
|
24
|
+
sunset: string;
|
|
25
|
+
warehouse: string;
|
|
26
|
+
};
|
|
27
|
+
export type EnvironmentPreset = keyof typeof environmentPresets;
|
|
28
|
+
/** The URL of a preset's HDR file, for `assets.loadEnvironment`. */
|
|
29
|
+
export declare const environmentPresetUrl: (preset: EnvironmentPreset) => string;
|
|
30
|
+
//# sourceMappingURL=environmentPresets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environmentPresets.d.ts","sourceRoot":"","sources":["../../src/kernel/environmentPresets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,0BAA0B;AAC1B,eAAO,MAAM,kBAAkB;;;;;;;;;;;CAWa,CAAC;AAE7C,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAOhE,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,WAAY,iBAAiB,KAAG,MACd,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structural equality for description values. Reference equality is checked first, so
|
|
3
|
+
* unchanged subtrees reused between renders cost almost nothing.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
import type { Animation, Behave, Body, GeometryRef, Instance, Joint, XrSpace, ColliderDescription, LabelNode, ShaderGridNode, MaterialRef, Overlay, Physics, Camera, ContactShadows, Environment, PostEffect, RenderSettings, ResourceDefinitions, Rotation, ShapeGeometry, Sky, Xr, Transition, Vec3, View } from './description.ts';
|
|
8
|
+
/** Component-wise equality using `Object.is`, so `NaN` equals `NaN` and `0` differs from `-0`. */
|
|
9
|
+
export declare const vec3Equals: (a: Vec3, b: Vec3) => boolean;
|
|
10
|
+
/** Rotation equality, including behaviour parameters. */
|
|
11
|
+
export declare const rotationEquals: (a: Rotation, b: Rotation) => boolean;
|
|
12
|
+
/** Shape equality: same kind and same parameters. */
|
|
13
|
+
export declare const shapeEquals: (a: ShapeGeometry, b: ShapeGeometry) => boolean;
|
|
14
|
+
/** Geometry reference equality: same ownership mode and same shape or id. */
|
|
15
|
+
export declare const geometryRefEquals: (a: GeometryRef, b: GeometryRef) => boolean;
|
|
16
|
+
/** Instance equality: same key, placement and colour. */
|
|
17
|
+
export declare const instanceEquals: (a: Instance, b: Instance) => boolean;
|
|
18
|
+
/** Instance list equality, slot by slot. */
|
|
19
|
+
export declare const instancesEqual: (a: ReadonlyArray<Instance>, b: ReadonlyArray<Instance>) => boolean;
|
|
20
|
+
/** Behaviour equality: both none, or the same name and parameters. */
|
|
21
|
+
export declare const behaviourEquals: (a: Behave | null, b: Behave | null) => boolean;
|
|
22
|
+
/** Animation equality: both none, or the same clip, speed and looping. */
|
|
23
|
+
export declare const animationEquals: (a: Animation | null, b: Animation | null) => boolean;
|
|
24
|
+
/** Transition equality. */
|
|
25
|
+
export declare const transitionEquals: (a: Transition, b: Transition) => boolean;
|
|
26
|
+
/** Material reference equality: same ownership mode and same kind and parameters, or id. */
|
|
27
|
+
export declare const materialRefEquals: (a: MaterialRef, b: MaterialRef) => boolean;
|
|
28
|
+
/** Camera equality: same kind, same lens and same placement. */
|
|
29
|
+
export declare const cameraEquals: (a: Camera, b: Camera) => boolean;
|
|
30
|
+
/** Render settings equality. */
|
|
31
|
+
export declare const renderSettingsEquals: (a: RenderSettings, b: RenderSettings) => boolean;
|
|
32
|
+
/** Post-processing equality: the same effects, in order, with the same parameters. */
|
|
33
|
+
export declare const effectsEqual: (a: ReadonlyArray<PostEffect>, b: ReadonlyArray<PostEffect>) => boolean;
|
|
34
|
+
/** View list equality: the same views, in order, with equal cameras and rects. */
|
|
35
|
+
export declare const viewsEqual: (a: ReadonlyArray<View>, b: ReadonlyArray<View>) => boolean;
|
|
36
|
+
/** Order-sensitive equality of shared resource definitions. */
|
|
37
|
+
export declare const resourcesEqual: (a: ResourceDefinitions, b: ResourceDefinitions) => boolean;
|
|
38
|
+
/** Overlay list equality: the same overlays, in order, with equal fields. */
|
|
39
|
+
export declare const overlaysEqual: (a: ReadonlyArray<Overlay>, b: ReadonlyArray<Overlay>) => boolean;
|
|
40
|
+
/** Environment equality. */
|
|
41
|
+
export declare const environmentEquals: (a: Environment | null, b: Environment | null) => boolean;
|
|
42
|
+
/** Sky equality. */
|
|
43
|
+
export declare const skyEquals: (a: Sky | null, b: Sky | null) => boolean;
|
|
44
|
+
/** Contact shadow equality. */
|
|
45
|
+
export declare const contactShadowsEquals: (a: ContactShadows | null, b: ContactShadows | null) => boolean;
|
|
46
|
+
/** Body equality, field by field. */
|
|
47
|
+
export declare const bodyEquals: (a: Body | null, b: Body | null) => boolean;
|
|
48
|
+
/** Equality of a body's own colliders (`null` for colliders from its geometry). */
|
|
49
|
+
export declare const collidersEqual: (a: ReadonlyArray<ColliderDescription> | null, b: ReadonlyArray<ColliderDescription> | null) => boolean;
|
|
50
|
+
/** Joint equality. */
|
|
51
|
+
export declare const jointEquals: (a: Joint, b: Joint) => boolean;
|
|
52
|
+
/** Label text and type settings equality: everything but the transform and picking. */
|
|
53
|
+
export declare const labelTypeEquals: (a: LabelNode, b: LabelNode) => boolean;
|
|
54
|
+
/** A label's material reference equality (`null` for troika's own). */
|
|
55
|
+
export declare const labelMaterialEquals: (a: MaterialRef | null, b: MaterialRef | null) => boolean;
|
|
56
|
+
/** Shader grid equality, apart from its position and rotation. */
|
|
57
|
+
export declare const shaderGridLookEquals: (a: ShaderGridNode, b: ShaderGridNode) => boolean;
|
|
58
|
+
/** Physics world equality. */
|
|
59
|
+
export declare const physicsEquals: (a: Physics | null, b: Physics | null) => boolean;
|
|
60
|
+
/** Immersive presentation equality. */
|
|
61
|
+
export declare const xrEquals: (a: Xr | null, b: Xr | null) => boolean;
|
|
62
|
+
/** Tracked space equality. */
|
|
63
|
+
export declare const xrSpaceEquals: (a: XrSpace | null, b: XrSpace | null) => boolean;
|
|
64
|
+
//# sourceMappingURL=equality.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"equality.d.ts","sourceRoot":"","sources":["../../src/kernel/equality.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Frame scheduling contracts. A scheduler calls registered callbacks once per frame:
|
|
3
|
+
* `requestAnimationFrame` in a browser, three's `setAnimationLoop` for WebGPU and XR, or
|
|
4
|
+
* a manual scheduler in tests.
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
/** Registers a per-frame callback and returns a function that unregisters it. */
|
|
9
|
+
export type FrameScheduler = {
|
|
10
|
+
readonly subscribe: (onFrame: () => void) => () => void;
|
|
11
|
+
};
|
|
12
|
+
/** A scheduler driven by hand. `step` runs one frame for every subscriber. */
|
|
13
|
+
export type ManualFrames = FrameScheduler & {
|
|
14
|
+
readonly step: () => void;
|
|
15
|
+
readonly subscribers: () => number;
|
|
16
|
+
};
|
|
17
|
+
/** Creates a manual frame scheduler for deterministic tests. */
|
|
18
|
+
export declare const createManualFrames: () => ManualFrames;
|
|
19
|
+
/** A scheduler that forwards frames only while open. */
|
|
20
|
+
export type GatedFrames = FrameScheduler & {
|
|
21
|
+
readonly setOpen: (open: boolean) => void;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Wraps `base` so frames pass only while open: for example, only while the canvas is on
|
|
25
|
+
* screen, or only while a scene has something to draw. A closed gate unsubscribes from
|
|
26
|
+
* `base`, so a scheduler that stops when nobody listens (such as the browser's animation
|
|
27
|
+
* frames) really stops.
|
|
28
|
+
*/
|
|
29
|
+
export declare const createGatedFrames: (base: FrameScheduler) => GatedFrames;
|
|
30
|
+
/** Turns a scene's frames on and off. Off unsubscribes, so an idle scheduler can stop. */
|
|
31
|
+
export type FrameControl = {
|
|
32
|
+
readonly wake: () => void;
|
|
33
|
+
readonly sleep: () => void;
|
|
34
|
+
};
|
|
35
|
+
/** The part of a scene loop that pacing needs. */
|
|
36
|
+
export type Paced = {
|
|
37
|
+
readonly frame: () => void;
|
|
38
|
+
readonly wantsFrames: () => boolean;
|
|
39
|
+
};
|
|
40
|
+
export type FramePacer = {
|
|
41
|
+
/** The per-frame callback: draws, then sleeps when no further frame is wanted. */
|
|
42
|
+
readonly frame: () => void;
|
|
43
|
+
/** Connects the subscription's control, putting it to sleep if nothing is wanted yet. */
|
|
44
|
+
readonly attach: (control: FrameControl) => void;
|
|
45
|
+
/** Wakes the subscription if a frame is now wanted. Call on every invalidation. */
|
|
46
|
+
readonly wake: () => void;
|
|
47
|
+
/** Draws one frame now, whatever the mode: React Three Fiber's `advance`. */
|
|
48
|
+
readonly advance: () => void;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Paces a scene's frames: subscribed while frames are wanted, asleep otherwise, so an
|
|
52
|
+
* idle scene costs no frames at all.
|
|
53
|
+
*/
|
|
54
|
+
export declare const createFramePacer: (loop: Paced) => FramePacer;
|
|
55
|
+
//# sourceMappingURL=frames.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frames.d.ts","sourceRoot":"","sources":["../../src/kernel/frames.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,iFAAiF;AACjF,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;CACzD,CAAC;AAEF,8EAA8E;AAC9E,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,MAAM,CAAC;CACpC,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,kBAAkB,QAAO,YAerC,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG;IACzC,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,SAAU,cAAc,KAAG,WA8BxD,CAAC;AAEF,0FAA0F;AAC1F,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAC;AAEF,kDAAkD;AAClD,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,kFAAkF;IAClF,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC;IAC3B,yFAAyF;IACzF,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACjD,mFAAmF;IACnF,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,SAAU,KAAK,KAAG,UAgB9C,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The non-Effect kernel (ADR-003): descriptions, keyed diff, applier, behaviours and
|
|
3
|
+
* resource ownership. Synchronous, allocation-conscious and DOM-free.
|
|
4
|
+
*
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
export type * from './description.ts';
|
|
8
|
+
export { handJoints } from './description.ts';
|
|
9
|
+
export { clipRunning, clipTime } from './animation.ts';
|
|
10
|
+
export { type Behaviour, type BehaviourPose, builtinBehaviours, createPose, float, resetPose, } from './motion.ts';
|
|
11
|
+
export { spinAngle, writeRotation } from './behaviours.ts';
|
|
12
|
+
export { buildMaterial, type HostMaterial, type Textures, updateMaterial } from './materials.ts';
|
|
13
|
+
export { capacityFor, type HostInstances } from './instances.ts';
|
|
14
|
+
export { createPerformanceMonitor, type PerformanceChange, type PerformanceMonitor, type PerformanceOptions, } from './performance.ts';
|
|
15
|
+
export { applyTween, easeProgress, startTween, type Tween } from './tween.ts';
|
|
16
|
+
export { ambientLight, basic, behave, bloom, borrowed, box, capsule, body, circle, colorRange, xr, glide, xrAnchor, headSpace, jointSpace, controllerSpace, anchorSpace, planeSpace, meshSpace, xrMesh, xrMeshGeometryId, physics, cuboidCollider, ballCollider, capsuleCollider, cylinderCollider, coneCollider, velocityMotor, interactionGroups, positionMotor, shaderGrid, label, bodyRef, joint, fixedJoint, sphericalJoint, revoluteJoint, prismaticJoint, ropeJoint, springJoint, contactShadows, grid, sky, sunPositionFromAngles, environment, text, cone, cylinder, directionalLight, ease, film, fixed, group, hemisphereLight, instance, instances, instant, lambert, mesh, normalMaterial, shadowMaterial, orthographicCamera, perspectiveCamera, phong, play, physical, plane, pointLight, renderSettings, ring, scene, sharedGeometry, lentGeometry, sharedMaterial, sphere, spin, spotLight, standard, overlay, renderTexture, torus, type TransformOptions, view, vignette, } from './build.ts';
|
|
17
|
+
export { changedFields, diff, type DiffResult, type Field, type Op } from './diff.ts';
|
|
18
|
+
export { cameraEquals, animationEquals, behaviourEquals, effectsEqual, geometryRefEquals, instanceEquals, instancesEqual, materialRefEquals, resourcesEqual, renderSettingsEquals, rotationEquals, shapeEquals, transitionEquals, environmentEquals, contactShadowsEquals, bodyEquals, overlaysEqual, xrEquals, physicsEquals, skyEquals, viewsEqual, vec3Equals, } from './equality.ts';
|
|
19
|
+
export { createResourceStore, type GeometryReplaced, type Loan, type MaterialReplaced, type ResourceCounts, type ResourceStats, type ResourceStore, } from './resources.ts';
|
|
20
|
+
export { createSceneClock, type SceneClock } from './clock.ts';
|
|
21
|
+
export { createFramePacer, createGatedFrames, type FrameControl, type FramePacer, createManualFrames, type FrameScheduler, type GatedFrames, type ManualFrames, } from './frames.ts';
|
|
22
|
+
export { autoRotated, type Box, clipCamera, type Cursor, defaultOrbit, dollyCamera, dollyCameraToward, fitCamera, orbit, type OrbitKey, orbitKey, type OrbitOptions, orbitOptions, panCamera, rotateCamera, } from './orbit.ts';
|
|
23
|
+
export { type OverlayPlacement, placeOverlays } from './overlays.ts';
|
|
24
|
+
export { type BodyPose, type Collider, type ColliderShape, colliderFor, collidersFor, colliderSignature, type Collision, type ContactForce, type DebugLines, describedColliders, interactionBits, type PhysicsEngine, type PhysicsJoint, type PhysicsWorld, type Quat, } from './physics.ts';
|
|
25
|
+
export type { BodyCollision, BodyContactForce } from './bodies.ts';
|
|
26
|
+
export type { ContactShadowPasses, HostedShaderGrid, HostedSky, RenderKit, ShadowedScene, } from './renderKit.ts';
|
|
27
|
+
export { glided, type LocomotionOptions, locomote, teleport } from './xrLocomotion.ts';
|
|
28
|
+
export { createXrTracker, type XrButtonName, type XrHand, type XrInput, type XrMesh, type XrPlane, type XrStickDirection, } from './xrInput.ts';
|
|
29
|
+
export type { HostedLabel, LabelEngine, LabelLayout } from './labels.ts';
|
|
30
|
+
export { type EnvironmentPreset, environmentPresets, environmentPresetUrl, } from './environmentPresets.ts';
|
|
31
|
+
export { type CenterAlign, centerOffset, type Stage, stage, stageBounds, type StageLighting, type StagePreset, stagePresets, } from './stage.ts';
|
|
32
|
+
export { createSceneLoop, type SceneLoop, type SceneLoopOptions } from './loop.ts';
|
|
33
|
+
export { createPicker, createPointerTracker, type Gesture, type Hit, type Modifiers, noModifiers, type Picker, type PlaneEquation, pointOnPlane, type PointerInput, type PointerTracker, type Ray, type Region, type SceneEvent, } from './pointer.ts';
|
|
34
|
+
export { recordingRendererFactory, type RecordingRenderer, type RenderArea, type RenderTarget, type RecordingRendererFactory, type RendererFactory, type RendererMemory, type SceneRenderer, type Viewport, } from './renderer.ts';
|
|
35
|
+
export { createSceneGraph, type HostCamera, type HostedTexture, type HostedView, type HostMesh, type ReconcileResult, type SceneGraph, type SceneGraphOptions, } from './sceneGraph.ts';
|
|
36
|
+
export { type DescriptionError, emptyIndex, type IndexedNode, indexScene, type IndexResult, type ParentKey, type SceneIndex, } from './sceneIndex.ts';
|
|
37
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/kernel/index.ts"],"names":[],"mappings":"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"}
|