@aura3d/engine 4.0.7 → 4.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/dist/audio/index.d.ts +1 -0
- package/dist/audio/index.d.ts.map +1 -1
- package/dist/audio/index.js +1 -0
- package/dist/audio/index.js.map +1 -1
- package/dist/audio/synth/SampleSlices.d.ts +88 -0
- package/dist/audio/synth/SampleSlices.d.ts.map +1 -0
- package/dist/audio/synth/SampleSlices.js +185 -0
- package/dist/audio/synth/SampleSlices.js.map +1 -0
- package/dist/audio/synth/SynthCueBank.d.ts +102 -0
- package/dist/audio/synth/SynthCueBank.d.ts.map +1 -0
- package/dist/audio/synth/SynthCueBank.js +323 -0
- package/dist/audio/synth/SynthCueBank.js.map +1 -0
- package/dist/audio/synth/SynthLoops.d.ts +77 -0
- package/dist/audio/synth/SynthLoops.d.ts.map +1 -0
- package/dist/audio/synth/SynthLoops.js +147 -0
- package/dist/audio/synth/SynthLoops.js.map +1 -0
- package/dist/audio/synth/index.d.ts +9 -0
- package/dist/audio/synth/index.d.ts.map +1 -0
- package/dist/audio/synth/index.js +5 -0
- package/dist/audio/synth/index.js.map +1 -0
- package/dist/audio/synth/notes.d.ts +18 -0
- package/dist/audio/synth/notes.d.ts.map +1 -0
- package/dist/audio/synth/notes.js +35 -0
- package/dist/audio/synth/notes.js.map +1 -0
- package/dist/audio/synth/types.d.ts +84 -0
- package/dist/audio/synth/types.d.ts.map +1 -0
- package/dist/audio/synth/types.js +2 -0
- package/dist/audio/synth/types.js.map +1 -0
- package/dist/aura3d-cli/cli-help.d.ts.map +1 -1
- package/dist/aura3d-cli/cli-help.js +6 -0
- package/dist/aura3d-cli/cli-help.js.map +1 -1
- package/dist/aura3d-cli/cli.js +33 -0
- package/dist/aura3d-cli/cli.js.map +1 -1
- package/dist/aura3d-cli/commands/assets/gltfToolkit.d.ts +25 -0
- package/dist/aura3d-cli/commands/assets/gltfToolkit.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/assets/gltfToolkit.js +59 -0
- package/dist/aura3d-cli/commands/assets/gltfToolkit.js.map +1 -0
- package/dist/aura3d-cli/commands/assets/importMeshy.d.ts +50 -0
- package/dist/aura3d-cli/commands/assets/importMeshy.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/assets/importMeshy.js +112 -0
- package/dist/aura3d-cli/commands/assets/importMeshy.js.map +1 -0
- package/dist/aura3d-cli/commands/assets/index.d.ts +6 -0
- package/dist/aura3d-cli/commands/assets/index.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/assets/index.js +54 -0
- package/dist/aura3d-cli/commands/assets/index.js.map +1 -0
- package/dist/aura3d-cli/commands/assets/mergeClips.d.ts +44 -0
- package/dist/aura3d-cli/commands/assets/mergeClips.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/assets/mergeClips.js +103 -0
- package/dist/aura3d-cli/commands/assets/mergeClips.js.map +1 -0
- package/dist/aura3d-cli/commands/assets/optimize.d.ts +54 -0
- package/dist/aura3d-cli/commands/assets/optimize.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/assets/optimize.js +76 -0
- package/dist/aura3d-cli/commands/assets/optimize.js.map +1 -0
- package/dist/aura3d-cli/commands/assets/optimizeVerb.d.ts +9 -0
- package/dist/aura3d-cli/commands/assets/optimizeVerb.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/assets/optimizeVerb.js +40 -0
- package/dist/aura3d-cli/commands/assets/optimizeVerb.js.map +1 -0
- package/dist/aura3d-cli/commands/meshyLedger.d.ts +103 -0
- package/dist/aura3d-cli/commands/meshyLedger.d.ts.map +1 -0
- package/dist/aura3d-cli/commands/meshyLedger.js +308 -0
- package/dist/aura3d-cli/commands/meshyLedger.js.map +1 -0
- package/dist/aura3d-cli/commands/prd05/index.d.ts.map +1 -1
- package/dist/aura3d-cli/commands/prd05/index.js +8 -2
- package/dist/aura3d-cli/commands/prd05/index.js.map +1 -1
- package/dist/aura3d-cli/commands/registry.d.ts +1 -0
- package/dist/aura3d-cli/commands/registry.d.ts.map +1 -1
- package/dist/aura3d-cli/commands/registry.js +1 -0
- package/dist/aura3d-cli/commands/registry.js.map +1 -1
- package/dist/create-aura3d/index.js +1 -1
- package/dist/debug/index.d.ts +2 -0
- package/dist/debug/index.d.ts.map +1 -1
- package/dist/debug/index.js +1 -0
- package/dist/debug/index.js.map +1 -1
- package/dist/debug/safety/blackFrame.d.ts +45 -0
- package/dist/debug/safety/blackFrame.d.ts.map +1 -0
- package/dist/debug/safety/blackFrame.js +109 -0
- package/dist/debug/safety/blackFrame.js.map +1 -0
- package/dist/debug/safety/diagnosticsPanel.d.ts +53 -0
- package/dist/debug/safety/diagnosticsPanel.d.ts.map +1 -0
- package/dist/debug/safety/diagnosticsPanel.js +117 -0
- package/dist/debug/safety/diagnosticsPanel.js.map +1 -0
- package/dist/debug/safety/index.d.ts +47 -0
- package/dist/debug/safety/index.d.ts.map +1 -0
- package/dist/debug/safety/index.js +61 -0
- package/dist/debug/safety/index.js.map +1 -0
- package/dist/debug/safety/switches.d.ts +27 -0
- package/dist/debug/safety/switches.d.ts.map +1 -0
- package/dist/debug/safety/switches.js +23 -0
- package/dist/debug/safety/switches.js.map +1 -0
- package/dist/engine/agent-api/app/runtimeNodes.d.ts.map +1 -1
- package/dist/engine/agent-api/app/runtimeNodes.js +15 -0
- package/dist/engine/agent-api/app/runtimeNodes.js.map +1 -1
- package/dist/engine/agent-api/assets/productionModels.d.ts +58 -0
- package/dist/engine/agent-api/assets/productionModels.d.ts.map +1 -0
- package/dist/engine/agent-api/assets/productionModels.js +103 -0
- package/dist/engine/agent-api/assets/productionModels.js.map +1 -0
- package/dist/engine/agent-api/compiler/customMaterial.d.ts +7 -0
- package/dist/engine/agent-api/compiler/customMaterial.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/customMaterial.js +20 -3
- package/dist/engine/agent-api/compiler/customMaterial.js.map +1 -1
- package/dist/engine/agent-api/compiler/errors.d.ts +1 -1
- package/dist/engine/agent-api/compiler/errors.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/errors.js.map +1 -1
- package/dist/engine/agent-api/compiler/lines.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/lines.js +10 -1
- package/dist/engine/agent-api/compiler/lines.js.map +1 -1
- package/dist/engine/agent-api/compiler/renderInput.d.ts.map +1 -1
- package/dist/engine/agent-api/compiler/renderInput.js +12 -3
- package/dist/engine/agent-api/compiler/renderInput.js.map +1 -1
- package/dist/engine/agent-api/game-kits/ballFlight.d.ts +145 -0
- package/dist/engine/agent-api/game-kits/ballFlight.d.ts.map +1 -0
- package/dist/engine/agent-api/game-kits/ballFlight.js +308 -0
- package/dist/engine/agent-api/game-kits/ballFlight.js.map +1 -0
- package/dist/engine/agent-api/game-kits/index.d.ts +9 -5
- package/dist/engine/agent-api/game-kits/index.d.ts.map +1 -1
- package/dist/engine/agent-api/game-kits/index.js +1 -0
- package/dist/engine/agent-api/game-kits/index.js.map +1 -1
- package/dist/engine/agent-api/game-kits/racketAthleteRig.d.ts +107 -0
- package/dist/engine/agent-api/game-kits/racketAthleteRig.d.ts.map +1 -0
- package/dist/engine/agent-api/game-kits/racketAthleteRig.js +178 -0
- package/dist/engine/agent-api/game-kits/racketAthleteRig.js.map +1 -0
- package/dist/engine/agent-api/game-kits/racketGeometry.d.ts +8 -0
- package/dist/engine/agent-api/game-kits/racketGeometry.d.ts.map +1 -0
- package/dist/engine/agent-api/game-kits/racketGeometry.js +73 -0
- package/dist/engine/agent-api/game-kits/racketGeometry.js.map +1 -0
- package/dist/engine/agent-api/game-kits/racketScoring.d.ts +53 -0
- package/dist/engine/agent-api/game-kits/racketScoring.d.ts.map +1 -0
- package/dist/engine/agent-api/game-kits/racketScoring.js +69 -0
- package/dist/engine/agent-api/game-kits/racketScoring.js.map +1 -0
- package/dist/engine/agent-api/game-kits/racketSports.d.ts +20 -6
- package/dist/engine/agent-api/game-kits/racketSports.d.ts.map +1 -1
- package/dist/engine/agent-api/game-kits/racketSports.js +15 -74
- package/dist/engine/agent-api/game-kits/racketSports.js.map +1 -1
- package/dist/engine/agent-api/index.d.ts +7 -0
- package/dist/engine/agent-api/index.d.ts.map +1 -1
- package/dist/engine/agent-api/index.js +5 -0
- package/dist/engine/agent-api/index.js.map +1 -1
- package/dist/engine/agent-api/nodes/batched.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/batched.js +63 -3
- package/dist/engine/agent-api/nodes/batched.js.map +1 -1
- package/dist/engine/agent-api/nodes/batchedState.d.ts +5 -0
- package/dist/engine/agent-api/nodes/batchedState.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/batchedState.js +10 -0
- package/dist/engine/agent-api/nodes/batchedState.js.map +1 -1
- package/dist/engine/agent-api/nodes/instances.js +1 -2
- package/dist/engine/agent-api/nodes/instances.js.map +1 -1
- package/dist/engine/agent-api/nodes/lines.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/lines.js +2 -1
- package/dist/engine/agent-api/nodes/lines.js.map +1 -1
- package/dist/engine/agent-api/nodes/mergeStatic.d.ts +26 -0
- package/dist/engine/agent-api/nodes/mergeStatic.d.ts.map +1 -0
- package/dist/engine/agent-api/nodes/mergeStatic.js +126 -0
- package/dist/engine/agent-api/nodes/mergeStatic.js.map +1 -0
- package/dist/engine/agent-api/nodes/scatter.d.ts +116 -0
- package/dist/engine/agent-api/nodes/scatter.d.ts.map +1 -0
- package/dist/engine/agent-api/nodes/scatter.js +211 -0
- package/dist/engine/agent-api/nodes/scatter.js.map +1 -0
- package/dist/engine/agent-api/nodes/scene.d.ts +9 -1
- package/dist/engine/agent-api/nodes/scene.d.ts.map +1 -1
- package/dist/engine/agent-api/nodes/scene.js +28 -2
- package/dist/engine/agent-api/nodes/scene.js.map +1 -1
- package/dist/engine/agent-api/sceneMath.d.ts +6 -0
- package/dist/engine/agent-api/sceneMath.d.ts.map +1 -1
- package/dist/engine/agent-api/sceneMath.js +6 -2
- package/dist/engine/agent-api/sceneMath.js.map +1 -1
- package/dist/engine/contracts/stubs/game.d.ts +0 -8
- package/dist/engine/contracts/stubs/game.d.ts.map +1 -1
- package/dist/engine/contracts/stubs/game.js +6 -0
- package/dist/engine/contracts/stubs/game.js.map +1 -1
- package/dist/engine/deprecated/advanced-runtime.js +2 -2
- package/dist/engine/deprecated/apps.js +2 -2
- package/dist/engine/deprecated/assets-browser.js +2 -2
- package/dist/engine/deprecated/contracts.js +2 -2
- package/dist/engine/deprecated/media-node.js +2 -2
- package/dist/engine/deprecated/production-runtime.js +2 -2
- package/dist/engine/deprecated/rendering-production-runtime.js +2 -2
- package/dist/engine/deprecated/rendering-webgpu.js +2 -2
- package/dist/engine/deprecated/rendering.js +2 -2
- package/dist/engine/deprecated/workflows-production.js +2 -2
- package/dist/engine/index.d.ts +1 -0
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +1 -0
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/instances-model/InstancedModel.d.ts.map +1 -1
- package/dist/engine/instances-model/InstancedModel.js +2 -5
- package/dist/engine/instances-model/InstancedModel.js.map +1 -1
- package/dist/engine/production-runtime/TypedGLBActor.d.ts +6 -0
- package/dist/engine/production-runtime/TypedGLBActor.d.ts.map +1 -1
- package/dist/engine/production-runtime/TypedGLBActor.js +8 -1
- package/dist/engine/production-runtime/TypedGLBActor.js.map +1 -1
- package/dist/engine/production-runtime/actor/ModelTextureShare.d.ts +38 -0
- package/dist/engine/production-runtime/actor/ModelTextureShare.d.ts.map +1 -0
- package/dist/engine/production-runtime/actor/ModelTextureShare.js +65 -0
- package/dist/engine/production-runtime/actor/ModelTextureShare.js.map +1 -0
- package/dist/engine/public/index.d.ts +71 -67
- package/dist/engine/public/index.d.ts.map +1 -1
- package/dist/engine/public/index.js +59 -54
- package/dist/engine/public/index.js.map +1 -1
- package/dist/engine/qa/countedRng.d.ts +16 -0
- package/dist/engine/qa/countedRng.d.ts.map +1 -0
- package/dist/engine/qa/countedRng.js +40 -0
- package/dist/engine/qa/countedRng.js.map +1 -0
- package/dist/engine/qa/fixedStepLoop.d.ts +43 -0
- package/dist/engine/qa/fixedStepLoop.d.ts.map +1 -0
- package/dist/engine/qa/fixedStepLoop.js +83 -0
- package/dist/engine/qa/fixedStepLoop.js.map +1 -0
- package/dist/engine/qa/hooks.d.ts +80 -0
- package/dist/engine/qa/hooks.d.ts.map +1 -0
- package/dist/engine/qa/hooks.js +95 -0
- package/dist/engine/qa/hooks.js.map +1 -0
- package/dist/engine/qa/index.d.ts +10 -0
- package/dist/engine/qa/index.d.ts.map +1 -0
- package/dist/engine/qa/index.js +6 -0
- package/dist/engine/qa/index.js.map +1 -0
- package/dist/engine/qa/params.d.ts +38 -0
- package/dist/engine/qa/params.d.ts.map +1 -0
- package/dist/engine/qa/params.js +35 -0
- package/dist/engine/qa/params.js.map +1 -0
- package/dist/game/capture/captureFromUrl.d.ts +1 -1
- package/dist/game/capture/captureFromUrl.d.ts.map +1 -1
- package/dist/game/capture/index.d.ts +1 -1
- package/dist/game/capture/index.d.ts.map +1 -1
- package/dist/game/components.d.ts +1 -1
- package/dist/game/components.d.ts.map +1 -1
- package/dist/game/createGame.d.ts +1 -1
- package/dist/game/createGame.d.ts.map +1 -1
- package/dist/game/createGame.js +1 -1
- package/dist/game/createGame.js.map +1 -1
- package/dist/game/evidence/beacon.d.ts +1 -1
- package/dist/game/evidence/beacon.d.ts.map +1 -1
- package/dist/game/flagDefault.d.ts +8 -0
- package/dist/game/flagDefault.d.ts.map +1 -0
- package/dist/game/flagDefault.js +28 -0
- package/dist/game/flagDefault.js.map +1 -0
- package/dist/game/index.d.ts +4 -2
- package/dist/game/index.d.ts.map +1 -1
- package/dist/game/index.js +10 -3
- package/dist/game/index.js.map +1 -1
- package/dist/game/input/bindingStore.d.ts +87 -0
- package/dist/game/input/bindingStore.d.ts.map +1 -0
- package/dist/game/input/bindingStore.js +164 -0
- package/dist/game/input/bindingStore.js.map +1 -0
- package/dist/game/session/GameSession.d.ts +2 -2
- package/dist/game/session/GameSession.d.ts.map +1 -1
- package/dist/game/session/GameSession.js +1 -1
- package/dist/game/session/GameSession.js.map +1 -1
- package/dist/rendering/ForwardPass.d.ts +5 -0
- package/dist/rendering/ForwardPass.d.ts.map +1 -1
- package/dist/rendering/ForwardPass.js +13 -3
- package/dist/rendering/ForwardPass.js.map +1 -1
- package/dist/rendering/MaterialBinding.d.ts.map +1 -1
- package/dist/rendering/MaterialBinding.js +11 -1
- package/dist/rendering/MaterialBinding.js.map +1 -1
- package/dist/rendering/Renderer.d.ts +8 -0
- package/dist/rendering/Renderer.d.ts.map +1 -1
- package/dist/rendering/Renderer.js +7 -0
- package/dist/rendering/Renderer.js.map +1 -1
- package/dist/rendering/ShaderLibrary.js +5 -5
- package/dist/rendering/ShaderLibraryCore.js +1 -1
- package/dist/rendering/WebGPUDevice.js +1 -1
- package/dist/rendering/index.d.ts +1 -0
- package/dist/rendering/index.d.ts.map +1 -1
- package/dist/rendering/index.js +1 -0
- package/dist/rendering/index.js.map +1 -1
- package/dist/rendering/output/ToneMappingOperators.glsl.d.ts +1 -1
- package/dist/rendering/output/ToneMappingOperators.glsl.d.ts.map +1 -1
- package/dist/rendering/output/ToneMappingOperators.glsl.js +2 -0
- package/dist/rendering/output/ToneMappingOperators.glsl.js.map +1 -1
- package/dist/rendering/program/chunks/shadow_forward.glsl.d.ts +2 -2
- package/dist/rendering/program/chunks/shadow_forward.glsl.d.ts.map +1 -1
- package/dist/rendering/program/chunks/shadow_forward.glsl.js +1 -1
- package/dist/rendering/shaders/chunks/author/colorspace.glsl.d.ts +8 -0
- package/dist/rendering/shaders/chunks/author/colorspace.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/colorspace.glsl.js +20 -0
- package/dist/rendering/shaders/chunks/author/colorspace.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/fog.glsl.d.ts +3 -0
- package/dist/rendering/shaders/chunks/author/fog.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/fog.glsl.js +18 -0
- package/dist/rendering/shaders/chunks/author/fog.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/index.d.ts +16 -0
- package/dist/rendering/shaders/chunks/author/index.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/index.js +77 -0
- package/dist/rendering/shaders/chunks/author/index.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/math.glsl.d.ts +3 -0
- package/dist/rendering/shaders/chunks/author/math.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/math.glsl.js +43 -0
- package/dist/rendering/shaders/chunks/author/math.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/noise.glsl.d.ts +3 -0
- package/dist/rendering/shaders/chunks/author/noise.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/noise.glsl.js +94 -0
- package/dist/rendering/shaders/chunks/author/noise.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/sky.glsl.d.ts +3 -0
- package/dist/rendering/shaders/chunks/author/sky.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/sky.glsl.js +28 -0
- package/dist/rendering/shaders/chunks/author/sky.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/toon.glsl.d.ts +3 -0
- package/dist/rendering/shaders/chunks/author/toon.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/toon.glsl.js +21 -0
- package/dist/rendering/shaders/chunks/author/toon.glsl.js.map +1 -0
- package/dist/rendering/shaders/chunks/author/triplanar.glsl.d.ts +3 -0
- package/dist/rendering/shaders/chunks/author/triplanar.glsl.d.ts.map +1 -0
- package/dist/rendering/shaders/chunks/author/triplanar.glsl.js +14 -0
- package/dist/rendering/shaders/chunks/author/triplanar.glsl.js.map +1 -0
- package/dist/rendering/webgl2/LegacyPost.d.ts.map +1 -1
- package/dist/rendering/webgl2/LegacyPost.js +3 -2
- package/dist/rendering/webgl2/LegacyPost.js.map +1 -1
- package/package.json +33 -26
- package/templates/cinematic-scene/package.json +2 -2
- package/templates/mini-game/package.json +2 -2
- package/templates/product-viewer/package.json +2 -2
- package/templates/production-asset-inspector/package.json +1 -1
- package/templates/production-material-studio/package.json +1 -1
- package/templates/production-product-configurator/package.json +1 -1
- package/templates/production-product-viewer/package.json +1 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* createBindingStore: validated, persisted, rebindable input bindings for games (keyboard primary + optional alternate
|
|
3
|
+
* keys, controller buttons), with reserved keys and conflict detection. Extracted from the Aura Slam 3D controls store
|
|
4
|
+
* (controls.js), which it reproduces exactly when configured with that game's actions.
|
|
5
|
+
*
|
|
6
|
+
* Pure: no DOM; storage is injected (`localStorage` in a browser). Corrupt, wrong-version or invalid stored data falls
|
|
7
|
+
* back to the defaults per device; write failures never throw and are reported as `saved: false`.
|
|
8
|
+
*
|
|
9
|
+
* TODO(WP-1): export through the public `@aura3d/engine/game` subpath once the game kit is published.
|
|
10
|
+
*/
|
|
11
|
+
export interface BindingStorage {
|
|
12
|
+
getItem(key: string): string | null;
|
|
13
|
+
setItem?(key: string, value: string): void;
|
|
14
|
+
}
|
|
15
|
+
export interface BindingActionDefinition {
|
|
16
|
+
readonly id: string;
|
|
17
|
+
readonly label: string;
|
|
18
|
+
readonly description?: string;
|
|
19
|
+
}
|
|
20
|
+
export type KeyBinding = readonly [primary: string, alternate: string | null];
|
|
21
|
+
export type ButtonBinding = number;
|
|
22
|
+
export interface BindingDeviceConfig {
|
|
23
|
+
/** `keys`: each action has `[primary, alternate | null]`; `buttons`: each action has one button index. */
|
|
24
|
+
readonly kind: "keys" | "buttons";
|
|
25
|
+
readonly actions: readonly BindingActionDefinition[];
|
|
26
|
+
readonly defaults: Readonly<Record<string, KeyBinding | ButtonBinding>>;
|
|
27
|
+
/** Keys (or button indices as strings) that can never be assigned, with the message to show. */
|
|
28
|
+
readonly reserved?: Readonly<Record<string, string>>;
|
|
29
|
+
/** Display names for non-letter keys, e.g. `{ Space: "Space", ArrowLeft: "Left arrow" }`. Also whitelists them. */
|
|
30
|
+
readonly namedKeys?: Readonly<Record<string, string>>;
|
|
31
|
+
/** Extra key predicate; the default allows KeyA-Z, Digit0-9, Numpad0-9 and every `namedKeys` entry. */
|
|
32
|
+
readonly allowedKey?: (code: string) => boolean;
|
|
33
|
+
/** Button predicate; the default allows integers 0..15. */
|
|
34
|
+
readonly allowedButton?: (index: number) => boolean;
|
|
35
|
+
/** Names for button indices (e.g. an Xbox and a PlayStation table) chosen by `labelFor(..., { variant })`. */
|
|
36
|
+
readonly buttonNames?: Readonly<Record<string, readonly string[]>>;
|
|
37
|
+
}
|
|
38
|
+
export interface BindingError {
|
|
39
|
+
readonly action: string | null;
|
|
40
|
+
readonly input: string | number | null;
|
|
41
|
+
readonly message: string;
|
|
42
|
+
}
|
|
43
|
+
export interface BindingValidation {
|
|
44
|
+
readonly valid: boolean;
|
|
45
|
+
readonly errors: BindingError[];
|
|
46
|
+
}
|
|
47
|
+
export interface BindingApplyResult {
|
|
48
|
+
readonly ok: boolean;
|
|
49
|
+
readonly saved: boolean;
|
|
50
|
+
readonly errors: BindingError[];
|
|
51
|
+
}
|
|
52
|
+
export type BindingProfile = Readonly<Record<string, KeyBinding | ButtonBinding>>;
|
|
53
|
+
export type BindingListener = (event: {
|
|
54
|
+
device: string;
|
|
55
|
+
bindings: BindingProfile | null;
|
|
56
|
+
saved: boolean;
|
|
57
|
+
}) => void;
|
|
58
|
+
export interface BindingStoreOptions {
|
|
59
|
+
readonly devices: Readonly<Record<string, BindingDeviceConfig>>;
|
|
60
|
+
readonly storageKey: string;
|
|
61
|
+
readonly version: number;
|
|
62
|
+
readonly storage?: BindingStorage | null;
|
|
63
|
+
}
|
|
64
|
+
export interface BindingStore {
|
|
65
|
+
devices(): string[];
|
|
66
|
+
actions(device: string): BindingActionDefinition[];
|
|
67
|
+
defaults(device: string): BindingProfile | null;
|
|
68
|
+
getBindings(device: string): BindingProfile | null;
|
|
69
|
+
validate(device: string, profile: unknown): BindingValidation;
|
|
70
|
+
apply(device: string, profile: unknown): BindingApplyResult;
|
|
71
|
+
/** Which action a key code triggers on a `keys` device (the first one by default). */
|
|
72
|
+
actionForKey(code: unknown, device?: string): string | null;
|
|
73
|
+
isDown(action: string, keys: {
|
|
74
|
+
readonly [code: string]: boolean | undefined;
|
|
75
|
+
} | null | undefined, device?: string): boolean;
|
|
76
|
+
buttonFor(action: string, device?: string): number | null;
|
|
77
|
+
labelFor(action: string, device?: string, options?: {
|
|
78
|
+
all?: boolean;
|
|
79
|
+
variant?: string;
|
|
80
|
+
}): string;
|
|
81
|
+
labelInput(input: unknown, device: string, options?: {
|
|
82
|
+
variant?: string;
|
|
83
|
+
}): string;
|
|
84
|
+
subscribe(listener: BindingListener): () => void;
|
|
85
|
+
}
|
|
86
|
+
export declare function createBindingStore(options: BindingStoreOptions): BindingStore;
|
|
87
|
+
//# sourceMappingURL=bindingStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bindingStore.d.ts","sourceRoot":"","sources":["../../../../../packages/game/src/input/bindingStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* createBindingStore: validated, persisted, rebindable input bindings for games (keyboard primary + optional alternate
|
|
3
|
+
* keys, controller buttons), with reserved keys and conflict detection. Extracted from the Aura Slam 3D controls store
|
|
4
|
+
* (controls.js), which it reproduces exactly when configured with that game's actions.
|
|
5
|
+
*
|
|
6
|
+
* Pure: no DOM; storage is injected (`localStorage` in a browser). Corrupt, wrong-version or invalid stored data falls
|
|
7
|
+
* back to the defaults per device; write failures never throw and are reported as `saved: false`.
|
|
8
|
+
*
|
|
9
|
+
* TODO(WP-1): export through the public `@aura3d/engine/game` subpath once the game kit is published.
|
|
10
|
+
*/
|
|
11
|
+
const hasOwn = (target, key) => Object.prototype.hasOwnProperty.call(target, key);
|
|
12
|
+
const DEFAULT_KEY = /^(Key[A-Z]|Digit[0-9]|Numpad[0-9])$/;
|
|
13
|
+
export function createBindingStore(options) {
|
|
14
|
+
const { devices: configs, storageKey, version, storage } = options;
|
|
15
|
+
const known = (device) => typeof device === "string" && hasOwn(configs, device);
|
|
16
|
+
const clone = (device, profile) => Object.fromEntries(configs[device].actions.map(({ id }) => [id, configs[device].kind === "keys" ? [...profile[id]] : profile[id]]));
|
|
17
|
+
const allowedKey = (config, code) => typeof code === "string" && !(config.reserved && hasOwn(config.reserved, code))
|
|
18
|
+
&& (DEFAULT_KEY.test(code) || Boolean(config.namedKeys && hasOwn(config.namedKeys, code)) || Boolean(config.allowedKey?.(code)));
|
|
19
|
+
const allowedButton = (config, index) => typeof index === "number" && Number.isInteger(index) && !(config.reserved && hasOwn(config.reserved, String(index)))
|
|
20
|
+
&& (config.allowedButton ? config.allowedButton(index) : index >= 0 && index <= 15);
|
|
21
|
+
function labelInput(input, device, labelOptions = {}) {
|
|
22
|
+
if (input === null || input === undefined)
|
|
23
|
+
return "Unassigned";
|
|
24
|
+
const config = configs[device];
|
|
25
|
+
if (!config)
|
|
26
|
+
return String(input);
|
|
27
|
+
if (config.kind === "buttons") {
|
|
28
|
+
const names = config.buttonNames?.[labelOptions.variant ?? "default"] ?? config.buttonNames?.default;
|
|
29
|
+
return names?.[input] || `Button ${String(input)}`;
|
|
30
|
+
}
|
|
31
|
+
if (typeof input !== "string")
|
|
32
|
+
return String(input);
|
|
33
|
+
if (config.namedKeys && hasOwn(config.namedKeys, input))
|
|
34
|
+
return config.namedKeys[input];
|
|
35
|
+
if (/^Key[A-Z]$/.test(input))
|
|
36
|
+
return input.slice(3);
|
|
37
|
+
if (/^Digit[0-9]$/.test(input))
|
|
38
|
+
return input.slice(5);
|
|
39
|
+
if (/^Numpad[0-9]$/.test(input))
|
|
40
|
+
return `Numpad ${input.slice(6)}`;
|
|
41
|
+
return input;
|
|
42
|
+
}
|
|
43
|
+
function validate(device, profile) {
|
|
44
|
+
const errors = [];
|
|
45
|
+
const fail = (action, input, message) => { errors.push({ action, input, message }); };
|
|
46
|
+
if (!known(device))
|
|
47
|
+
return { valid: false, errors: [{ action: null, input: null, message: "Unknown control device." }] };
|
|
48
|
+
if (!profile || typeof profile !== "object" || Array.isArray(profile))
|
|
49
|
+
return { valid: false, errors: [{ action: null, input: null, message: "The control profile must contain every action." }] };
|
|
50
|
+
const config = configs[device];
|
|
51
|
+
const record = profile;
|
|
52
|
+
const ids = new Set(config.actions.map(({ id }) => id));
|
|
53
|
+
for (const id of Object.keys(record))
|
|
54
|
+
if (!ids.has(id))
|
|
55
|
+
fail(id, null, "Unknown control action.");
|
|
56
|
+
const used = new Map();
|
|
57
|
+
const keys = config.kind === "keys";
|
|
58
|
+
for (const { id, label } of config.actions) {
|
|
59
|
+
if (!hasOwn(record, id)) {
|
|
60
|
+
fail(id, null, `${label} requires a binding.`);
|
|
61
|
+
continue;
|
|
62
|
+
}
|
|
63
|
+
const value = record[id];
|
|
64
|
+
if (keys && (!Array.isArray(value) || value.length !== 2)) {
|
|
65
|
+
fail(id, null, `${label} needs a primary key and an optional alternate key.`);
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
const inputs = keys ? value : [value];
|
|
69
|
+
for (let slot = 0; slot < inputs.length; slot++) {
|
|
70
|
+
const input = inputs[slot];
|
|
71
|
+
if (keys && slot === 1 && input === null)
|
|
72
|
+
continue;
|
|
73
|
+
if (input === null || input === undefined || input === "") {
|
|
74
|
+
fail(id, (input ?? null), slot === 0 ? `${label} requires a primary ${keys ? "key" : "button"}.` : "Use a key or leave the alternate unassigned.");
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
if (!(keys ? allowedKey(config, input) : allowedButton(config, input))) {
|
|
78
|
+
const reservedMessage = typeof input === "string" || typeof input === "number" ? config.reserved?.[String(input)] : undefined;
|
|
79
|
+
fail(id, input, reservedMessage || `${labelInput(input, device)} cannot be assigned. This input is reserved or unsupported.`);
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
const previous = used.get(input);
|
|
83
|
+
if (previous)
|
|
84
|
+
fail(id, input, `${labelInput(input, device)} is already assigned to ${previous}.`);
|
|
85
|
+
else
|
|
86
|
+
used.set(input, label);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return { valid: errors.length === 0, errors };
|
|
90
|
+
}
|
|
91
|
+
const profiles = {};
|
|
92
|
+
for (const device of Object.keys(configs))
|
|
93
|
+
profiles[device] = clone(device, configs[device].defaults);
|
|
94
|
+
const listeners = new Set();
|
|
95
|
+
try {
|
|
96
|
+
const stored = JSON.parse(storage?.getItem(storageKey) || "null");
|
|
97
|
+
if (stored && stored.version === version) {
|
|
98
|
+
for (const device of Object.keys(configs)) {
|
|
99
|
+
if (validate(device, stored[device]).valid)
|
|
100
|
+
profiles[device] = clone(device, stored[device]);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
catch { /* corrupt or unavailable storage keeps the defaults */ }
|
|
105
|
+
const getBindings = (device) => (known(device) ? clone(device, profiles[device]) : null);
|
|
106
|
+
const firstOf = (kind) => Object.keys(configs).find((d) => configs[d].kind === kind);
|
|
107
|
+
function apply(device, profile) {
|
|
108
|
+
const validation = validate(device, profile);
|
|
109
|
+
if (!validation.valid)
|
|
110
|
+
return { ok: false, saved: false, errors: validation.errors };
|
|
111
|
+
profiles[device] = clone(device, profile);
|
|
112
|
+
let saved = false;
|
|
113
|
+
try {
|
|
114
|
+
if (typeof storage?.setItem === "function") {
|
|
115
|
+
storage.setItem(storageKey, JSON.stringify({ version, ...profiles }));
|
|
116
|
+
saved = true;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
catch { /* storage may be full or blocked: bindings still apply for this session */ }
|
|
120
|
+
for (const listener of listeners) {
|
|
121
|
+
try {
|
|
122
|
+
listener({ device, bindings: getBindings(device), saved });
|
|
123
|
+
}
|
|
124
|
+
catch { /* a listener never breaks others */ }
|
|
125
|
+
}
|
|
126
|
+
return { ok: true, saved, errors: [] };
|
|
127
|
+
}
|
|
128
|
+
return Object.freeze({
|
|
129
|
+
devices: () => Object.keys(configs),
|
|
130
|
+
actions: (device) => (known(device) ? configs[device].actions.map((a) => ({ ...a })) : []),
|
|
131
|
+
defaults: (device) => (known(device) ? clone(device, configs[device].defaults) : null),
|
|
132
|
+
getBindings, validate, apply,
|
|
133
|
+
actionForKey(code, device = firstOf("keys")) {
|
|
134
|
+
if (typeof code !== "string" || !device || !known(device))
|
|
135
|
+
return null;
|
|
136
|
+
const found = configs[device].actions.find(({ id }) => profiles[device][id].includes(code));
|
|
137
|
+
return found?.id ?? null;
|
|
138
|
+
},
|
|
139
|
+
isDown(action, keys, device = firstOf("keys")) {
|
|
140
|
+
if (!device || !known(device))
|
|
141
|
+
return false;
|
|
142
|
+
const profile = profiles[device];
|
|
143
|
+
return hasOwn(profile, action) && profile[action].some((code) => code !== null && Boolean(keys?.[code]));
|
|
144
|
+
},
|
|
145
|
+
buttonFor(action, device = firstOf("buttons")) {
|
|
146
|
+
if (!device || !known(device))
|
|
147
|
+
return null;
|
|
148
|
+
const profile = profiles[device];
|
|
149
|
+
return hasOwn(profile, action) ? profile[action] : null;
|
|
150
|
+
},
|
|
151
|
+
labelFor(action, device = firstOf("keys"), labelOptions = {}) {
|
|
152
|
+
if (!device || !known(device) || !hasOwn(profiles[device], action))
|
|
153
|
+
return "Unassigned";
|
|
154
|
+
const config = configs[device];
|
|
155
|
+
const value = profiles[device][action];
|
|
156
|
+
const inputs = config.kind === "keys" ? value.filter((input) => input !== null) : [value];
|
|
157
|
+
return (labelOptions.all ? inputs : inputs.slice(0, 1)).map((input) => labelInput(input, device, labelOptions)).join(" / ");
|
|
158
|
+
},
|
|
159
|
+
labelInput,
|
|
160
|
+
subscribe(listener) { if (typeof listener !== "function")
|
|
161
|
+
return () => undefined; listeners.add(listener); return () => { listeners.delete(listener); }; },
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=bindingStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bindingStore.js","sourceRoot":"","sources":["../../../../../packages/game/src/input/bindingStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
* freeze sets expiring on REAL time, and slow-mo ramping through the
|
|
8
8
|
* controller. Session state never depends on capture flags.
|
|
9
9
|
*/
|
|
10
|
-
import { type AuraTimeController } from "../../engine/
|
|
11
|
-
import type { GameSession, GameSessionState, PauseReason } from "../../engine/
|
|
10
|
+
import { type AuraTimeController } from "../../engine/index.js";
|
|
11
|
+
import type { GameSession, GameSessionState, PauseReason } from "../../engine/index.js";
|
|
12
12
|
export type SessionEvent = "state" | "pause" | "resume" | "settings";
|
|
13
13
|
export interface GameSessionOptions {
|
|
14
14
|
readonly seed: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameSession.d.ts","sourceRoot":"","sources":["../../../../../packages/game/src/session/GameSession.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,
|
|
1
|
+
{"version":3,"file":"GameSession.d.ts","sourceRoot":"","sources":["../../../../../packages/game/src/session/GameSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* freeze sets expiring on REAL time, and slow-mo ramping through the
|
|
8
8
|
* controller. Session state never depends on capture flags.
|
|
9
9
|
*/
|
|
10
|
-
import { StubTimeController } from "../../engine/
|
|
10
|
+
import { StubTimeController } from "../../engine/index.js";
|
|
11
11
|
/** Transitions legal per §7.3; everything else throws. */
|
|
12
12
|
const LEGAL = {
|
|
13
13
|
booting: ["loading", "disposed"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameSession.js","sourceRoot":"","sources":["../../../../../packages/game/src/session/GameSession.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,kBAAkB,EAEnB,MAAM,
|
|
1
|
+
{"version":3,"file":"GameSession.js","sourceRoot":"","sources":["../../../../../packages/game/src/session/GameSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,6 +93,11 @@ export interface ForwardPassOptions {
|
|
|
93
93
|
* wiring Q-15-*); defaults to the High tier when unset.
|
|
94
94
|
*/
|
|
95
95
|
readonly qualityTier?: AuraQualityTierSettings;
|
|
96
|
+
/** `material.custom` view/projection built-ins when the camera only exposed a combined view-projection (see `CameraLike.shaderViewMatrix`). */
|
|
97
|
+
readonly customFrameCamera?: {
|
|
98
|
+
readonly viewMatrix?: Float32Array | readonly number[];
|
|
99
|
+
readonly projectionMatrix?: Float32Array | readonly number[];
|
|
100
|
+
};
|
|
96
101
|
/** C-08: fields of the AuraFrame UBO the options above do not already carry. */
|
|
97
102
|
readonly auraFrameCamera?: {
|
|
98
103
|
readonly projectionMatrix?: Float32Array | readonly number[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ForwardPass.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/ForwardPass.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ForwardPass.d.ts","sourceRoot":"","sources":["../../../../packages/rendering/src/ForwardPass.ts"],"names":[],"mappings":"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"}
|
|
@@ -119,7 +119,7 @@ export class ForwardPass extends BaseRenderPass {
|
|
|
119
119
|
context.device.bindUniformBuffer?.(auraFrame.buffer, 0);
|
|
120
120
|
}
|
|
121
121
|
try {
|
|
122
|
-
for (const item of sortForwardRenderItems(this.options.items, this.options.cameraPosition)) {
|
|
122
|
+
for (const item of sortForwardRenderItems(this.options.items.filter(hasDrawableInstances), this.options.cameraPosition)) {
|
|
123
123
|
this.drawItem(context.device, item);
|
|
124
124
|
}
|
|
125
125
|
// #181: issue any trailing multi-draw run deferred by `submitDraw`.
|
|
@@ -131,6 +131,9 @@ export class ForwardPass extends BaseRenderPass {
|
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
drawItem(device, item) {
|
|
134
|
+
// An instanced item with zero instances draws nothing (never a contract throw that blanks the frame).
|
|
135
|
+
if (item.instanceTransforms !== undefined && item.instanceTransforms.length === 0)
|
|
136
|
+
return;
|
|
134
137
|
// threejs-parity L7/SG-09: three's Object3D.onBeforeRender fires
|
|
135
138
|
// immediately before the draw call.
|
|
136
139
|
item.onBeforeRender?.(item);
|
|
@@ -264,6 +267,9 @@ export class ForwardPass extends BaseRenderPass {
|
|
|
264
267
|
const vertexBuffer = geometry.vertexBuffer.upload(device);
|
|
265
268
|
const indexBuffer = geometry.indexBuffer?.upload(device);
|
|
266
269
|
const drawRange = resolveDrawRange(geometry, item.drawRange);
|
|
270
|
+
// three's setDrawRange(0, 0) draws nothing; the device rejects zero-count draws, so skip here.
|
|
271
|
+
if (drawRange.count === 0)
|
|
272
|
+
return;
|
|
267
273
|
const pipeline = this.pipelineFor(device, item, baseMaterial, shader, geometry);
|
|
268
274
|
submitDraw(device, pipeline, geometry, instanceBinding.count, drawRange, { item, vertexBuffer, indexBuffer, drawRange, uniforms, instanceBinding });
|
|
269
275
|
}
|
|
@@ -1565,10 +1571,10 @@ function applyCustomShaderFrameUniforms(options, frameWidth, frameHeight, shader
|
|
|
1565
1571
|
uniforms.set("u_resolution", [Math.max(1, frameWidth), Math.max(1, frameHeight)]);
|
|
1566
1572
|
}
|
|
1567
1573
|
if (reflected.has("u_viewMatrix") && !uniforms.has("u_viewMatrix")) {
|
|
1568
|
-
uniforms.set("u_viewMatrix", toMat4Uniform(options.cameraViewMatrix ?? identityMatrix(), "cameraViewMatrix"));
|
|
1574
|
+
uniforms.set("u_viewMatrix", toMat4Uniform(options.customFrameCamera?.viewMatrix ?? options.cameraViewMatrix ?? identityMatrix(), "cameraViewMatrix"));
|
|
1569
1575
|
}
|
|
1570
1576
|
if (reflected.has("u_projectionMatrix") && !uniforms.has("u_projectionMatrix")) {
|
|
1571
|
-
uniforms.set("u_projectionMatrix", toMat4Uniform(options.auraFrameCamera?.projectionMatrix ?? identityMatrix(), "auraFrameCamera.projectionMatrix"));
|
|
1577
|
+
uniforms.set("u_projectionMatrix", toMat4Uniform(options.customFrameCamera?.projectionMatrix ?? options.auraFrameCamera?.projectionMatrix ?? identityMatrix(), "auraFrameCamera.projectionMatrix"));
|
|
1572
1578
|
}
|
|
1573
1579
|
}
|
|
1574
1580
|
export function toMat4Uniform(value, field, label) {
|
|
@@ -1818,6 +1824,10 @@ function validateInstanceAttributeDescriptor(descriptor, instanceCount, label) {
|
|
|
1818
1824
|
* Width is a multiple of four so no matrix straddles a row boundary, which keeps the
|
|
1819
1825
|
* shader's texel addressing a simple divide and avoids per-column row recomputation.
|
|
1820
1826
|
*/
|
|
1827
|
+
/** An instanced item with zero instances draws nothing; it must never reach sorting/validation (a throw blanks the frame). */
|
|
1828
|
+
function hasDrawableInstances(item) {
|
|
1829
|
+
return item.instanceTransforms === undefined || item.instanceTransforms.length > 0;
|
|
1830
|
+
}
|
|
1821
1831
|
function validateInstanceTransformSource(item) {
|
|
1822
1832
|
const source = item.instanceTransforms ?? [];
|
|
1823
1833
|
if (source.length === 0 || source.length % 16 !== 0) {
|