@codexo/exojs 0.4.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 +163 -0
- package/README.md +141 -0
- package/dist/esm/audio/AbstractMedia.d.ts +45 -0
- package/dist/esm/audio/AbstractMedia.js +103 -0
- package/dist/esm/audio/AbstractMedia.js.map +1 -0
- package/dist/esm/audio/AudioAnalyser.d.ts +30 -0
- package/dist/esm/audio/AudioAnalyser.js +92 -0
- package/dist/esm/audio/AudioAnalyser.js.map +1 -0
- package/dist/esm/audio/Media.d.ts +25 -0
- package/dist/esm/audio/Music.d.ts +20 -0
- package/dist/esm/audio/Music.js +119 -0
- package/dist/esm/audio/Music.js.map +1 -0
- package/dist/esm/audio/Sound.d.ts +56 -0
- package/dist/esm/audio/Sound.js +394 -0
- package/dist/esm/audio/Sound.js.map +1 -0
- package/dist/esm/audio/audio-context.d.ts +11 -0
- package/dist/esm/audio/audio-context.js +115 -0
- package/dist/esm/audio/audio-context.js.map +1 -0
- package/dist/esm/audio/index.d.ts +6 -0
- package/dist/esm/core/Application.d.ts +76 -0
- package/dist/esm/core/Application.js +206 -0
- package/dist/esm/core/Application.js.map +1 -0
- package/dist/esm/core/Bounds.d.ts +19 -0
- package/dist/esm/core/Bounds.js +59 -0
- package/dist/esm/core/Bounds.js.map +1 -0
- package/dist/esm/core/Clock.d.ts +18 -0
- package/dist/esm/core/Clock.js +68 -0
- package/dist/esm/core/Clock.js.map +1 -0
- package/dist/esm/core/Color.d.ts +176 -0
- package/dist/esm/core/Color.js +265 -0
- package/dist/esm/core/Color.js.map +1 -0
- package/dist/esm/core/Quadtree.d.ts +20 -0
- package/dist/esm/core/Quadtree.js +86 -0
- package/dist/esm/core/Quadtree.js.map +1 -0
- package/dist/esm/core/Scene.d.ts +83 -0
- package/dist/esm/core/Scene.js +81 -0
- package/dist/esm/core/Scene.js.map +1 -0
- package/dist/esm/core/SceneManager.d.ts +66 -0
- package/dist/esm/core/SceneManager.js +396 -0
- package/dist/esm/core/SceneManager.js.map +1 -0
- package/dist/esm/core/SceneNode.d.ts +58 -0
- package/dist/esm/core/SceneNode.js +174 -0
- package/dist/esm/core/SceneNode.js.map +1 -0
- package/dist/esm/core/Signal.d.ts +18 -0
- package/dist/esm/core/Signal.js +63 -0
- package/dist/esm/core/Signal.js.map +1 -0
- package/dist/esm/core/Time.d.ts +38 -0
- package/dist/esm/core/Time.js +107 -0
- package/dist/esm/core/Time.js.map +1 -0
- package/dist/esm/core/Timer.d.ts +12 -0
- package/dist/esm/core/Timer.js +34 -0
- package/dist/esm/core/Timer.js.map +1 -0
- package/dist/esm/core/index.d.ts +13 -0
- package/dist/esm/core/types.d.ts +29 -0
- package/dist/esm/core/utils.d.ts +22 -0
- package/dist/esm/core/utils.js +136 -0
- package/dist/esm/core/utils.js.map +1 -0
- package/dist/esm/index.d.ts +8 -0
- package/dist/esm/index.js +135 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/input/ArcadeStickGamepadMapping.d.ts +5 -0
- package/dist/esm/input/ArcadeStickGamepadMapping.js +29 -0
- package/dist/esm/input/ArcadeStickGamepadMapping.js.map +1 -0
- package/dist/esm/input/GameCubeGamepadMapping.d.ts +5 -0
- package/dist/esm/input/GameCubeGamepadMapping.js +9 -0
- package/dist/esm/input/GameCubeGamepadMapping.js.map +1 -0
- package/dist/esm/input/Gamepad.d.ts +45 -0
- package/dist/esm/input/Gamepad.js +154 -0
- package/dist/esm/input/Gamepad.js.map +1 -0
- package/dist/esm/input/GamepadChannels.d.ts +39 -0
- package/dist/esm/input/GamepadChannels.js +45 -0
- package/dist/esm/input/GamepadChannels.js.map +1 -0
- package/dist/esm/input/GamepadControl.d.ts +15 -0
- package/dist/esm/input/GamepadControl.js +29 -0
- package/dist/esm/input/GamepadControl.js.map +1 -0
- package/dist/esm/input/GamepadDefinitions.d.ts +31 -0
- package/dist/esm/input/GamepadDefinitions.js +175 -0
- package/dist/esm/input/GamepadDefinitions.js.map +1 -0
- package/dist/esm/input/GamepadMapping.d.ts +23 -0
- package/dist/esm/input/GamepadMapping.js +32 -0
- package/dist/esm/input/GamepadMapping.js.map +1 -0
- package/dist/esm/input/GamepadPromptLayouts.d.ts +9 -0
- package/dist/esm/input/GamepadPromptLayouts.js +140 -0
- package/dist/esm/input/GamepadPromptLayouts.js.map +1 -0
- package/dist/esm/input/GenericDualAnalogGamepadMapping.d.ts +5 -0
- package/dist/esm/input/GenericDualAnalogGamepadMapping.js +53 -0
- package/dist/esm/input/GenericDualAnalogGamepadMapping.js.map +1 -0
- package/dist/esm/input/Input.d.ts +28 -0
- package/dist/esm/input/Input.js +68 -0
- package/dist/esm/input/Input.js.map +1 -0
- package/dist/esm/input/InputManager.d.ts +76 -0
- package/dist/esm/input/InputManager.js +346 -0
- package/dist/esm/input/InputManager.js.map +1 -0
- package/dist/esm/input/JoyConLeftGamepadMapping.d.ts +5 -0
- package/dist/esm/input/JoyConLeftGamepadMapping.js +9 -0
- package/dist/esm/input/JoyConLeftGamepadMapping.js.map +1 -0
- package/dist/esm/input/JoyConRightGamepadMapping.d.ts +5 -0
- package/dist/esm/input/JoyConRightGamepadMapping.js +9 -0
- package/dist/esm/input/JoyConRightGamepadMapping.js.map +1 -0
- package/dist/esm/input/PlayStationGamepadMapping.d.ts +5 -0
- package/dist/esm/input/PlayStationGamepadMapping.js +9 -0
- package/dist/esm/input/PlayStationGamepadMapping.js.map +1 -0
- package/dist/esm/input/Pointer.d.ts +52 -0
- package/dist/esm/input/Pointer.js +127 -0
- package/dist/esm/input/Pointer.js.map +1 -0
- package/dist/esm/input/SteamControllerGamepadMapping.d.ts +5 -0
- package/dist/esm/input/SteamControllerGamepadMapping.js +9 -0
- package/dist/esm/input/SteamControllerGamepadMapping.js.map +1 -0
- package/dist/esm/input/SwitchProGamepadMapping.d.ts +5 -0
- package/dist/esm/input/SwitchProGamepadMapping.js +9 -0
- package/dist/esm/input/SwitchProGamepadMapping.js.map +1 -0
- package/dist/esm/input/XboxGamepadMapping.d.ts +5 -0
- package/dist/esm/input/XboxGamepadMapping.js +9 -0
- package/dist/esm/input/XboxGamepadMapping.js.map +1 -0
- package/dist/esm/input/index.d.ts +19 -0
- package/dist/esm/input/types.d.ts +111 -0
- package/dist/esm/input/types.js +117 -0
- package/dist/esm/input/types.js.map +1 -0
- package/dist/esm/math/AbstractVector.d.ts +33 -0
- package/dist/esm/math/AbstractVector.js +106 -0
- package/dist/esm/math/AbstractVector.js.map +1 -0
- package/dist/esm/math/Circle.d.ts +41 -0
- package/dist/esm/math/Circle.js +137 -0
- package/dist/esm/math/Circle.js.map +1 -0
- package/dist/esm/math/CircleLike.d.ts +5 -0
- package/dist/esm/math/Collision.d.ts +28 -0
- package/dist/esm/math/Collision.js +13 -0
- package/dist/esm/math/Collision.js.map +1 -0
- package/dist/esm/math/Ellipse.d.ts +37 -0
- package/dist/esm/math/Ellipse.js +112 -0
- package/dist/esm/math/Ellipse.js.map +1 -0
- package/dist/esm/math/EllipseLike.d.ts +6 -0
- package/dist/esm/math/Flags.d.ts +12 -0
- package/dist/esm/math/Flags.js +41 -0
- package/dist/esm/math/Flags.js.map +1 -0
- package/dist/esm/math/Interval.d.ts +16 -0
- package/dist/esm/math/Interval.js +45 -0
- package/dist/esm/math/Interval.js.map +1 -0
- package/dist/esm/math/Line.d.ts +36 -0
- package/dist/esm/math/Line.js +114 -0
- package/dist/esm/math/Line.js.map +1 -0
- package/dist/esm/math/LineLike.d.ts +6 -0
- package/dist/esm/math/Matrix.d.ts +32 -0
- package/dist/esm/math/Matrix.js +134 -0
- package/dist/esm/math/Matrix.js.map +1 -0
- package/dist/esm/math/ObservableSize.d.ts +16 -0
- package/dist/esm/math/ObservableSize.js +56 -0
- package/dist/esm/math/ObservableSize.js.map +1 -0
- package/dist/esm/math/ObservableVector.d.ts +21 -0
- package/dist/esm/math/ObservableVector.js +74 -0
- package/dist/esm/math/ObservableVector.js.map +1 -0
- package/dist/esm/math/PointLike.d.ts +4 -0
- package/dist/esm/math/PolarVector.d.ts +8 -0
- package/dist/esm/math/PolarVector.js +19 -0
- package/dist/esm/math/PolarVector.js.map +1 -0
- package/dist/esm/math/Polygon.d.ts +38 -0
- package/dist/esm/math/Polygon.js +163 -0
- package/dist/esm/math/Polygon.js.map +1 -0
- package/dist/esm/math/PolygonLike.d.ts +6 -0
- package/dist/esm/math/Random.d.ts +15 -0
- package/dist/esm/math/Random.js +72 -0
- package/dist/esm/math/Random.js.map +1 -0
- package/dist/esm/math/Rectangle.d.ts +48 -0
- package/dist/esm/math/Rectangle.js +208 -0
- package/dist/esm/math/Rectangle.js.map +1 -0
- package/dist/esm/math/RectangleLike.d.ts +6 -0
- package/dist/esm/math/Segment.d.ts +25 -0
- package/dist/esm/math/Segment.js +79 -0
- package/dist/esm/math/Segment.js.map +1 -0
- package/dist/esm/math/ShapeLike.d.ts +4 -0
- package/dist/esm/math/Size.d.ts +24 -0
- package/dist/esm/math/Size.js +71 -0
- package/dist/esm/math/Size.js.map +1 -0
- package/dist/esm/math/Transformable.d.ts +47 -0
- package/dist/esm/math/Transformable.js +140 -0
- package/dist/esm/math/Transformable.js.map +1 -0
- package/dist/esm/math/Vector.d.ts +28 -0
- package/dist/esm/math/Vector.js +80 -0
- package/dist/esm/math/Vector.js.map +1 -0
- package/dist/esm/math/collision-detection.d.ts +41 -0
- package/dist/esm/math/collision-detection.js +394 -0
- package/dist/esm/math/collision-detection.js.map +1 -0
- package/dist/esm/math/collision-primitives.d.ts +39 -0
- package/dist/esm/math/collision-primitives.js +164 -0
- package/dist/esm/math/collision-primitives.js.map +1 -0
- package/dist/esm/math/geometry.d.ts +8 -0
- package/dist/esm/math/geometry.js +195 -0
- package/dist/esm/math/geometry.js.map +1 -0
- package/dist/esm/math/index.d.ts +27 -0
- package/dist/esm/math/utils.d.ts +21 -0
- package/dist/esm/math/utils.js +60 -0
- package/dist/esm/math/utils.js.map +1 -0
- package/dist/esm/particles/Particle.d.ts +40 -0
- package/dist/esm/particles/Particle.js +106 -0
- package/dist/esm/particles/Particle.js.map +1 -0
- package/dist/esm/particles/ParticleProperties.d.ts +14 -0
- package/dist/esm/particles/ParticleSystem.d.ts +43 -0
- package/dist/esm/particles/ParticleSystem.js +186 -0
- package/dist/esm/particles/ParticleSystem.js.map +1 -0
- package/dist/esm/particles/affectors/ColorAffector.d.ts +17 -0
- package/dist/esm/particles/affectors/ColorAffector.js +42 -0
- package/dist/esm/particles/affectors/ColorAffector.js.map +1 -0
- package/dist/esm/particles/affectors/ForceAffector.d.ts +13 -0
- package/dist/esm/particles/affectors/ForceAffector.js +28 -0
- package/dist/esm/particles/affectors/ForceAffector.js.map +1 -0
- package/dist/esm/particles/affectors/ParticleAffector.d.ts +6 -0
- package/dist/esm/particles/affectors/ScaleAffector.d.ts +13 -0
- package/dist/esm/particles/affectors/ScaleAffector.js +28 -0
- package/dist/esm/particles/affectors/ScaleAffector.js.map +1 -0
- package/dist/esm/particles/affectors/TorqueAffector.d.ts +12 -0
- package/dist/esm/particles/affectors/TorqueAffector.js +26 -0
- package/dist/esm/particles/affectors/TorqueAffector.js.map +1 -0
- package/dist/esm/particles/emitters/ParticleEmitter.d.ts +6 -0
- package/dist/esm/particles/emitters/ParticleOptions.d.ts +46 -0
- package/dist/esm/particles/emitters/ParticleOptions.js +104 -0
- package/dist/esm/particles/emitters/ParticleOptions.js.map +1 -0
- package/dist/esm/particles/emitters/UniversalEmitter.d.ts +17 -0
- package/dist/esm/particles/emitters/UniversalEmitter.js +45 -0
- package/dist/esm/particles/emitters/UniversalEmitter.js.map +1 -0
- package/dist/esm/particles/index.d.ts +11 -0
- package/dist/esm/physics/RapierPhysicsWorld.d.ts +136 -0
- package/dist/esm/physics/RapierPhysicsWorld.js +475 -0
- package/dist/esm/physics/RapierPhysicsWorld.js.map +1 -0
- package/dist/esm/physics/index.d.ts +1 -0
- package/dist/esm/rendering/CallbackRenderPass.d.ts +7 -0
- package/dist/esm/rendering/CallbackRenderPass.js +12 -0
- package/dist/esm/rendering/CallbackRenderPass.js.map +1 -0
- package/dist/esm/rendering/Container.d.ts +36 -0
- package/dist/esm/rendering/Container.js +197 -0
- package/dist/esm/rendering/Container.js.map +1 -0
- package/dist/esm/rendering/Drawable.d.ts +16 -0
- package/dist/esm/rendering/Drawable.js +54 -0
- package/dist/esm/rendering/Drawable.js.map +1 -0
- package/dist/esm/rendering/RenderBackendType.d.ts +4 -0
- package/dist/esm/rendering/RenderBackendType.js +8 -0
- package/dist/esm/rendering/RenderBackendType.js.map +1 -0
- package/dist/esm/rendering/RenderNode.d.ts +51 -0
- package/dist/esm/rendering/RenderNode.js +235 -0
- package/dist/esm/rendering/RenderNode.js.map +1 -0
- package/dist/esm/rendering/RenderPass.d.ts +4 -0
- package/dist/esm/rendering/RenderStats.d.ts +12 -0
- package/dist/esm/rendering/RenderStats.js +24 -0
- package/dist/esm/rendering/RenderStats.js.map +1 -0
- package/dist/esm/rendering/RenderTarget.d.ts +34 -0
- package/dist/esm/rendering/RenderTarget.js +109 -0
- package/dist/esm/rendering/RenderTarget.js.map +1 -0
- package/dist/esm/rendering/RenderTargetPass.d.ts +18 -0
- package/dist/esm/rendering/RenderTargetPass.js +31 -0
- package/dist/esm/rendering/RenderTargetPass.js.map +1 -0
- package/dist/esm/rendering/Renderer.d.ts +15 -0
- package/dist/esm/rendering/RendererRegistry.d.ts +43 -0
- package/dist/esm/rendering/RendererRegistry.js +86 -0
- package/dist/esm/rendering/RendererRegistry.js.map +1 -0
- package/dist/esm/rendering/SceneRenderRuntime.d.ts +29 -0
- package/dist/esm/rendering/View.d.ts +102 -0
- package/dist/esm/rendering/View.js +364 -0
- package/dist/esm/rendering/View.js.map +1 -0
- package/dist/esm/rendering/filters/BlurFilter.d.ts +20 -0
- package/dist/esm/rendering/filters/BlurFilter.js +68 -0
- package/dist/esm/rendering/filters/BlurFilter.js.map +1 -0
- package/dist/esm/rendering/filters/ColorFilter.d.ts +12 -0
- package/dist/esm/rendering/filters/ColorFilter.js +42 -0
- package/dist/esm/rendering/filters/ColorFilter.js.map +1 -0
- package/dist/esm/rendering/filters/Filter.d.ts +5 -0
- package/dist/esm/rendering/filters/Filter.js +5 -0
- package/dist/esm/rendering/filters/Filter.js.map +1 -0
- package/dist/esm/rendering/index.d.ts +52 -0
- package/dist/esm/rendering/primitives/CircleGeometry.d.ts +4 -0
- package/dist/esm/rendering/primitives/CircleGeometry.js +21 -0
- package/dist/esm/rendering/primitives/CircleGeometry.js.map +1 -0
- package/dist/esm/rendering/primitives/DrawableShape.d.ts +11 -0
- package/dist/esm/rendering/primitives/DrawableShape.js +21 -0
- package/dist/esm/rendering/primitives/DrawableShape.js.map +1 -0
- package/dist/esm/rendering/primitives/Geometry.d.ts +13 -0
- package/dist/esm/rendering/primitives/Geometry.js +16 -0
- package/dist/esm/rendering/primitives/Geometry.js.map +1 -0
- package/dist/esm/rendering/primitives/Graphics.d.ts +36 -0
- package/dist/esm/rendering/primitives/Graphics.js +208 -0
- package/dist/esm/rendering/primitives/Graphics.js.map +1 -0
- package/dist/esm/rendering/shader/Shader.d.ts +27 -0
- package/dist/esm/rendering/shader/Shader.js +63 -0
- package/dist/esm/rendering/shader/Shader.js.map +1 -0
- package/dist/esm/rendering/shader/ShaderAttribute.d.ts +9 -0
- package/dist/esm/rendering/shader/ShaderAttribute.js +21 -0
- package/dist/esm/rendering/shader/ShaderAttribute.js.map +1 -0
- package/dist/esm/rendering/shader/ShaderUniform.d.ts +16 -0
- package/dist/esm/rendering/shader/ShaderUniform.js +38 -0
- package/dist/esm/rendering/shader/ShaderUniform.js.map +1 -0
- package/dist/esm/rendering/sprite/AnimatedSprite.d.ts +43 -0
- package/dist/esm/rendering/sprite/AnimatedSprite.js +177 -0
- package/dist/esm/rendering/sprite/AnimatedSprite.js.map +1 -0
- package/dist/esm/rendering/sprite/Sprite.d.ts +43 -0
- package/dist/esm/rendering/sprite/Sprite.js +169 -0
- package/dist/esm/rendering/sprite/Sprite.js.map +1 -0
- package/dist/esm/rendering/sprite/Spritesheet.d.ts +34 -0
- package/dist/esm/rendering/sprite/Spritesheet.js +88 -0
- package/dist/esm/rendering/sprite/Spritesheet.js.map +1 -0
- package/dist/esm/rendering/text/Text.d.ts +26 -0
- package/dist/esm/rendering/text/Text.js +130 -0
- package/dist/esm/rendering/text/Text.js.map +1 -0
- package/dist/esm/rendering/text/TextStyle.d.ts +65 -0
- package/dist/esm/rendering/text/TextStyle.js +192 -0
- package/dist/esm/rendering/text/TextStyle.js.map +1 -0
- package/dist/esm/rendering/texture/RenderTexture.d.ts +36 -0
- package/dist/esm/rendering/texture/RenderTexture.js +123 -0
- package/dist/esm/rendering/texture/RenderTexture.js.map +1 -0
- package/dist/esm/rendering/texture/Sampler.d.ts +29 -0
- package/dist/esm/rendering/texture/Sampler.js +76 -0
- package/dist/esm/rendering/texture/Sampler.js.map +1 -0
- package/dist/esm/rendering/texture/Texture.d.ts +52 -0
- package/dist/esm/rendering/texture/Texture.js +173 -0
- package/dist/esm/rendering/texture/Texture.js.map +1 -0
- package/dist/esm/rendering/types.d.ts +68 -0
- package/dist/esm/rendering/types.js +79 -0
- package/dist/esm/rendering/types.js.map +1 -0
- package/dist/esm/rendering/utils.d.ts +9 -0
- package/dist/esm/rendering/utils.js +39 -0
- package/dist/esm/rendering/utils.js.map +1 -0
- package/dist/esm/rendering/video/Video.d.ts +62 -0
- package/dist/esm/rendering/video/Video.js +293 -0
- package/dist/esm/rendering/video/Video.js.map +1 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.d.ts +49 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js +175 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js.map +1 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.d.ts +44 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.js +57 -0
- package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.d.ts +11 -0
- package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js +110 -0
- package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2PrimitiveRenderer.d.ts +26 -0
- package/dist/esm/rendering/webgl2/WebGl2PrimitiveRenderer.js +217 -0
- package/dist/esm/rendering/webgl2/WebGl2PrimitiveRenderer.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.d.ts +26 -0
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.js +54 -0
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2RenderManager.d.ts +99 -0
- package/dist/esm/rendering/webgl2/WebGl2RenderManager.js +600 -0
- package/dist/esm/rendering/webgl2/WebGl2RenderManager.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2RendererRuntime.d.ts +15 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.d.ts +17 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.js +63 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.d.ts +3 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.js +59 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderRuntime.d.ts +2 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderRuntime.js +161 -0
- package/dist/esm/rendering/webgl2/WebGl2ShaderRuntime.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts +11 -0
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +82 -0
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js.map +1 -0
- package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.d.ts +40 -0
- package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.js +69 -0
- package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.js.map +1 -0
- package/dist/esm/rendering/webgl2/glsl/particle.frag.js +4 -0
- package/dist/esm/rendering/webgl2/glsl/particle.frag.js.map +1 -0
- package/dist/esm/rendering/webgl2/glsl/particle.vert.js +4 -0
- package/dist/esm/rendering/webgl2/glsl/particle.vert.js.map +1 -0
- package/dist/esm/rendering/webgl2/glsl/primitive.frag.js +4 -0
- package/dist/esm/rendering/webgl2/glsl/primitive.frag.js.map +1 -0
- package/dist/esm/rendering/webgl2/glsl/primitive.vert.js +4 -0
- package/dist/esm/rendering/webgl2/glsl/primitive.vert.js.map +1 -0
- package/dist/esm/rendering/webgl2/glsl/sprite.frag.js +4 -0
- package/dist/esm/rendering/webgl2/glsl/sprite.frag.js.map +1 -0
- package/dist/esm/rendering/webgl2/glsl/sprite.vert.js +4 -0
- package/dist/esm/rendering/webgl2/glsl/sprite.vert.js.map +1 -0
- package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.d.ts +28 -0
- package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.js +50 -0
- package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.js.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuBlendState.d.ts +6 -0
- package/dist/esm/rendering/webgpu/WebGpuBlendState.js +79 -0
- package/dist/esm/rendering/webgpu/WebGpuBlendState.js.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.d.ts +33 -0
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js +443 -0
- package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuPrimitiveRenderer.d.ts +39 -0
- package/dist/esm/rendering/webgpu/WebGpuPrimitiveRenderer.js +489 -0
- package/dist/esm/rendering/webgpu/WebGpuPrimitiveRenderer.js.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuRenderManager.d.ts +111 -0
- package/dist/esm/rendering/webgpu/WebGpuRenderManager.js +777 -0
- package/dist/esm/rendering/webgpu/WebGpuRenderManager.js.map +1 -0
- package/dist/esm/rendering/webgpu/WebGpuRendererRuntime.d.ts +8 -0
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts +33 -0
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +528 -0
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -0
- package/dist/esm/resources/AbstractAssetFactory.d.ts +10 -0
- package/dist/esm/resources/AbstractAssetFactory.js +24 -0
- package/dist/esm/resources/AbstractAssetFactory.js.map +1 -0
- package/dist/esm/resources/AssetFactory.d.ts +6 -0
- package/dist/esm/resources/AssetManifest.d.ts +28 -0
- package/dist/esm/resources/AssetManifest.js +66 -0
- package/dist/esm/resources/AssetManifest.js.map +1 -0
- package/dist/esm/resources/CacheFirstStrategy.d.ts +5 -0
- package/dist/esm/resources/CacheFirstStrategy.js +34 -0
- package/dist/esm/resources/CacheFirstStrategy.js.map +1 -0
- package/dist/esm/resources/CacheStore.d.ts +7 -0
- package/dist/esm/resources/CacheStrategy.d.ts +12 -0
- package/dist/esm/resources/Database.d.ts +13 -0
- package/dist/esm/resources/FactoryRegistry.d.ts +9 -0
- package/dist/esm/resources/FactoryRegistry.js +42 -0
- package/dist/esm/resources/FactoryRegistry.js.map +1 -0
- package/dist/esm/resources/IndexedDbDatabase.d.ts +21 -0
- package/dist/esm/resources/IndexedDbDatabase.js +143 -0
- package/dist/esm/resources/IndexedDbDatabase.js.map +1 -0
- package/dist/esm/resources/IndexedDbStore.d.ts +16 -0
- package/dist/esm/resources/IndexedDbStore.js +32 -0
- package/dist/esm/resources/IndexedDbStore.js.map +1 -0
- package/dist/esm/resources/Loader.d.ts +88 -0
- package/dist/esm/resources/Loader.js +601 -0
- package/dist/esm/resources/Loader.js.map +1 -0
- package/dist/esm/resources/NetworkOnlyStrategy.d.ts +5 -0
- package/dist/esm/resources/NetworkOnlyStrategy.js +12 -0
- package/dist/esm/resources/NetworkOnlyStrategy.js.map +1 -0
- package/dist/esm/resources/factories/BinaryFactory.d.ts +6 -0
- package/dist/esm/resources/factories/BinaryFactory.js +14 -0
- package/dist/esm/resources/factories/BinaryFactory.js.map +1 -0
- package/dist/esm/resources/factories/FontFactory.d.ts +13 -0
- package/dist/esm/resources/factories/FontFactory.js +36 -0
- package/dist/esm/resources/factories/FontFactory.js.map +1 -0
- package/dist/esm/resources/factories/ImageFactory.d.ts +10 -0
- package/dist/esm/resources/factories/ImageFactory.js +35 -0
- package/dist/esm/resources/factories/ImageFactory.js.map +1 -0
- package/dist/esm/resources/factories/JsonFactory.d.ts +6 -0
- package/dist/esm/resources/factories/JsonFactory.js +14 -0
- package/dist/esm/resources/factories/JsonFactory.js.map +1 -0
- package/dist/esm/resources/factories/MusicFactory.d.ts +16 -0
- package/dist/esm/resources/factories/MusicFactory.js +37 -0
- package/dist/esm/resources/factories/MusicFactory.js.map +1 -0
- package/dist/esm/resources/factories/SoundFactory.d.ts +14 -0
- package/dist/esm/resources/factories/SoundFactory.js +22 -0
- package/dist/esm/resources/factories/SoundFactory.js.map +1 -0
- package/dist/esm/resources/factories/SvgFactory.d.ts +6 -0
- package/dist/esm/resources/factories/SvgFactory.js +34 -0
- package/dist/esm/resources/factories/SvgFactory.js.map +1 -0
- package/dist/esm/resources/factories/TextFactory.d.ts +6 -0
- package/dist/esm/resources/factories/TextFactory.js +14 -0
- package/dist/esm/resources/factories/TextFactory.js.map +1 -0
- package/dist/esm/resources/factories/TextureFactory.d.ts +13 -0
- package/dist/esm/resources/factories/TextureFactory.js +37 -0
- package/dist/esm/resources/factories/TextureFactory.js.map +1 -0
- package/dist/esm/resources/factories/VideoFactory.d.ts +18 -0
- package/dist/esm/resources/factories/VideoFactory.js +40 -0
- package/dist/esm/resources/factories/VideoFactory.js.map +1 -0
- package/dist/esm/resources/factories/VttFactory.d.ts +6 -0
- package/dist/esm/resources/factories/VttFactory.js +57 -0
- package/dist/esm/resources/factories/VttFactory.js.map +1 -0
- package/dist/esm/resources/factories/WasmFactory.d.ts +6 -0
- package/dist/esm/resources/factories/WasmFactory.js +14 -0
- package/dist/esm/resources/factories/WasmFactory.js.map +1 -0
- package/dist/esm/resources/index.d.ts +26 -0
- package/dist/esm/resources/tokens.d.ts +30 -0
- package/dist/esm/resources/tokens.js +33 -0
- package/dist/esm/resources/tokens.js.map +1 -0
- package/dist/esm/resources/utils.d.ts +1 -0
- package/dist/esm/resources/utils.js +129 -0
- package/dist/esm/resources/utils.js.map +1 -0
- package/dist/esm/vendor/webgl-debug.js +1160 -0
- package/dist/esm/vendor/webgl-debug.js.map +1 -0
- package/dist/exo.esm.js +17111 -0
- package/dist/exo.esm.js.map +1 -0
- package/dist/exo.esm.min.js +2 -0
- package/dist/exo.esm.min.js.map +1 -0
- package/dist/exo.global.js +17328 -0
- package/dist/exo.global.js.map +1 -0
- package/dist/exo.global.min.js +2 -0
- package/dist/exo.global.min.js.map +1 -0
- package/package.json +96 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import './types.js';
|
|
2
|
+
|
|
3
|
+
var GamepadChannel;
|
|
4
|
+
(function (GamepadChannel) {
|
|
5
|
+
GamepadChannel[GamepadChannel["ButtonSouth"] = 512] = "ButtonSouth";
|
|
6
|
+
GamepadChannel[GamepadChannel["ButtonWest"] = 513] = "ButtonWest";
|
|
7
|
+
GamepadChannel[GamepadChannel["ButtonEast"] = 514] = "ButtonEast";
|
|
8
|
+
GamepadChannel[GamepadChannel["ButtonNorth"] = 515] = "ButtonNorth";
|
|
9
|
+
GamepadChannel[GamepadChannel["LeftShoulder"] = 516] = "LeftShoulder";
|
|
10
|
+
GamepadChannel[GamepadChannel["RightShoulder"] = 517] = "RightShoulder";
|
|
11
|
+
GamepadChannel[GamepadChannel["LeftTrigger"] = 518] = "LeftTrigger";
|
|
12
|
+
GamepadChannel[GamepadChannel["RightTrigger"] = 519] = "RightTrigger";
|
|
13
|
+
GamepadChannel[GamepadChannel["Select"] = 520] = "Select";
|
|
14
|
+
GamepadChannel[GamepadChannel["Start"] = 521] = "Start";
|
|
15
|
+
GamepadChannel[GamepadChannel["LeftStick"] = 522] = "LeftStick";
|
|
16
|
+
GamepadChannel[GamepadChannel["RightStick"] = 523] = "RightStick";
|
|
17
|
+
GamepadChannel[GamepadChannel["DPadUp"] = 524] = "DPadUp";
|
|
18
|
+
GamepadChannel[GamepadChannel["DPadDown"] = 525] = "DPadDown";
|
|
19
|
+
GamepadChannel[GamepadChannel["DPadLeft"] = 526] = "DPadLeft";
|
|
20
|
+
GamepadChannel[GamepadChannel["DPadRight"] = 527] = "DPadRight";
|
|
21
|
+
GamepadChannel[GamepadChannel["Guide"] = 528] = "Guide";
|
|
22
|
+
GamepadChannel[GamepadChannel["Share"] = 529] = "Share";
|
|
23
|
+
GamepadChannel[GamepadChannel["Capture"] = 530] = "Capture";
|
|
24
|
+
GamepadChannel[GamepadChannel["Touchpad"] = 531] = "Touchpad";
|
|
25
|
+
GamepadChannel[GamepadChannel["Paddle1"] = 532] = "Paddle1";
|
|
26
|
+
GamepadChannel[GamepadChannel["LeftStickLeft"] = 533] = "LeftStickLeft";
|
|
27
|
+
GamepadChannel[GamepadChannel["LeftStickRight"] = 534] = "LeftStickRight";
|
|
28
|
+
GamepadChannel[GamepadChannel["LeftStickUp"] = 535] = "LeftStickUp";
|
|
29
|
+
GamepadChannel[GamepadChannel["LeftStickDown"] = 536] = "LeftStickDown";
|
|
30
|
+
GamepadChannel[GamepadChannel["RightStickLeft"] = 537] = "RightStickLeft";
|
|
31
|
+
GamepadChannel[GamepadChannel["RightStickRight"] = 538] = "RightStickRight";
|
|
32
|
+
GamepadChannel[GamepadChannel["RightStickUp"] = 539] = "RightStickUp";
|
|
33
|
+
GamepadChannel[GamepadChannel["RightStickDown"] = 540] = "RightStickDown";
|
|
34
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis0Negative"] = 541] = "AuxiliaryAxis0Negative";
|
|
35
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis0Positive"] = 542] = "AuxiliaryAxis0Positive";
|
|
36
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis1Negative"] = 543] = "AuxiliaryAxis1Negative";
|
|
37
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis1Positive"] = 544] = "AuxiliaryAxis1Positive";
|
|
38
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis2Negative"] = 545] = "AuxiliaryAxis2Negative";
|
|
39
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis2Positive"] = 546] = "AuxiliaryAxis2Positive";
|
|
40
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis3Negative"] = 547] = "AuxiliaryAxis3Negative";
|
|
41
|
+
GamepadChannel[GamepadChannel["AuxiliaryAxis3Positive"] = 548] = "AuxiliaryAxis3Positive";
|
|
42
|
+
})(GamepadChannel || (GamepadChannel = {}));
|
|
43
|
+
|
|
44
|
+
export { GamepadChannel };
|
|
45
|
+
//# sourceMappingURL=GamepadChannels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GamepadChannels.js","sources":["../../../../src/input/GamepadChannels.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { GamepadChannel } from './GamepadChannels';
|
|
2
|
+
export interface GamepadControlOptions {
|
|
3
|
+
invert?: boolean;
|
|
4
|
+
normalize?: boolean;
|
|
5
|
+
threshold?: number;
|
|
6
|
+
}
|
|
7
|
+
export declare class GamepadControl {
|
|
8
|
+
readonly index: number;
|
|
9
|
+
readonly channel: GamepadChannel;
|
|
10
|
+
readonly invert: boolean;
|
|
11
|
+
readonly normalize: boolean;
|
|
12
|
+
readonly threshold: number;
|
|
13
|
+
constructor(index: number, channel: GamepadChannel, options?: GamepadControlOptions);
|
|
14
|
+
transformValue(value: number): number;
|
|
15
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { clamp } from '../math/utils.js';
|
|
2
|
+
|
|
3
|
+
class GamepadControl {
|
|
4
|
+
index;
|
|
5
|
+
channel;
|
|
6
|
+
invert;
|
|
7
|
+
normalize;
|
|
8
|
+
threshold;
|
|
9
|
+
constructor(index, channel, options = {}) {
|
|
10
|
+
this.index = index;
|
|
11
|
+
this.channel = channel;
|
|
12
|
+
this.invert = options.invert ?? false;
|
|
13
|
+
this.normalize = options.normalize ?? false;
|
|
14
|
+
this.threshold = clamp(options.threshold ?? 0.2, 0, 1);
|
|
15
|
+
}
|
|
16
|
+
transformValue(value) {
|
|
17
|
+
let result = clamp(value, -1, 1);
|
|
18
|
+
if (this.invert) {
|
|
19
|
+
result *= -1;
|
|
20
|
+
}
|
|
21
|
+
if (this.normalize) {
|
|
22
|
+
result = (result + 1) / 2;
|
|
23
|
+
}
|
|
24
|
+
return result > this.threshold ? result : 0;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { GamepadControl };
|
|
29
|
+
//# sourceMappingURL=GamepadControl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GamepadControl.js","sources":["../../../../src/input/GamepadControl.ts"],"sourcesContent":[null],"names":[],"mappings":";;MAUa,cAAc,CAAA;AACP,IAAA,KAAK;AACL,IAAA,OAAO;AACP,IAAA,MAAM;AACN,IAAA,SAAS;AACT,IAAA,SAAS;AAEzB,IAAA,WAAA,CAAmB,KAAa,EAAE,OAAuB,EAAE,UAAiC,EAAE,EAAA;AAC1F,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;QACtB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK;QACrC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK;AAC3C,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1D;AAEO,IAAA,cAAc,CAAC,KAAa,EAAA;QAC/B,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;AAEhC,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,MAAM,IAAI,EAAE;QAChB;AAEA,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC;QAC7B;AAEA,QAAA,OAAO,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,CAAC;IAC/C;AACH;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { GamepadMapping } from './GamepadMapping';
|
|
2
|
+
export type BrowserGamepad = NonNullable<ReturnType<Navigator['getGamepads']>[number]>;
|
|
3
|
+
export type GamepadDefinitionResult = GamepadMapping | {
|
|
4
|
+
name?: string;
|
|
5
|
+
mapping: GamepadMapping;
|
|
6
|
+
} | null | undefined;
|
|
7
|
+
export interface GamepadDescriptor {
|
|
8
|
+
id: string;
|
|
9
|
+
index: number;
|
|
10
|
+
label: string;
|
|
11
|
+
vendorId: string | null;
|
|
12
|
+
productId: string | null;
|
|
13
|
+
productKey: string | null;
|
|
14
|
+
name: string | null;
|
|
15
|
+
}
|
|
16
|
+
export interface GamepadDefinition {
|
|
17
|
+
ids?: string | Array<string>;
|
|
18
|
+
name?: string;
|
|
19
|
+
resolve: (descriptor: GamepadDescriptor) => GamepadDefinitionResult;
|
|
20
|
+
}
|
|
21
|
+
export interface ResolvedGamepadDefinition {
|
|
22
|
+
descriptor: GamepadDescriptor;
|
|
23
|
+
name: string;
|
|
24
|
+
mapping: GamepadMapping;
|
|
25
|
+
}
|
|
26
|
+
export declare const normalizeIds: (ids?: string | Array<string>) => Array<string>;
|
|
27
|
+
export declare const matchesIds: (descriptor: GamepadDescriptor, ids?: string | Array<string>) => boolean;
|
|
28
|
+
export declare const parseGamepadDescriptor: (gamepad: BrowserGamepad) => GamepadDescriptor;
|
|
29
|
+
export declare const resolveDefinition: (definition: GamepadDefinition, descriptor: GamepadDescriptor) => ResolvedGamepadDefinition | null;
|
|
30
|
+
export declare const resolveGamepadDefinition: (gamepadOrDescriptor: BrowserGamepad | GamepadDescriptor, definitions?: ReadonlyArray<GamepadDefinition>) => ResolvedGamepadDefinition;
|
|
31
|
+
export declare const builtInGamepadDefinitions: Array<GamepadDefinition>;
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { ArcadeStickGamepadMapping } from './ArcadeStickGamepadMapping.js';
|
|
2
|
+
import { GameCubeGamepadMapping } from './GameCubeGamepadMapping.js';
|
|
3
|
+
import { GenericDualAnalogGamepadMapping } from './GenericDualAnalogGamepadMapping.js';
|
|
4
|
+
import { JoyConLeftGamepadMapping } from './JoyConLeftGamepadMapping.js';
|
|
5
|
+
import { JoyConRightGamepadMapping } from './JoyConRightGamepadMapping.js';
|
|
6
|
+
import { PlayStationGamepadMapping } from './PlayStationGamepadMapping.js';
|
|
7
|
+
import { SteamControllerGamepadMapping } from './SteamControllerGamepadMapping.js';
|
|
8
|
+
import { SwitchProGamepadMapping } from './SwitchProGamepadMapping.js';
|
|
9
|
+
import { XboxGamepadMapping } from './XboxGamepadMapping.js';
|
|
10
|
+
|
|
11
|
+
const vendorProductPattern = /vendor[:\s]*([0-9a-f]{4})\s*product[:\s]*([0-9a-f]{4})/i;
|
|
12
|
+
const vendorProductHexPattern = /vendor[:\s]*0x([0-9a-f]{4})\s*product[:\s]*0x([0-9a-f]{4})/i;
|
|
13
|
+
const vendorProductPairPattern = /\b([0-9a-f]{4})[-: ]([0-9a-f]{4})\b/i;
|
|
14
|
+
const vidPidPattern = /vid[_:\s]*([0-9a-f]{4}).{0,8}pid[_:\s]*([0-9a-f]{4})/i;
|
|
15
|
+
const createStaticGamepadDefinition = (name, createMapping, ids) => ({
|
|
16
|
+
ids,
|
|
17
|
+
name,
|
|
18
|
+
resolve: () => ({
|
|
19
|
+
name,
|
|
20
|
+
mapping: createMapping(),
|
|
21
|
+
}),
|
|
22
|
+
});
|
|
23
|
+
const normalizeId = (id) => id.trim().toLowerCase();
|
|
24
|
+
const parseProductKey = (id) => {
|
|
25
|
+
const match = vendorProductHexPattern.exec(id)
|
|
26
|
+
|| vendorProductPattern.exec(id)
|
|
27
|
+
|| vidPidPattern.exec(id)
|
|
28
|
+
|| vendorProductPairPattern.exec(id);
|
|
29
|
+
if (!match) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
return `${match[1].toLowerCase()}:${match[2].toLowerCase()}`;
|
|
33
|
+
};
|
|
34
|
+
const parseName = (label) => {
|
|
35
|
+
const name = label
|
|
36
|
+
.replace(vendorProductHexPattern, '')
|
|
37
|
+
.replace(vendorProductPattern, '')
|
|
38
|
+
.replace(vidPidPattern, '')
|
|
39
|
+
.replace(vendorProductPairPattern, '')
|
|
40
|
+
.replace(/\s+/g, ' ')
|
|
41
|
+
.trim();
|
|
42
|
+
return name.length > 0 ? name : null;
|
|
43
|
+
};
|
|
44
|
+
const resolveDefinitionResult = (definition, descriptor) => {
|
|
45
|
+
const result = definition.resolve(descriptor);
|
|
46
|
+
if (result == null) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
if ('mapping' in result) {
|
|
50
|
+
return {
|
|
51
|
+
descriptor,
|
|
52
|
+
name: result.name ?? definition.name ?? descriptor.name ?? descriptor.label,
|
|
53
|
+
mapping: result.mapping,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
descriptor,
|
|
58
|
+
name: definition.name ?? descriptor.name ?? descriptor.label,
|
|
59
|
+
mapping: result,
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
const normalizeIds = (ids) => {
|
|
63
|
+
if (!ids) {
|
|
64
|
+
return [];
|
|
65
|
+
}
|
|
66
|
+
const values = Array.isArray(ids) ? ids : [ids];
|
|
67
|
+
return values.map(normalizeId);
|
|
68
|
+
};
|
|
69
|
+
const matchesIds = (descriptor, ids) => {
|
|
70
|
+
if (!ids) {
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
for (const id of normalizeIds(ids)) {
|
|
74
|
+
if (id.includes(':')) {
|
|
75
|
+
if (descriptor.productKey === id) {
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
if (descriptor.vendorId === id) {
|
|
81
|
+
return true;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return false;
|
|
85
|
+
};
|
|
86
|
+
const parseGamepadDescriptor = (gamepad) => {
|
|
87
|
+
const label = gamepad.id.trim() || `Gamepad ${gamepad.index}`;
|
|
88
|
+
const productKey = parseProductKey(label);
|
|
89
|
+
const vendorId = productKey?.slice(0, 4) ?? null;
|
|
90
|
+
const productId = productKey?.slice(5) ?? null;
|
|
91
|
+
return {
|
|
92
|
+
id: gamepad.id,
|
|
93
|
+
index: gamepad.index,
|
|
94
|
+
label,
|
|
95
|
+
vendorId,
|
|
96
|
+
productId,
|
|
97
|
+
productKey,
|
|
98
|
+
name: parseName(label),
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
const resolveDefinition = (definition, descriptor) => {
|
|
102
|
+
if (!matchesIds(descriptor, definition.ids)) {
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
return resolveDefinitionResult(definition, descriptor);
|
|
106
|
+
};
|
|
107
|
+
const resolveGamepadDefinition = (gamepadOrDescriptor, definitions = builtInGamepadDefinitions) => {
|
|
108
|
+
const descriptor = 'connected' in gamepadOrDescriptor
|
|
109
|
+
? parseGamepadDescriptor(gamepadOrDescriptor)
|
|
110
|
+
: gamepadOrDescriptor;
|
|
111
|
+
for (const definition of definitions) {
|
|
112
|
+
const resolvedDefinition = resolveDefinition(definition, descriptor);
|
|
113
|
+
if (resolvedDefinition) {
|
|
114
|
+
return resolvedDefinition;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
return {
|
|
118
|
+
descriptor,
|
|
119
|
+
name: descriptor.name ?? descriptor.label,
|
|
120
|
+
mapping: new GenericDualAnalogGamepadMapping(),
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
const exactDeviceDefinitions = [
|
|
124
|
+
createStaticGamepadDefinition('Xbox 360 Controller', () => new XboxGamepadMapping(), '045e:028e'),
|
|
125
|
+
createStaticGamepadDefinition('Xbox One Controller', () => new XboxGamepadMapping(), ['045e:02d1', '045e:02dd']),
|
|
126
|
+
createStaticGamepadDefinition('Xbox Wireless Controller', () => new XboxGamepadMapping(), ['045e:02e0', '045e:02ea', '045e:02fd', '045e:0b20']),
|
|
127
|
+
createStaticGamepadDefinition('Xbox One Elite Controller', () => new XboxGamepadMapping(), '045e:02e3'),
|
|
128
|
+
createStaticGamepadDefinition('Xbox Elite Wireless Controller Series 2', () => new XboxGamepadMapping(), ['045e:0b00', '045e:0b05', '045e:0b22']),
|
|
129
|
+
createStaticGamepadDefinition('Xbox Series Controller', () => new XboxGamepadMapping(), ['045e:0b12', '045e:0b13']),
|
|
130
|
+
createStaticGamepadDefinition('PlayStation 3 Controller', () => new PlayStationGamepadMapping(), '054c:0268'),
|
|
131
|
+
createStaticGamepadDefinition('DualShock 4 Controller', () => new PlayStationGamepadMapping(), ['054c:05c4', '054c:09cc', '054c:0ba0']),
|
|
132
|
+
createStaticGamepadDefinition('DualSense Controller', () => new PlayStationGamepadMapping(), '054c:0ce6'),
|
|
133
|
+
createStaticGamepadDefinition('DualSense Edge Controller', () => new PlayStationGamepadMapping(), '054c:0df2'),
|
|
134
|
+
createStaticGamepadDefinition('GameCube Controller Adapter', () => new GameCubeGamepadMapping(), '057e:0337'),
|
|
135
|
+
createStaticGamepadDefinition('Joy-Con (L)', () => new JoyConLeftGamepadMapping(), '057e:2006'),
|
|
136
|
+
createStaticGamepadDefinition('Joy-Con (R)', () => new JoyConRightGamepadMapping(), '057e:2007'),
|
|
137
|
+
createStaticGamepadDefinition('Joy-Con Charging Grip', () => new SwitchProGamepadMapping(), '057e:200e'),
|
|
138
|
+
createStaticGamepadDefinition('Switch Pro Controller', () => new SwitchProGamepadMapping(), '057e:2009'),
|
|
139
|
+
createStaticGamepadDefinition('Joy-Con 2 (L)', () => new JoyConLeftGamepadMapping(), '057e:2066'),
|
|
140
|
+
createStaticGamepadDefinition('Joy-Con 2 (R)', () => new JoyConRightGamepadMapping(), '057e:2067'),
|
|
141
|
+
createStaticGamepadDefinition('Switch 2 Pro Controller', () => new SwitchProGamepadMapping(), '057e:2069'),
|
|
142
|
+
createStaticGamepadDefinition('Switch 2 GameCube Controller', () => new GameCubeGamepadMapping(), '057e:2073'),
|
|
143
|
+
createStaticGamepadDefinition('Steam Controller', () => new SteamControllerGamepadMapping(), ['28de:1102', '28de:1142']),
|
|
144
|
+
createStaticGamepadDefinition('F310 Gamepad', () => new GenericDualAnalogGamepadMapping(), '046d:c216'),
|
|
145
|
+
createStaticGamepadDefinition('F710 Gamepad', () => new GenericDualAnalogGamepadMapping(), ['046d:c219', '046d:c21f']),
|
|
146
|
+
createStaticGamepadDefinition('8BitDo P30 Controller', () => new GenericDualAnalogGamepadMapping(), ['2dc8:5107', '2dc8:5108']),
|
|
147
|
+
createStaticGamepadDefinition('8BitDo SF30 Pro Controller', () => new SwitchProGamepadMapping(), ['2dc8:3000', '2dc8:6100', '2dc8:6101']),
|
|
148
|
+
createStaticGamepadDefinition('8BitDo SN30 Controller', () => new SwitchProGamepadMapping(), ['2dc8:3001', '2dc8:5103', '2dc8:9020', '2dc8:ab20', '2dc8:2840', '2dc8:2862']),
|
|
149
|
+
createStaticGamepadDefinition('8BitDo NES30 Controller', () => new GenericDualAnalogGamepadMapping(), '2dc8:ab12'),
|
|
150
|
+
createStaticGamepadDefinition('PowerA Switch Controller', () => new SwitchProGamepadMapping(), '20d6:a713'),
|
|
151
|
+
createStaticGamepadDefinition('PowerA OPS Pro Wireless Controller', () => new GenericDualAnalogGamepadMapping(), '20d6:4033'),
|
|
152
|
+
createStaticGamepadDefinition('PowerA OPS Wireless Controller', () => new GenericDualAnalogGamepadMapping(), '20d6:4026'),
|
|
153
|
+
createStaticGamepadDefinition('Nacon Revolution 3 Controller', () => new PlayStationGamepadMapping(), '146b:0611'),
|
|
154
|
+
createStaticGamepadDefinition('Nacon Revolution Unlimited Pro Controller', () => new PlayStationGamepadMapping(), '146b:0d08'),
|
|
155
|
+
createStaticGamepadDefinition('Nacon Revolution Infinity Controller', () => new PlayStationGamepadMapping(), '146b:0d10'),
|
|
156
|
+
createStaticGamepadDefinition('Nacon Revolution 5 Pro Controller', () => new PlayStationGamepadMapping(), ['3285:0d17', '3285:0d19']),
|
|
157
|
+
createStaticGamepadDefinition('Razer Raiju Controller', () => new PlayStationGamepadMapping(), '1532:1000'),
|
|
158
|
+
createStaticGamepadDefinition('Razer Raiju Mobile Controller', () => new PlayStationGamepadMapping(), ['1532:0705', '1532:0707']),
|
|
159
|
+
createStaticGamepadDefinition('Razer Raiju Tournament Edition Controller', () => new PlayStationGamepadMapping(), ['1532:1007', '1532:100a']),
|
|
160
|
+
createStaticGamepadDefinition('Razer Raiju Ultimate Controller', () => new PlayStationGamepadMapping(), ['1532:1004', '1532:1009']),
|
|
161
|
+
createStaticGamepadDefinition('Razer Raion Controller', () => new ArcadeStickGamepadMapping(), '1532:1100'),
|
|
162
|
+
];
|
|
163
|
+
const vendorFallbackDefinitions = [
|
|
164
|
+
createStaticGamepadDefinition('Microsoft Controller', () => new XboxGamepadMapping(), '045e'),
|
|
165
|
+
createStaticGamepadDefinition('Sony Controller', () => new PlayStationGamepadMapping(), '054c'),
|
|
166
|
+
];
|
|
167
|
+
const genericFallbackDefinition = createStaticGamepadDefinition('Generic Gamepad', () => new GenericDualAnalogGamepadMapping());
|
|
168
|
+
const builtInGamepadDefinitions = [
|
|
169
|
+
...exactDeviceDefinitions,
|
|
170
|
+
...vendorFallbackDefinitions,
|
|
171
|
+
genericFallbackDefinition,
|
|
172
|
+
];
|
|
173
|
+
|
|
174
|
+
export { builtInGamepadDefinitions, matchesIds, normalizeIds, parseGamepadDescriptor, resolveDefinition, resolveGamepadDefinition };
|
|
175
|
+
//# sourceMappingURL=GamepadDefinitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GamepadDefinitions.js","sources":["../../../../src/input/GamepadDefinitions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { GamepadControl } from './GamepadControl';
|
|
2
|
+
import type { GamepadControlOptions } from './GamepadControl';
|
|
3
|
+
import type { GamepadChannel } from './GamepadChannels';
|
|
4
|
+
export declare enum GamepadMappingFamily {
|
|
5
|
+
GenericDualAnalog = "genericDualAnalog",
|
|
6
|
+
Xbox = "xbox",
|
|
7
|
+
PlayStation = "playStation",
|
|
8
|
+
SwitchPro = "switchPro",
|
|
9
|
+
JoyConLeft = "joyConLeft",
|
|
10
|
+
JoyConRight = "joyConRight",
|
|
11
|
+
GameCube = "gameCube",
|
|
12
|
+
SteamController = "steamController",
|
|
13
|
+
ArcadeStick = "arcadeStick"
|
|
14
|
+
}
|
|
15
|
+
export type GamepadControlDefinition = readonly [number, GamepadChannel, GamepadControlOptions?];
|
|
16
|
+
export declare abstract class GamepadMapping {
|
|
17
|
+
abstract readonly family: GamepadMappingFamily;
|
|
18
|
+
readonly buttons: Array<GamepadControl>;
|
|
19
|
+
readonly axes: Array<GamepadControl>;
|
|
20
|
+
protected constructor(buttons: Array<GamepadControl>, axes: Array<GamepadControl>);
|
|
21
|
+
destroy(): void;
|
|
22
|
+
static createControls(definitions: ReadonlyArray<GamepadControlDefinition>): Array<GamepadControl>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { GamepadControl } from './GamepadControl.js';
|
|
2
|
+
|
|
3
|
+
var GamepadMappingFamily;
|
|
4
|
+
(function (GamepadMappingFamily) {
|
|
5
|
+
GamepadMappingFamily["GenericDualAnalog"] = "genericDualAnalog";
|
|
6
|
+
GamepadMappingFamily["Xbox"] = "xbox";
|
|
7
|
+
GamepadMappingFamily["PlayStation"] = "playStation";
|
|
8
|
+
GamepadMappingFamily["SwitchPro"] = "switchPro";
|
|
9
|
+
GamepadMappingFamily["JoyConLeft"] = "joyConLeft";
|
|
10
|
+
GamepadMappingFamily["JoyConRight"] = "joyConRight";
|
|
11
|
+
GamepadMappingFamily["GameCube"] = "gameCube";
|
|
12
|
+
GamepadMappingFamily["SteamController"] = "steamController";
|
|
13
|
+
GamepadMappingFamily["ArcadeStick"] = "arcadeStick";
|
|
14
|
+
})(GamepadMappingFamily || (GamepadMappingFamily = {}));
|
|
15
|
+
class GamepadMapping {
|
|
16
|
+
buttons;
|
|
17
|
+
axes;
|
|
18
|
+
constructor(buttons, axes) {
|
|
19
|
+
this.buttons = buttons;
|
|
20
|
+
this.axes = axes;
|
|
21
|
+
}
|
|
22
|
+
destroy() {
|
|
23
|
+
this.buttons.length = 0;
|
|
24
|
+
this.axes.length = 0;
|
|
25
|
+
}
|
|
26
|
+
static createControls(definitions) {
|
|
27
|
+
return definitions.map(([index, channel, options]) => new GamepadControl(index, channel, options));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export { GamepadMapping, GamepadMappingFamily };
|
|
32
|
+
//# sourceMappingURL=GamepadMapping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GamepadMapping.js","sources":["../../../../src/input/GamepadMapping.ts"],"sourcesContent":[null],"names":[],"mappings":";;IAKY;AAAZ,CAAA,UAAY,oBAAoB,EAAA;AAC5B,IAAA,oBAAA,CAAA,mBAAA,CAAA,GAAA,mBAAuC;AACvC,IAAA,oBAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,oBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,oBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,oBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB;AACzB,IAAA,oBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,oBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,oBAAA,CAAA,iBAAA,CAAA,GAAA,iBAAmC;AACnC,IAAA,oBAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC/B,CAAC,EAVW,oBAAoB,KAApB,oBAAoB,GAAA,EAAA,CAAA,CAAA;MAcV,cAAc,CAAA;AAGhB,IAAA,OAAO;AACP,IAAA,IAAI;IAEpB,WAAA,CAAsB,OAA8B,EAAE,IAA2B,EAAA;AAC7E,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;IACpB;IAEO,OAAO,GAAA;AACV,QAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;IACxB;IAEO,OAAO,cAAc,CAAC,WAAoD,EAAA;QAC7E,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACtG;AACH;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GamepadChannel } from './GamepadChannels';
|
|
2
|
+
import { GamepadMappingFamily } from './GamepadMapping';
|
|
3
|
+
export type GamepadPromptControl = 'DPad' | 'DPadUp' | 'DPadDown' | 'DPadLeft' | 'DPadRight' | 'ButtonNorth' | 'ButtonWest' | 'ButtonEast' | 'ButtonSouth' | 'LeftShoulder' | 'RightShoulder' | 'LeftTrigger' | 'RightTrigger' | 'Select' | 'Start' | 'LeftStick' | 'RightStick';
|
|
4
|
+
export declare class GamepadPromptLayouts {
|
|
5
|
+
static readonly controls: Array<GamepadPromptControl>;
|
|
6
|
+
static getControlPosition(control: GamepadPromptControl): readonly [number, number];
|
|
7
|
+
static getControlLabels(family: GamepadMappingFamily): ReadonlyMap<GamepadPromptControl, string>;
|
|
8
|
+
static buildControlChannelMap(): ReadonlyMap<GamepadPromptControl, GamepadChannel>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { GamepadChannel } from './GamepadChannels.js';
|
|
2
|
+
import { GamepadMappingFamily } from './GamepadMapping.js';
|
|
3
|
+
|
|
4
|
+
const basePositions = new Map([
|
|
5
|
+
['DPad', [0.22, 0.58]],
|
|
6
|
+
['DPadUp', [0.22, 0.50]],
|
|
7
|
+
['DPadDown', [0.22, 0.66]],
|
|
8
|
+
['DPadLeft', [0.14, 0.58]],
|
|
9
|
+
['DPadRight', [0.30, 0.58]],
|
|
10
|
+
['ButtonNorth', [0.78, 0.50]],
|
|
11
|
+
['ButtonWest', [0.70, 0.58]],
|
|
12
|
+
['ButtonEast', [0.86, 0.58]],
|
|
13
|
+
['ButtonSouth', [0.78, 0.66]],
|
|
14
|
+
['LeftShoulder', [0.28, 0.28]],
|
|
15
|
+
['RightShoulder', [0.72, 0.28]],
|
|
16
|
+
['LeftTrigger', [0.20, 0.16]],
|
|
17
|
+
['RightTrigger', [0.80, 0.16]],
|
|
18
|
+
['Select', [0.46, 0.50]],
|
|
19
|
+
['Start', [0.54, 0.50]],
|
|
20
|
+
['LeftStick', [0.38, 0.66]],
|
|
21
|
+
['RightStick', [0.62, 0.66]],
|
|
22
|
+
]);
|
|
23
|
+
const channelMap = new Map([
|
|
24
|
+
['ButtonNorth', GamepadChannel.ButtonNorth],
|
|
25
|
+
['ButtonWest', GamepadChannel.ButtonWest],
|
|
26
|
+
['ButtonEast', GamepadChannel.ButtonEast],
|
|
27
|
+
['ButtonSouth', GamepadChannel.ButtonSouth],
|
|
28
|
+
['LeftShoulder', GamepadChannel.LeftShoulder],
|
|
29
|
+
['RightShoulder', GamepadChannel.RightShoulder],
|
|
30
|
+
['LeftTrigger', GamepadChannel.LeftTrigger],
|
|
31
|
+
['RightTrigger', GamepadChannel.RightTrigger],
|
|
32
|
+
['Select', GamepadChannel.Select],
|
|
33
|
+
['Start', GamepadChannel.Start],
|
|
34
|
+
['LeftStick', GamepadChannel.LeftStick],
|
|
35
|
+
['RightStick', GamepadChannel.RightStick],
|
|
36
|
+
['DPadUp', GamepadChannel.DPadUp],
|
|
37
|
+
['DPadDown', GamepadChannel.DPadDown],
|
|
38
|
+
['DPadLeft', GamepadChannel.DPadLeft],
|
|
39
|
+
['DPadRight', GamepadChannel.DPadRight],
|
|
40
|
+
]);
|
|
41
|
+
const genericLabels = new Map([
|
|
42
|
+
['ButtonNorth', 'North'],
|
|
43
|
+
['ButtonWest', 'West'],
|
|
44
|
+
['ButtonEast', 'East'],
|
|
45
|
+
['ButtonSouth', 'South'],
|
|
46
|
+
['LeftShoulder', 'L1'],
|
|
47
|
+
['RightShoulder', 'R1'],
|
|
48
|
+
['LeftTrigger', 'L2'],
|
|
49
|
+
['RightTrigger', 'R2'],
|
|
50
|
+
['Select', 'Select'],
|
|
51
|
+
['Start', 'Start'],
|
|
52
|
+
['LeftStick', 'L3'],
|
|
53
|
+
['RightStick', 'R3'],
|
|
54
|
+
]);
|
|
55
|
+
const xboxLabels = new Map([
|
|
56
|
+
['ButtonNorth', 'Y'],
|
|
57
|
+
['ButtonWest', 'X'],
|
|
58
|
+
['ButtonEast', 'B'],
|
|
59
|
+
['ButtonSouth', 'A'],
|
|
60
|
+
['LeftShoulder', 'LB'],
|
|
61
|
+
['RightShoulder', 'RB'],
|
|
62
|
+
['LeftTrigger', 'LT'],
|
|
63
|
+
['RightTrigger', 'RT'],
|
|
64
|
+
['Select', 'View'],
|
|
65
|
+
['Start', 'Menu'],
|
|
66
|
+
['LeftStick', 'L3'],
|
|
67
|
+
['RightStick', 'R3'],
|
|
68
|
+
]);
|
|
69
|
+
const playStationLabels = new Map([
|
|
70
|
+
['ButtonNorth', 'Triangle'],
|
|
71
|
+
['ButtonWest', 'Square'],
|
|
72
|
+
['ButtonEast', 'Circle'],
|
|
73
|
+
['ButtonSouth', 'Cross'],
|
|
74
|
+
['LeftShoulder', 'L1'],
|
|
75
|
+
['RightShoulder', 'R1'],
|
|
76
|
+
['LeftTrigger', 'L2'],
|
|
77
|
+
['RightTrigger', 'R2'],
|
|
78
|
+
['Select', 'Create'],
|
|
79
|
+
['Start', 'Options'],
|
|
80
|
+
['LeftStick', 'L3'],
|
|
81
|
+
['RightStick', 'R3'],
|
|
82
|
+
]);
|
|
83
|
+
const switchLabels = new Map([
|
|
84
|
+
['ButtonNorth', 'X'],
|
|
85
|
+
['ButtonWest', 'Y'],
|
|
86
|
+
['ButtonEast', 'A'],
|
|
87
|
+
['ButtonSouth', 'B'],
|
|
88
|
+
['LeftShoulder', 'L'],
|
|
89
|
+
['RightShoulder', 'R'],
|
|
90
|
+
['LeftTrigger', 'ZL'],
|
|
91
|
+
['RightTrigger', 'ZR'],
|
|
92
|
+
['Select', 'Minus'],
|
|
93
|
+
['Start', 'Plus'],
|
|
94
|
+
['LeftStick', 'L3'],
|
|
95
|
+
['RightStick', 'R3'],
|
|
96
|
+
]);
|
|
97
|
+
const promptLabelsByFamily = new Map([
|
|
98
|
+
[GamepadMappingFamily.GenericDualAnalog, genericLabels],
|
|
99
|
+
[GamepadMappingFamily.Xbox, xboxLabels],
|
|
100
|
+
[GamepadMappingFamily.PlayStation, playStationLabels],
|
|
101
|
+
[GamepadMappingFamily.SwitchPro, switchLabels],
|
|
102
|
+
[GamepadMappingFamily.JoyConLeft, switchLabels],
|
|
103
|
+
[GamepadMappingFamily.JoyConRight, switchLabels],
|
|
104
|
+
[GamepadMappingFamily.GameCube, genericLabels],
|
|
105
|
+
[GamepadMappingFamily.SteamController, genericLabels],
|
|
106
|
+
[GamepadMappingFamily.ArcadeStick, genericLabels],
|
|
107
|
+
]);
|
|
108
|
+
class GamepadPromptLayouts {
|
|
109
|
+
static controls = [
|
|
110
|
+
'DPad',
|
|
111
|
+
'DPadUp',
|
|
112
|
+
'DPadDown',
|
|
113
|
+
'DPadLeft',
|
|
114
|
+
'DPadRight',
|
|
115
|
+
'ButtonNorth',
|
|
116
|
+
'ButtonWest',
|
|
117
|
+
'ButtonEast',
|
|
118
|
+
'ButtonSouth',
|
|
119
|
+
'LeftShoulder',
|
|
120
|
+
'RightShoulder',
|
|
121
|
+
'LeftTrigger',
|
|
122
|
+
'RightTrigger',
|
|
123
|
+
'Select',
|
|
124
|
+
'Start',
|
|
125
|
+
'LeftStick',
|
|
126
|
+
'RightStick',
|
|
127
|
+
];
|
|
128
|
+
static getControlPosition(control) {
|
|
129
|
+
return basePositions.get(control) ?? [0.5, 0.5];
|
|
130
|
+
}
|
|
131
|
+
static getControlLabels(family) {
|
|
132
|
+
return promptLabelsByFamily.get(family) ?? genericLabels;
|
|
133
|
+
}
|
|
134
|
+
static buildControlChannelMap() {
|
|
135
|
+
return channelMap;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
export { GamepadPromptLayouts };
|
|
140
|
+
//# sourceMappingURL=GamepadPromptLayouts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GamepadPromptLayouts.js","sources":["../../../../src/input/GamepadPromptLayouts.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { GamepadChannel } from './GamepadChannels.js';
|
|
2
|
+
import { GamepadMapping, GamepadMappingFamily } from './GamepadMapping.js';
|
|
3
|
+
|
|
4
|
+
const genericDualAnalogButtonDefinitions = [
|
|
5
|
+
[0, GamepadChannel.ButtonSouth],
|
|
6
|
+
[1, GamepadChannel.ButtonEast],
|
|
7
|
+
[2, GamepadChannel.ButtonWest],
|
|
8
|
+
[3, GamepadChannel.ButtonNorth],
|
|
9
|
+
[4, GamepadChannel.LeftShoulder],
|
|
10
|
+
[5, GamepadChannel.RightShoulder],
|
|
11
|
+
[6, GamepadChannel.LeftTrigger],
|
|
12
|
+
[7, GamepadChannel.RightTrigger],
|
|
13
|
+
[8, GamepadChannel.Select],
|
|
14
|
+
[9, GamepadChannel.Start],
|
|
15
|
+
[10, GamepadChannel.LeftStick],
|
|
16
|
+
[11, GamepadChannel.RightStick],
|
|
17
|
+
[12, GamepadChannel.DPadUp],
|
|
18
|
+
[13, GamepadChannel.DPadDown],
|
|
19
|
+
[14, GamepadChannel.DPadLeft],
|
|
20
|
+
[15, GamepadChannel.DPadRight],
|
|
21
|
+
[16, GamepadChannel.Guide],
|
|
22
|
+
[17, GamepadChannel.Share],
|
|
23
|
+
[18, GamepadChannel.Capture],
|
|
24
|
+
[19, GamepadChannel.Touchpad],
|
|
25
|
+
[20, GamepadChannel.Paddle1],
|
|
26
|
+
];
|
|
27
|
+
const genericDualAnalogAxisDefinitions = [
|
|
28
|
+
[0, GamepadChannel.LeftStickLeft, { invert: true }],
|
|
29
|
+
[0, GamepadChannel.LeftStickRight],
|
|
30
|
+
[1, GamepadChannel.LeftStickUp, { invert: true }],
|
|
31
|
+
[1, GamepadChannel.LeftStickDown],
|
|
32
|
+
[2, GamepadChannel.RightStickLeft, { invert: true }],
|
|
33
|
+
[2, GamepadChannel.RightStickRight],
|
|
34
|
+
[3, GamepadChannel.RightStickUp, { invert: true }],
|
|
35
|
+
[3, GamepadChannel.RightStickDown],
|
|
36
|
+
[4, GamepadChannel.AuxiliaryAxis0Negative, { invert: true }],
|
|
37
|
+
[4, GamepadChannel.AuxiliaryAxis0Positive],
|
|
38
|
+
[5, GamepadChannel.AuxiliaryAxis1Negative, { invert: true }],
|
|
39
|
+
[5, GamepadChannel.AuxiliaryAxis1Positive],
|
|
40
|
+
[6, GamepadChannel.AuxiliaryAxis2Negative, { invert: true }],
|
|
41
|
+
[6, GamepadChannel.AuxiliaryAxis2Positive],
|
|
42
|
+
[7, GamepadChannel.AuxiliaryAxis3Negative, { invert: true }],
|
|
43
|
+
[7, GamepadChannel.AuxiliaryAxis3Positive],
|
|
44
|
+
];
|
|
45
|
+
class GenericDualAnalogGamepadMapping extends GamepadMapping {
|
|
46
|
+
family = GamepadMappingFamily.GenericDualAnalog;
|
|
47
|
+
constructor() {
|
|
48
|
+
super(GamepadMapping.createControls(genericDualAnalogButtonDefinitions), GamepadMapping.createControls(genericDualAnalogAxisDefinitions));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export { GenericDualAnalogGamepadMapping };
|
|
53
|
+
//# sourceMappingURL=GenericDualAnalogGamepadMapping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GenericDualAnalogGamepadMapping.js","sources":["../../../../src/input/GenericDualAnalogGamepadMapping.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|