@babylonjs/core 5.24.0 → 5.26.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/Actions/action.d.ts +12 -21
- package/Actions/action.js +8 -17
- package/Actions/action.js.map +1 -1
- package/Actions/actionManager.d.ts +2 -5
- package/Actions/actionManager.js +2 -5
- package/Actions/actionManager.js.map +1 -1
- package/Actions/condition.d.ts +9 -50
- package/Actions/condition.js +3 -26
- package/Actions/condition.js.map +1 -1
- package/Actions/directActions.d.ts +7 -7
- package/Actions/directActions.js +7 -7
- package/Actions/directActions.js.map +1 -1
- package/Actions/directAudioActions.d.ts +2 -2
- package/Actions/directAudioActions.js +2 -2
- package/Actions/directAudioActions.js.map +1 -1
- package/Actions/interpolateValueAction.d.ts +1 -1
- package/Actions/interpolateValueAction.js +1 -1
- package/Actions/interpolateValueAction.js.map +1 -1
- package/Animations/animatable.d.ts +5 -6
- package/Animations/animatable.js +1 -2
- package/Animations/animatable.js.map +1 -1
- package/Animations/animation.d.ts +6 -20
- package/Animations/animation.js +6 -20
- package/Animations/animation.js.map +1 -1
- package/Animations/animationEvent.d.ts +1 -1
- package/Animations/animationEvent.js +1 -1
- package/Animations/animationEvent.js.map +1 -1
- package/Animations/animationGroup.d.ts +1 -1
- package/Animations/animationGroup.js +1 -1
- package/Animations/animationGroup.js.map +1 -1
- package/Animations/easing.d.ts +13 -26
- package/Animations/easing.js +13 -26
- package/Animations/easing.js.map +1 -1
- package/Animations/runtimeAnimation.d.ts +3 -4
- package/Animations/runtimeAnimation.js +1 -2
- package/Animations/runtimeAnimation.js.map +1 -1
- package/Audio/audioEngine.js +1 -2
- package/Audio/audioEngine.js.map +1 -1
- package/Audio/audioSceneComponent.d.ts +1 -1
- package/Audio/audioSceneComponent.js.map +1 -1
- package/Audio/sound.d.ts +3 -4
- package/Audio/sound.js +2 -3
- package/Audio/sound.js.map +1 -1
- package/BakedVertexAnimation/bakedVertexAnimationManager.d.ts +1 -1
- package/BakedVertexAnimation/bakedVertexAnimationManager.js +1 -1
- package/BakedVertexAnimation/bakedVertexAnimationManager.js.map +1 -1
- package/Behaviors/Meshes/attachToBoxBehavior.js +1 -1
- package/Behaviors/Meshes/attachToBoxBehavior.js.map +1 -1
- package/Behaviors/Meshes/baseSixDofDragBehavior.js +5 -5
- package/Behaviors/Meshes/baseSixDofDragBehavior.js.map +1 -1
- package/Behaviors/Meshes/followBehavior.d.ts +1 -1
- package/Behaviors/Meshes/followBehavior.js +1 -1
- package/Behaviors/Meshes/followBehavior.js.map +1 -1
- package/Behaviors/Meshes/pointerDragBehavior.d.ts +1 -1
- package/Behaviors/Meshes/pointerDragBehavior.js +1 -1
- package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
- package/Bones/bone.d.ts +7 -9
- package/Bones/bone.js +7 -9
- package/Bones/bone.js.map +1 -1
- package/Bones/skeleton.d.ts +6 -8
- package/Bones/skeleton.js +6 -8
- package/Bones/skeleton.js.map +1 -1
- package/Buffers/buffer.d.ts +6 -6
- package/Buffers/buffer.js +14 -16
- package/Buffers/buffer.js.map +1 -1
- package/Buffers/storageBuffer.d.ts +1 -1
- package/Buffers/storageBuffer.js +1 -1
- package/Buffers/storageBuffer.js.map +1 -1
- package/Cameras/Inputs/arcRotateCameraVRDeviceOrientationInput.d.ts +1 -2
- package/Cameras/Inputs/arcRotateCameraVRDeviceOrientationInput.js +1 -2
- package/Cameras/Inputs/arcRotateCameraVRDeviceOrientationInput.js.map +1 -1
- package/Cameras/Inputs/flyCameraKeyboardInput.d.ts +1 -1
- package/Cameras/Inputs/flyCameraKeyboardInput.js +1 -1
- package/Cameras/Inputs/flyCameraKeyboardInput.js.map +1 -1
- package/Cameras/Inputs/freeCameraDeviceOrientationInput.d.ts +6 -3
- package/Cameras/Inputs/freeCameraDeviceOrientationInput.js +18 -5
- package/Cameras/Inputs/freeCameraDeviceOrientationInput.js.map +1 -1
- package/Cameras/Inputs/freeCameraKeyboardMoveInput.d.ts +1 -1
- package/Cameras/Inputs/freeCameraKeyboardMoveInput.js +1 -1
- package/Cameras/Inputs/freeCameraKeyboardMoveInput.js.map +1 -1
- package/Cameras/Inputs/freeCameraMouseInput.d.ts +1 -1
- package/Cameras/Inputs/freeCameraMouseInput.js +1 -1
- package/Cameras/Inputs/freeCameraMouseInput.js.map +1 -1
- package/Cameras/RigModes/stereoscopicAnaglyphRigMode.d.ts +1 -2
- package/Cameras/RigModes/stereoscopicAnaglyphRigMode.js +1 -2
- package/Cameras/RigModes/stereoscopicAnaglyphRigMode.js.map +1 -1
- package/Cameras/RigModes/stereoscopicRigMode.d.ts +1 -2
- package/Cameras/RigModes/stereoscopicRigMode.js +1 -2
- package/Cameras/RigModes/stereoscopicRigMode.js.map +1 -1
- package/Cameras/RigModes/vrRigMode.d.ts +1 -3
- package/Cameras/RigModes/vrRigMode.js +1 -3
- package/Cameras/RigModes/vrRigMode.js.map +1 -1
- package/Cameras/RigModes/webVRRigMode.d.ts +1 -3
- package/Cameras/RigModes/webVRRigMode.js +1 -3
- package/Cameras/RigModes/webVRRigMode.js.map +1 -1
- package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.d.ts +2 -3
- package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.js +2 -3
- package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.js.map +1 -1
- package/Cameras/VR/vrCameraMetrics.d.ts +4 -4
- package/Cameras/VR/vrCameraMetrics.js +4 -4
- package/Cameras/VR/vrCameraMetrics.js.map +1 -1
- package/Cameras/VR/vrExperienceHelper.js +20 -48
- package/Cameras/VR/vrExperienceHelper.js.map +1 -1
- package/Cameras/VR/webVRCamera.d.ts +9 -9
- package/Cameras/VR/webVRCamera.js +9 -9
- package/Cameras/VR/webVRCamera.js.map +1 -1
- package/Cameras/arcRotateCamera.d.ts +11 -12
- package/Cameras/arcRotateCamera.js +8 -9
- package/Cameras/arcRotateCamera.js.map +1 -1
- package/Cameras/camera.d.ts +29 -38
- package/Cameras/camera.js +27 -36
- package/Cameras/camera.js.map +1 -1
- package/Cameras/deviceOrientationCamera.d.ts +1 -1
- package/Cameras/deviceOrientationCamera.js +1 -1
- package/Cameras/deviceOrientationCamera.js.map +1 -1
- package/Cameras/flyCamera.d.ts +8 -12
- package/Cameras/flyCamera.js +6 -10
- package/Cameras/flyCamera.js.map +1 -1
- package/Cameras/followCamera.d.ts +2 -2
- package/Cameras/followCamera.js +2 -2
- package/Cameras/followCamera.js.map +1 -1
- package/Cameras/freeCamera.d.ts +6 -7
- package/Cameras/freeCamera.js +4 -5
- package/Cameras/freeCamera.js.map +1 -1
- package/Cameras/freeCameraInputsManager.d.ts +2 -2
- package/Cameras/freeCameraInputsManager.js +2 -2
- package/Cameras/freeCameraInputsManager.js.map +1 -1
- package/Cameras/targetCamera.d.ts +21 -24
- package/Cameras/targetCamera.js +20 -23
- package/Cameras/targetCamera.js.map +1 -1
- package/Cameras/touchCamera.d.ts +1 -1
- package/Cameras/touchCamera.js +1 -1
- package/Cameras/touchCamera.js.map +1 -1
- package/Collisions/collider.d.ts +13 -44
- package/Collisions/collider.js +10 -41
- package/Collisions/collider.js.map +1 -1
- package/Collisions/collisionCoordinator.d.ts +2 -2
- package/Collisions/collisionCoordinator.js +1 -1
- package/Collisions/collisionCoordinator.js.map +1 -1
- package/Collisions/intersectionInfo.d.ts +1 -1
- package/Collisions/intersectionInfo.js +1 -1
- package/Collisions/intersectionInfo.js.map +1 -1
- package/Collisions/meshCollisionData.d.ts +1 -1
- package/Collisions/meshCollisionData.js +1 -1
- package/Collisions/meshCollisionData.js.map +1 -1
- package/Collisions/pickingInfo.d.ts +1 -1
- package/Collisions/pickingInfo.js +1 -1
- package/Collisions/pickingInfo.js.map +1 -1
- package/Compute/IComputeContext.d.ts +1 -1
- package/Compute/IComputeContext.js.map +1 -1
- package/Compute/IComputePipelineContext.d.ts +2 -2
- package/Compute/IComputePipelineContext.js.map +1 -1
- package/Compute/computeEffect.d.ts +5 -5
- package/Compute/computeEffect.js +5 -5
- package/Compute/computeEffect.js.map +1 -1
- package/Culling/Octrees/octreeBlock.d.ts +1 -9
- package/Culling/Octrees/octreeBlock.js +1 -9
- package/Culling/Octrees/octreeBlock.js.map +1 -1
- package/Culling/Octrees/octreeSceneComponent.d.ts +2 -2
- package/Culling/Octrees/octreeSceneComponent.js +1 -5
- package/Culling/Octrees/octreeSceneComponent.js.map +1 -1
- package/Culling/boundingBox.d.ts +4 -5
- package/Culling/boundingBox.js +3 -4
- package/Culling/boundingBox.js.map +1 -1
- package/Culling/boundingInfo.d.ts +1 -2
- package/Culling/boundingInfo.js +1 -2
- package/Culling/boundingInfo.js.map +1 -1
- package/Culling/boundingSphere.d.ts +1 -2
- package/Culling/boundingSphere.js +1 -2
- package/Culling/boundingSphere.js.map +1 -1
- package/Culling/ray.d.ts +6 -6
- package/Culling/ray.js.map +1 -1
- package/Debug/debugLayer.d.ts +1 -1
- package/Debug/debugLayer.js.map +1 -1
- package/Debug/physicsViewer.d.ts +6 -6
- package/Debug/physicsViewer.js +4 -4
- package/Debug/physicsViewer.js.map +1 -1
- package/DeviceInput/InputDevices/deviceEnums.d.ts +1 -1
- package/DeviceInput/InputDevices/deviceEnums.js +1 -1
- package/DeviceInput/InputDevices/deviceEnums.js.map +1 -1
- package/DeviceInput/InputDevices/deviceSourceManager.d.ts +3 -3
- package/DeviceInput/InputDevices/deviceSourceManager.js +3 -3
- package/DeviceInput/InputDevices/deviceSourceManager.js.map +1 -1
- package/DeviceInput/internalDeviceSourceManager.d.ts +3 -3
- package/DeviceInput/internalDeviceSourceManager.js +1 -1
- package/DeviceInput/internalDeviceSourceManager.js.map +1 -1
- package/DeviceInput/nativeDeviceInputSystem.d.ts +1 -1
- package/DeviceInput/nativeDeviceInputSystem.js +1 -1
- package/DeviceInput/nativeDeviceInputSystem.js.map +1 -1
- package/DeviceInput/webDeviceInputSystem.d.ts +1 -1
- package/DeviceInput/webDeviceInputSystem.js +1 -19
- package/DeviceInput/webDeviceInputSystem.js.map +1 -1
- package/Engines/Extensions/engine.computeShader.d.ts +7 -7
- package/Engines/Extensions/engine.computeShader.js +1 -1
- package/Engines/Extensions/engine.computeShader.js.map +1 -1
- package/Engines/Extensions/engine.cubeTexture.d.ts +6 -6
- package/Engines/Extensions/engine.cubeTexture.js +3 -2
- package/Engines/Extensions/engine.cubeTexture.js.map +1 -1
- package/Engines/Extensions/engine.debugging.d.ts +4 -4
- package/Engines/Extensions/engine.debugging.js.map +1 -1
- package/Engines/Extensions/engine.multiview.d.ts +9 -9
- package/Engines/Extensions/engine.multiview.js.map +1 -1
- package/Engines/Extensions/engine.query.d.ts +22 -22
- package/Engines/Extensions/engine.query.js +8 -8
- package/Engines/Extensions/engine.query.js.map +1 -1
- package/Engines/Extensions/engine.rawTexture.js +3 -7
- package/Engines/Extensions/engine.rawTexture.js.map +1 -1
- package/Engines/Extensions/engine.readTexture.d.ts +2 -2
- package/Engines/Extensions/engine.readTexture.js.map +1 -1
- package/Engines/Extensions/engine.renderTarget.d.ts +2 -2
- package/Engines/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/Extensions/engine.textureSelector.d.ts +2 -2
- package/Engines/Extensions/engine.textureSelector.js.map +1 -1
- package/Engines/Extensions/engine.transformFeedback.d.ts +1 -1
- package/Engines/Extensions/engine.transformFeedback.js +1 -1
- package/Engines/Extensions/engine.transformFeedback.js.map +1 -1
- package/Engines/Extensions/engine.views.d.ts +2 -2
- package/Engines/Extensions/engine.views.js.map +1 -1
- package/Engines/Extensions/engine.webVR.d.ts +13 -13
- package/Engines/Extensions/engine.webVR.js.map +1 -1
- package/Engines/IDrawContext.d.ts +1 -1
- package/Engines/IDrawContext.js.map +1 -1
- package/Engines/IMaterialContext.d.ts +1 -1
- package/Engines/IMaterialContext.js.map +1 -1
- package/Engines/IPipelineContext.d.ts +5 -5
- package/Engines/IPipelineContext.js.map +1 -1
- package/Engines/Native/nativeDataStream.d.ts +2 -2
- package/Engines/Native/nativeDataStream.js +1 -1
- package/Engines/Native/nativeDataStream.js.map +1 -1
- package/Engines/Native/nativeInterfaces.d.ts +10 -10
- package/Engines/Native/nativeInterfaces.js.map +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineAndOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineAndOperator.js +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineAndOperator.js.map +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.js +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineArithmeticOperator.js.map +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineIsDefinedOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineIsDefinedOperator.js +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineIsDefinedOperator.js.map +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineOrOperator.d.ts +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineOrOperator.js +1 -1
- package/Engines/Processors/Expressions/Operators/shaderDefineOrOperator.js.map +1 -1
- package/Engines/Processors/Expressions/shaderDefineExpression.d.ts +1 -1
- package/Engines/Processors/Expressions/shaderDefineExpression.js +1 -1
- package/Engines/Processors/Expressions/shaderDefineExpression.js.map +1 -1
- package/Engines/Processors/iShaderProcessor.d.ts +1 -1
- package/Engines/Processors/iShaderProcessor.js.map +1 -1
- package/Engines/Processors/shaderCodeConditionNode.d.ts +1 -1
- package/Engines/Processors/shaderCodeConditionNode.js +1 -1
- package/Engines/Processors/shaderCodeConditionNode.js.map +1 -1
- package/Engines/Processors/shaderCodeCursor.d.ts +1 -1
- package/Engines/Processors/shaderCodeCursor.js +1 -1
- package/Engines/Processors/shaderCodeCursor.js.map +1 -1
- package/Engines/Processors/shaderCodeNode.d.ts +1 -1
- package/Engines/Processors/shaderCodeNode.js +1 -1
- package/Engines/Processors/shaderCodeNode.js.map +1 -1
- package/Engines/Processors/shaderCodeTestNode.d.ts +1 -1
- package/Engines/Processors/shaderCodeTestNode.js +1 -1
- package/Engines/Processors/shaderCodeTestNode.js.map +1 -1
- package/Engines/Processors/shaderProcessingOptions.d.ts +2 -2
- package/Engines/Processors/shaderProcessingOptions.js.map +1 -1
- package/Engines/Processors/shaderProcessor.d.ts +2 -2
- package/Engines/Processors/shaderProcessor.js +2 -2
- package/Engines/Processors/shaderProcessor.js.map +1 -1
- package/Engines/WebGL/webGL2ShaderProcessors.d.ts +1 -1
- package/Engines/WebGL/webGL2ShaderProcessors.js +1 -1
- package/Engines/WebGL/webGL2ShaderProcessors.js.map +1 -1
- package/Engines/WebGL/webGLHardwareTexture.d.ts +1 -1
- package/Engines/WebGL/webGLHardwareTexture.js +1 -1
- package/Engines/WebGL/webGLHardwareTexture.js.map +1 -1
- package/Engines/WebGL/webGLPipelineContext.d.ts +6 -25
- package/Engines/WebGL/webGLPipelineContext.js +6 -25
- package/Engines/WebGL/webGLPipelineContext.js.map +1 -1
- package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +2 -2
- package/Engines/WebGL/webGLRenderTargetWrapper.js +2 -2
- package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
- package/Engines/WebGL/webGLShaderProcessors.d.ts +1 -1
- package/Engines/WebGL/webGLShaderProcessors.js +1 -1
- package/Engines/WebGL/webGLShaderProcessors.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.computeShader.d.ts +1 -1
- package/Engines/WebGPU/Extensions/engine.computeShader.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.rawTexture.js +1 -5
- package/Engines/WebGPU/Extensions/engine.rawTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuBufferManager.d.ts +1 -1
- package/Engines/WebGPU/webgpuBufferManager.js +1 -1
- package/Engines/WebGPU/webgpuBufferManager.js.map +1 -1
- package/Engines/WebGPU/webgpuBundleList.d.ts +8 -8
- package/Engines/WebGPU/webgpuBundleList.js +7 -7
- package/Engines/WebGPU/webgpuBundleList.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheBindGroups.d.ts +1 -1
- package/Engines/WebGPU/webgpuCacheBindGroups.js +1 -1
- package/Engines/WebGPU/webgpuCacheBindGroups.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipeline.d.ts +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipelineString.d.ts +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipelineString.js +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipelineString.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipelineTree.d.ts +2 -2
- package/Engines/WebGPU/webgpuCacheRenderPipelineTree.js +2 -2
- package/Engines/WebGPU/webgpuCacheRenderPipelineTree.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheSampler.d.ts +1 -1
- package/Engines/WebGPU/webgpuCacheSampler.js +1 -1
- package/Engines/WebGPU/webgpuCacheSampler.js.map +1 -1
- package/Engines/WebGPU/webgpuClearQuad.d.ts +1 -1
- package/Engines/WebGPU/webgpuClearQuad.js +1 -1
- package/Engines/WebGPU/webgpuClearQuad.js.map +1 -1
- package/Engines/WebGPU/webgpuComputeContext.d.ts +1 -1
- package/Engines/WebGPU/webgpuComputeContext.js +1 -1
- package/Engines/WebGPU/webgpuComputeContext.js.map +1 -1
- package/Engines/WebGPU/webgpuComputePipelineContext.d.ts +2 -2
- package/Engines/WebGPU/webgpuComputePipelineContext.js +1 -1
- package/Engines/WebGPU/webgpuComputePipelineContext.js.map +1 -1
- package/Engines/WebGPU/webgpuConstants.d.ts +38 -38
- package/Engines/WebGPU/webgpuConstants.js +38 -38
- package/Engines/WebGPU/webgpuConstants.js.map +1 -1
- package/Engines/WebGPU/webgpuDepthCullingState.d.ts +1 -1
- package/Engines/WebGPU/webgpuDepthCullingState.js +1 -1
- package/Engines/WebGPU/webgpuDepthCullingState.js.map +1 -1
- package/Engines/WebGPU/webgpuDrawContext.d.ts +1 -1
- package/Engines/WebGPU/webgpuDrawContext.js +1 -1
- package/Engines/WebGPU/webgpuDrawContext.js.map +1 -1
- package/Engines/WebGPU/webgpuExternalTexture.d.ts +1 -1
- package/Engines/WebGPU/webgpuExternalTexture.js +1 -1
- package/Engines/WebGPU/webgpuExternalTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuHardwareTexture.d.ts +9 -9
- package/Engines/WebGPU/webgpuHardwareTexture.js +1 -1
- package/Engines/WebGPU/webgpuHardwareTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuMaterialContext.d.ts +3 -3
- package/Engines/WebGPU/webgpuMaterialContext.js +1 -1
- package/Engines/WebGPU/webgpuMaterialContext.js.map +1 -1
- package/Engines/WebGPU/webgpuOcclusionQuery.d.ts +1 -1
- package/Engines/WebGPU/webgpuOcclusionQuery.js +1 -1
- package/Engines/WebGPU/webgpuOcclusionQuery.js.map +1 -1
- package/Engines/WebGPU/webgpuPipelineContext.d.ts +4 -4
- package/Engines/WebGPU/webgpuPipelineContext.js +2 -2
- package/Engines/WebGPU/webgpuPipelineContext.js.map +1 -1
- package/Engines/WebGPU/webgpuQuerySet.d.ts +1 -1
- package/Engines/WebGPU/webgpuQuerySet.js +1 -1
- package/Engines/WebGPU/webgpuQuerySet.js.map +1 -1
- package/Engines/WebGPU/webgpuRenderPassWrapper.d.ts +1 -1
- package/Engines/WebGPU/webgpuRenderPassWrapper.js +1 -1
- package/Engines/WebGPU/webgpuRenderPassWrapper.js.map +1 -1
- package/Engines/WebGPU/webgpuRenderTargetWrapper.d.ts +2 -2
- package/Engines/WebGPU/webgpuRenderTargetWrapper.js +1 -1
- package/Engines/WebGPU/webgpuRenderTargetWrapper.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessingContext.d.ts +7 -7
- package/Engines/WebGPU/webgpuShaderProcessingContext.js +2 -2
- package/Engines/WebGPU/webgpuShaderProcessingContext.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessor.d.ts +1 -1
- package/Engines/WebGPU/webgpuShaderProcessor.js +1 -1
- package/Engines/WebGPU/webgpuShaderProcessor.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.d.ts +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.d.ts +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
- package/Engines/WebGPU/webgpuSnapshotRendering.d.ts +1 -1
- package/Engines/WebGPU/webgpuSnapshotRendering.js +1 -1
- package/Engines/WebGPU/webgpuSnapshotRendering.js.map +1 -1
- package/Engines/WebGPU/webgpuStencilStateComposer.d.ts +1 -1
- package/Engines/WebGPU/webgpuStencilStateComposer.js +1 -1
- package/Engines/WebGPU/webgpuStencilStateComposer.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.d.ts +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.js +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
- package/Engines/WebGPU/webgpuTimestampQuery.d.ts +2 -2
- package/Engines/WebGPU/webgpuTimestampQuery.js +2 -2
- package/Engines/WebGPU/webgpuTimestampQuery.js.map +1 -1
- package/Engines/WebGPU/webgpuTintWASM.d.ts +1 -1
- package/Engines/WebGPU/webgpuTintWASM.js +1 -1
- package/Engines/WebGPU/webgpuTintWASM.js.map +1 -1
- package/Engines/constants.d.ts +1 -1
- package/Engines/constants.js +1 -1
- package/Engines/constants.js.map +1 -1
- package/Engines/engine.d.ts +16 -35
- package/Engines/engine.js +19 -69
- package/Engines/engine.js.map +1 -1
- package/Engines/engineFeatures.d.ts +2 -2
- package/Engines/engineFeatures.js.map +1 -1
- package/Engines/engineStore.d.ts +1 -1
- package/Engines/engineStore.js +1 -1
- package/Engines/engineStore.js.map +1 -1
- package/Engines/nativeEngine.d.ts +15 -47
- package/Engines/nativeEngine.js +20 -66
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/nullEngine.d.ts +12 -40
- package/Engines/nullEngine.js +12 -40
- package/Engines/nullEngine.js.map +1 -1
- package/Engines/performanceConfigurator.d.ts +6 -7
- package/Engines/performanceConfigurator.js +6 -7
- package/Engines/performanceConfigurator.js.map +1 -1
- package/Engines/renderTargetWrapper.d.ts +8 -9
- package/Engines/renderTargetWrapper.js +7 -8
- package/Engines/renderTargetWrapper.js.map +1 -1
- package/Engines/thinEngine.d.ts +90 -187
- package/Engines/thinEngine.js +73 -182
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.d.ts +89 -145
- package/Engines/webgpuEngine.js +71 -127
- package/Engines/webgpuEngine.js.map +1 -1
- package/Events/pointerEvents.d.ts +4 -0
- package/Events/pointerEvents.js +4 -0
- package/Events/pointerEvents.js.map +1 -1
- package/Gamepads/Controllers/oculusTouchController.d.ts +1 -1
- package/Gamepads/Controllers/oculusTouchController.js +1 -1
- package/Gamepads/Controllers/oculusTouchController.js.map +1 -1
- package/Gamepads/Controllers/poseEnabledController.d.ts +9 -10
- package/Gamepads/Controllers/poseEnabledController.js +6 -7
- package/Gamepads/Controllers/poseEnabledController.js.map +1 -1
- package/Gamepads/Controllers/windowsMotionController.d.ts +1 -1
- package/Gamepads/Controllers/windowsMotionController.js +1 -1
- package/Gamepads/Controllers/windowsMotionController.js.map +1 -1
- package/Gamepads/gamepad.d.ts +1 -1
- package/Gamepads/gamepad.js +1 -1
- package/Gamepads/gamepad.js.map +1 -1
- package/Gamepads/gamepadManager.d.ts +2 -2
- package/Gamepads/gamepadManager.js +4 -4
- package/Gamepads/gamepadManager.js.map +1 -1
- package/Gamepads/gamepadSceneComponent.d.ts +1 -1
- package/Gamepads/gamepadSceneComponent.js.map +1 -1
- package/Gizmos/axisDragGizmo.d.ts +2 -8
- package/Gizmos/axisDragGizmo.js +2 -8
- package/Gizmos/axisDragGizmo.js.map +1 -1
- package/Gizmos/cameraGizmo.d.ts +1 -1
- package/Gizmos/cameraGizmo.js +1 -1
- package/Gizmos/cameraGizmo.js.map +1 -1
- package/Gizmos/lightGizmo.d.ts +1 -1
- package/Gizmos/lightGizmo.js +1 -1
- package/Gizmos/lightGizmo.js.map +1 -1
- package/Gizmos/planeDragGizmo.d.ts +1 -3
- package/Gizmos/planeDragGizmo.js +1 -3
- package/Gizmos/planeDragGizmo.js.map +1 -1
- package/Helpers/sceneHelpers.d.ts +1 -1
- package/Helpers/sceneHelpers.js +1 -1
- package/Helpers/sceneHelpers.js.map +1 -1
- package/Inputs/scene.inputManager.d.ts +3 -3
- package/Inputs/scene.inputManager.js +5 -4
- package/Inputs/scene.inputManager.js.map +1 -1
- package/Instrumentation/timeToken.d.ts +1 -1
- package/Instrumentation/timeToken.js +1 -1
- package/Instrumentation/timeToken.js.map +1 -1
- package/Layers/effectLayer.d.ts +2 -3
- package/Layers/effectLayer.js +2 -3
- package/Layers/effectLayer.js.map +1 -1
- package/Layers/glowLayer.d.ts +1 -1
- package/Layers/glowLayer.js +1 -1
- package/Layers/glowLayer.js.map +1 -1
- package/Layers/highlightLayer.d.ts +1 -1
- package/Layers/highlightLayer.js +1 -1
- package/Layers/highlightLayer.js.map +1 -1
- package/Layers/layer.d.ts +8 -1
- package/Layers/layer.js +12 -1
- package/Layers/layer.js.map +1 -1
- package/Layers/layerSceneComponent.d.ts +4 -2
- package/Layers/layerSceneComponent.js +27 -11
- package/Layers/layerSceneComponent.js.map +1 -1
- package/LensFlares/lensFlare.d.ts +1 -1
- package/LensFlares/lensFlare.js.map +1 -1
- package/LensFlares/lensFlareSystem.d.ts +4 -6
- package/LensFlares/lensFlareSystem.js +4 -6
- package/LensFlares/lensFlareSystem.js.map +1 -1
- package/Lights/Shadows/cascadedShadowGenerator.d.ts +1 -2
- package/Lights/Shadows/cascadedShadowGenerator.js +1 -2
- package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
- package/Lights/Shadows/shadowGenerator.d.ts +1 -2
- package/Lights/Shadows/shadowGenerator.js +1 -2
- package/Lights/Shadows/shadowGenerator.js.map +1 -1
- package/Lights/light.d.ts +9 -9
- package/Lights/light.js +6 -6
- package/Lights/light.js.map +1 -1
- package/Lights/shadowLight.d.ts +3 -3
- package/Lights/shadowLight.js +3 -3
- package/Lights/shadowLight.js.map +1 -1
- package/Loading/Plugins/babylonFileLoader.d.ts +1 -1
- package/Loading/Plugins/babylonFileLoader.js +1 -1
- package/Loading/Plugins/babylonFileLoader.js.map +1 -1
- package/Loading/loadingScreen.js +6 -6
- package/Loading/loadingScreen.js.map +1 -1
- package/Materials/Background/backgroundMaterial.js +1 -1
- package/Materials/Background/backgroundMaterial.js.map +1 -1
- package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.d.ts +18 -18
- package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
- package/Materials/Node/Blocks/Input/inputBlock.d.ts +4 -11
- package/Materials/Node/Blocks/Input/inputBlock.js +4 -11
- package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/anisotropyBlock.d.ts +2 -2
- package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/reflectionBlock.d.ts +9 -9
- package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/refractionBlock.d.ts +12 -12
- package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
- package/Materials/Node/nodeMaterial.d.ts +2 -2
- package/Materials/Node/nodeMaterial.js +2 -2
- package/Materials/Node/nodeMaterial.js.map +1 -1
- package/Materials/Node/nodeMaterialBlock.d.ts +8 -14
- package/Materials/Node/nodeMaterialBlock.js +6 -12
- package/Materials/Node/nodeMaterialBlock.js.map +1 -1
- package/Materials/Node/nodeMaterialBlockConnectionPoint.d.ts +8 -8
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js +7 -7
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js.map +1 -1
- package/Materials/Node/nodeMaterialBuildState.d.ts +22 -58
- package/Materials/Node/nodeMaterialBuildState.js +21 -57
- package/Materials/Node/nodeMaterialBuildState.js.map +1 -1
- package/Materials/PBR/pbrAnisotropicConfiguration.d.ts +3 -3
- package/Materials/PBR/pbrAnisotropicConfiguration.js +2 -2
- package/Materials/PBR/pbrAnisotropicConfiguration.js.map +1 -1
- package/Materials/PBR/pbrBRDFConfiguration.d.ts +3 -3
- package/Materials/PBR/pbrBRDFConfiguration.js +2 -2
- package/Materials/PBR/pbrBRDFConfiguration.js.map +1 -1
- package/Materials/PBR/pbrBaseMaterial.d.ts +65 -65
- package/Materials/PBR/pbrBaseMaterial.js +65 -65
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Materials/PBR/pbrClearCoatConfiguration.d.ts +4 -4
- package/Materials/PBR/pbrClearCoatConfiguration.js +3 -3
- package/Materials/PBR/pbrClearCoatConfiguration.js.map +1 -1
- package/Materials/PBR/pbrIridescenceConfiguration.d.ts +6 -6
- package/Materials/PBR/pbrIridescenceConfiguration.js +5 -5
- package/Materials/PBR/pbrIridescenceConfiguration.js.map +1 -1
- package/Materials/PBR/pbrSheenConfiguration.d.ts +3 -3
- package/Materials/PBR/pbrSheenConfiguration.js +2 -2
- package/Materials/PBR/pbrSheenConfiguration.js.map +1 -1
- package/Materials/PBR/pbrSubSurfaceConfiguration.d.ts +6 -6
- package/Materials/PBR/pbrSubSurfaceConfiguration.js +5 -5
- package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
- package/Materials/Textures/Loaders/ddsTextureLoader.d.ts +1 -1
- package/Materials/Textures/Loaders/ddsTextureLoader.js +1 -1
- package/Materials/Textures/Loaders/ddsTextureLoader.js.map +1 -1
- package/Materials/Textures/Loaders/envTextureLoader.d.ts +1 -1
- package/Materials/Textures/Loaders/envTextureLoader.js +1 -1
- package/Materials/Textures/Loaders/envTextureLoader.js.map +1 -1
- package/Materials/Textures/Loaders/hdrTextureLoader.d.ts +1 -1
- package/Materials/Textures/Loaders/hdrTextureLoader.js +1 -1
- package/Materials/Textures/Loaders/hdrTextureLoader.js.map +1 -1
- package/Materials/Textures/Loaders/ktxTextureLoader.d.ts +1 -1
- package/Materials/Textures/Loaders/ktxTextureLoader.js +1 -1
- package/Materials/Textures/Loaders/ktxTextureLoader.js.map +1 -1
- package/Materials/Textures/Loaders/tgaTextureLoader.d.ts +1 -1
- package/Materials/Textures/Loaders/tgaTextureLoader.js +1 -1
- package/Materials/Textures/Loaders/tgaTextureLoader.js.map +1 -1
- package/Materials/Textures/MultiviewRenderTarget.d.ts +1 -1
- package/Materials/Textures/MultiviewRenderTarget.js +1 -1
- package/Materials/Textures/MultiviewRenderTarget.js.map +1 -1
- package/Materials/Textures/Procedurals/proceduralTexture.d.ts +6 -7
- package/Materials/Textures/Procedurals/proceduralTexture.js +4 -5
- package/Materials/Textures/Procedurals/proceduralTexture.js.map +1 -1
- package/Materials/Textures/baseTexture.d.ts +17 -23
- package/Materials/Textures/baseTexture.js +20 -23
- package/Materials/Textures/baseTexture.js.map +1 -1
- package/Materials/Textures/cubeTexture.d.ts +1 -1
- package/Materials/Textures/cubeTexture.js +1 -1
- package/Materials/Textures/cubeTexture.js.map +1 -1
- package/Materials/Textures/dynamicTexture.d.ts +1 -1
- package/Materials/Textures/dynamicTexture.js +1 -1
- package/Materials/Textures/dynamicTexture.js.map +1 -1
- package/Materials/Textures/hardwareTextureWrapper.d.ts +1 -1
- package/Materials/Textures/hardwareTextureWrapper.js.map +1 -1
- package/Materials/Textures/internalTexture.d.ts +35 -37
- package/Materials/Textures/internalTexture.js +34 -36
- package/Materials/Textures/internalTexture.js.map +1 -1
- package/Materials/Textures/multiRenderTarget.d.ts +1 -3
- package/Materials/Textures/multiRenderTarget.js +1 -3
- package/Materials/Textures/multiRenderTarget.js.map +1 -1
- package/Materials/Textures/prePassRenderTarget.d.ts +9 -9
- package/Materials/Textures/prePassRenderTarget.js +6 -6
- package/Materials/Textures/prePassRenderTarget.js.map +1 -1
- package/Materials/Textures/renderTargetTexture.d.ts +7 -11
- package/Materials/Textures/renderTargetTexture.js +8 -9
- package/Materials/Textures/renderTargetTexture.js.map +1 -1
- package/Materials/Textures/texture.d.ts +6 -18
- package/Materials/Textures/texture.js +13 -23
- package/Materials/Textures/texture.js.map +1 -1
- package/Materials/Textures/textureSampler.d.ts +5 -5
- package/Materials/Textures/textureSampler.js +5 -5
- package/Materials/Textures/textureSampler.js.map +1 -1
- package/Materials/Textures/thinRenderTargetTexture.js +1 -1
- package/Materials/Textures/thinRenderTargetTexture.js.map +1 -1
- package/Materials/Textures/thinTexture.d.ts +2 -2
- package/Materials/Textures/thinTexture.js +2 -2
- package/Materials/Textures/thinTexture.js.map +1 -1
- package/Materials/Textures/videoTexture.d.ts +1 -1
- package/Materials/Textures/videoTexture.js +3 -3
- package/Materials/Textures/videoTexture.js.map +1 -1
- package/Materials/drawWrapper.d.ts +1 -1
- package/Materials/drawWrapper.js +1 -1
- package/Materials/drawWrapper.js.map +1 -1
- package/Materials/effect.d.ts +17 -17
- package/Materials/effect.js +28 -22
- package/Materials/effect.js.map +1 -1
- package/Materials/effectRenderer.d.ts +1 -1
- package/Materials/effectRenderer.js.map +1 -1
- package/Materials/imageProcessingConfiguration.d.ts +5 -5
- package/Materials/imageProcessingConfiguration.js +4 -4
- package/Materials/imageProcessingConfiguration.js.map +1 -1
- package/Materials/material.d.ts +21 -26
- package/Materials/material.detailMapConfiguration.d.ts +3 -3
- package/Materials/material.detailMapConfiguration.js +2 -2
- package/Materials/material.detailMapConfiguration.js.map +1 -1
- package/Materials/material.js +22 -24
- package/Materials/material.js.map +1 -1
- package/Materials/materialDefines.d.ts +14 -14
- package/Materials/materialDefines.js +13 -13
- package/Materials/materialDefines.js.map +1 -1
- package/Materials/materialHelper.js +2 -7
- package/Materials/materialHelper.js.map +1 -1
- package/Materials/materialPluginEvent.d.ts +15 -15
- package/Materials/materialPluginEvent.js +1 -1
- package/Materials/materialPluginEvent.js.map +1 -1
- package/Materials/materialPluginManager.d.ts +2 -4
- package/Materials/materialPluginManager.js +2 -4
- package/Materials/materialPluginManager.js.map +1 -1
- package/Materials/multiMaterial.d.ts +1 -1
- package/Materials/multiMaterial.js +1 -1
- package/Materials/multiMaterial.js.map +1 -1
- package/Materials/pushMaterial.d.ts +1 -1
- package/Materials/pushMaterial.js +1 -1
- package/Materials/pushMaterial.js.map +1 -1
- package/Materials/standardMaterial.d.ts +3 -3
- package/Materials/standardMaterial.js +3 -3
- package/Materials/standardMaterial.js.map +1 -1
- package/Materials/uniformBuffer.d.ts +4 -4
- package/Materials/uniformBuffer.js +4 -4
- package/Materials/uniformBuffer.js.map +1 -1
- package/Materials/uniformBufferEffectCommonAccessor.d.ts +1 -1
- package/Materials/uniformBufferEffectCommonAccessor.js +1 -1
- package/Materials/uniformBufferEffectCommonAccessor.js.map +1 -1
- package/Maths/math.color.d.ts +1 -1
- package/Maths/math.color.js +1 -1
- package/Maths/math.color.js.map +1 -1
- package/Maths/math.isovector.d.ts +1 -1
- package/Maths/math.isovector.js +1 -1
- package/Maths/math.isovector.js.map +1 -1
- package/Maths/math.like.d.ts +8 -8
- package/Maths/math.like.js.map +1 -1
- package/Maths/math.polar.d.ts +343 -0
- package/Maths/math.polar.js +537 -0
- package/Maths/math.polar.js.map +1 -1
- package/Maths/math.vector.d.ts +58 -24
- package/Maths/math.vector.js +94 -18
- package/Maths/math.vector.js.map +1 -1
- package/Meshes/Builders/tubeBuilder.d.ts +2 -2
- package/Meshes/Builders/tubeBuilder.js +2 -2
- package/Meshes/Builders/tubeBuilder.js.map +1 -1
- package/Meshes/WebGL/webGLDataBuffer.d.ts +1 -1
- package/Meshes/WebGL/webGLDataBuffer.js +1 -1
- package/Meshes/WebGL/webGLDataBuffer.js.map +1 -1
- package/Meshes/WebGPU/webgpuDataBuffer.d.ts +1 -1
- package/Meshes/WebGPU/webgpuDataBuffer.js +1 -1
- package/Meshes/WebGPU/webgpuDataBuffer.js.map +1 -1
- package/Meshes/abstractMesh.d.ts +48 -70
- package/Meshes/abstractMesh.js +47 -69
- package/Meshes/abstractMesh.js.map +1 -1
- package/Meshes/buffer.d.ts +1 -1
- package/Meshes/buffer.js +1 -1
- package/Meshes/buffer.js.map +1 -1
- package/Meshes/geodesicMesh.d.ts +15 -28
- package/Meshes/geodesicMesh.js +11 -24
- package/Meshes/geodesicMesh.js.map +1 -1
- package/Meshes/geometry.d.ts +15 -20
- package/Meshes/geometry.js +7 -12
- package/Meshes/geometry.js.map +1 -1
- package/Meshes/groundMesh.d.ts +8 -8
- package/Meshes/groundMesh.js.map +1 -1
- package/Meshes/instancedMesh.d.ts +12 -16
- package/Meshes/instancedMesh.js +11 -15
- package/Meshes/instancedMesh.js.map +1 -1
- package/Meshes/linesMesh.d.ts +5 -8
- package/Meshes/linesMesh.js +5 -8
- package/Meshes/linesMesh.js.map +1 -1
- package/Meshes/mesh.d.ts +47 -92
- package/Meshes/mesh.js +50 -98
- package/Meshes/mesh.js.map +1 -1
- package/Meshes/mesh.vertexData.d.ts +3 -18
- package/Meshes/mesh.vertexData.js +3 -18
- package/Meshes/mesh.vertexData.js.map +1 -1
- package/Meshes/meshSimplificationSceneComponent.d.ts +1 -1
- package/Meshes/meshSimplificationSceneComponent.js.map +1 -1
- package/Meshes/subMesh.d.ts +23 -51
- package/Meshes/subMesh.js +20 -48
- package/Meshes/subMesh.js.map +1 -1
- package/Meshes/subMesh.project.d.ts +2 -2
- package/Meshes/subMesh.project.js +2 -12
- package/Meshes/subMesh.project.js.map +1 -1
- package/Meshes/thinInstanceMesh.d.ts +4 -4
- package/Meshes/thinInstanceMesh.js.map +1 -1
- package/Meshes/transformNode.d.ts +8 -9
- package/Meshes/transformNode.js +8 -9
- package/Meshes/transformNode.js.map +1 -1
- package/Misc/arrayTools.d.ts +3 -3
- package/Misc/arrayTools.js +1 -1
- package/Misc/arrayTools.js.map +1 -1
- package/Misc/assetsManager.d.ts +1 -3
- package/Misc/assetsManager.js +1 -3
- package/Misc/assetsManager.js.map +1 -1
- package/Misc/basis.js +1 -1
- package/Misc/basis.js.map +1 -1
- package/Misc/coroutine.d.ts +11 -25
- package/Misc/coroutine.js +7 -21
- package/Misc/coroutine.js.map +1 -1
- package/Misc/dds.d.ts +1 -10
- package/Misc/dds.js +1 -10
- package/Misc/dds.js.map +1 -1
- package/Misc/decorators.d.ts +5 -15
- package/Misc/decorators.js +6 -16
- package/Misc/decorators.js.map +1 -1
- package/Misc/depthReducer.d.ts +1 -5
- package/Misc/depthReducer.js +1 -5
- package/Misc/depthReducer.js.map +1 -1
- package/Misc/devTools.d.ts +1 -2
- package/Misc/devTools.js +1 -2
- package/Misc/devTools.js.map +1 -1
- package/Misc/environmentTextureTools.d.ts +1 -6
- package/Misc/environmentTextureTools.js +1 -6
- package/Misc/environmentTextureTools.js.map +1 -1
- package/Misc/fileTools.d.ts +12 -24
- package/Misc/fileTools.js +14 -26
- package/Misc/fileTools.js.map +1 -1
- package/Misc/khronosTextureContainer.d.ts +1 -3
- package/Misc/khronosTextureContainer.js +1 -3
- package/Misc/khronosTextureContainer.js.map +1 -1
- package/Misc/khronosTextureContainer2.d.ts +1 -4
- package/Misc/khronosTextureContainer2.js +1 -4
- package/Misc/khronosTextureContainer2.js.map +1 -1
- package/Misc/observable.d.ts +3 -4
- package/Misc/observable.js +2 -3
- package/Misc/observable.js.map +1 -1
- package/Misc/pivotTools.d.ts +3 -5
- package/Misc/pivotTools.js +3 -5
- package/Misc/pivotTools.js.map +1 -1
- package/Misc/screenshotTools.js +1 -1
- package/Misc/screenshotTools.js.map +1 -1
- package/Misc/tags.d.ts +2 -6
- package/Misc/tags.js +2 -6
- package/Misc/tags.js.map +1 -1
- package/Misc/tga.d.ts +14 -70
- package/Misc/tga.js +14 -70
- package/Misc/tga.js.map +1 -1
- package/Misc/tools.d.ts +9 -0
- package/Misc/tools.js +14 -5
- package/Misc/tools.js.map +1 -1
- package/Misc/typeStore.d.ts +2 -5
- package/Misc/typeStore.js +3 -6
- package/Misc/typeStore.js.map +1 -1
- package/Misc/virtualJoystick.js +0 -1
- package/Misc/virtualJoystick.js.map +1 -1
- package/Misc/webRequest.d.ts +2 -2
- package/Misc/webRequest.js +1 -1
- package/Misc/webRequest.js.map +1 -1
- package/Morph/morphTarget.d.ts +1 -1
- package/Morph/morphTarget.js +1 -1
- package/Morph/morphTarget.js.map +1 -1
- package/Morph/morphTargetManager.d.ts +3 -4
- package/Morph/morphTargetManager.js +2 -3
- package/Morph/morphTargetManager.js.map +1 -1
- package/Particles/IGPUParticleSystemPlatform.d.ts +1 -1
- package/Particles/IGPUParticleSystemPlatform.js.map +1 -1
- package/Particles/IParticleSystem.d.ts +6 -0
- package/Particles/IParticleSystem.js.map +1 -1
- package/Particles/baseParticleSystem.d.ts +14 -9
- package/Particles/baseParticleSystem.js +17 -8
- package/Particles/baseParticleSystem.js.map +1 -1
- package/Particles/cloudPoint.d.ts +16 -19
- package/Particles/cloudPoint.js +21 -29
- package/Particles/cloudPoint.js.map +1 -1
- package/Particles/computeShaderParticleSystem.d.ts +1 -1
- package/Particles/computeShaderParticleSystem.js +1 -1
- package/Particles/computeShaderParticleSystem.js.map +1 -1
- package/Particles/gpuParticleSystem.d.ts +14 -20
- package/Particles/gpuParticleSystem.js +17 -13
- package/Particles/gpuParticleSystem.js.map +1 -1
- package/Particles/particle.d.ts +30 -31
- package/Particles/particle.js +16 -17
- package/Particles/particle.js.map +1 -1
- package/Particles/particleSystem.d.ts +16 -32
- package/Particles/particleSystem.js +30 -31
- package/Particles/particleSystem.js.map +1 -1
- package/Particles/pointsCloudSystem.d.ts +3 -4
- package/Particles/pointsCloudSystem.js +27 -20
- package/Particles/pointsCloudSystem.js.map +1 -1
- package/Particles/solidParticle.d.ts +21 -31
- package/Particles/solidParticle.js +9 -19
- package/Particles/solidParticle.js.map +1 -1
- package/Particles/solidParticleSystem.d.ts +14 -16
- package/Particles/solidParticleSystem.js +14 -16
- package/Particles/solidParticleSystem.js.map +1 -1
- package/Particles/subEmitter.d.ts +1 -5
- package/Particles/subEmitter.js +1 -5
- package/Particles/subEmitter.js.map +1 -1
- package/Particles/webgl2ParticleSystem.d.ts +1 -1
- package/Particles/webgl2ParticleSystem.js +1 -1
- package/Particles/webgl2ParticleSystem.js.map +1 -1
- package/Physics/IPhysicsEngine.d.ts +1 -1
- package/Physics/IPhysicsEngine.js.map +1 -1
- package/Physics/Plugins/ammoJSPlugin.d.ts +3 -0
- package/Physics/Plugins/ammoJSPlugin.js +21 -2
- package/Physics/Plugins/ammoJSPlugin.js.map +1 -1
- package/Physics/Plugins/cannonJSPlugin.d.ts +1 -1
- package/Physics/Plugins/cannonJSPlugin.js +1 -1
- package/Physics/Plugins/cannonJSPlugin.js.map +1 -1
- package/Physics/Plugins/oimoJSPlugin.d.ts +1 -1
- package/Physics/Plugins/oimoJSPlugin.js +3 -3
- package/Physics/Plugins/oimoJSPlugin.js.map +1 -1
- package/Physics/physicsEngineComponent.d.ts +4 -4
- package/Physics/physicsEngineComponent.js +1 -2
- package/Physics/physicsEngineComponent.js.map +1 -1
- package/Physics/physicsImpostor.d.ts +13 -7
- package/Physics/physicsImpostor.js +9 -6
- package/Physics/physicsImpostor.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.d.ts +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js +2 -2
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.d.ts +2 -4
- package/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.js +2 -4
- package/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderEffect.d.ts +10 -10
- package/PostProcesses/RenderPipeline/postProcessRenderEffect.js +5 -5
- package/PostProcesses/RenderPipeline/postProcessRenderEffect.js.map +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderPipeline.d.ts +13 -13
- package/PostProcesses/RenderPipeline/postProcessRenderPipeline.js +7 -14
- package/PostProcesses/RenderPipeline/postProcessRenderPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderPipelineManager.d.ts +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderPipelineManager.js +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderPipelineManager.js.map +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderPipelineManagerSceneComponent.d.ts +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderPipelineManagerSceneComponent.js.map +1 -1
- package/PostProcesses/blackAndWhitePostProcess.d.ts +1 -5
- package/PostProcesses/blackAndWhitePostProcess.js +1 -5
- package/PostProcesses/blackAndWhitePostProcess.js.map +1 -1
- package/PostProcesses/bloomEffect.d.ts +4 -4
- package/PostProcesses/bloomEffect.js +3 -3
- package/PostProcesses/bloomEffect.js.map +1 -1
- package/PostProcesses/blurPostProcess.d.ts +1 -5
- package/PostProcesses/blurPostProcess.js +1 -5
- package/PostProcesses/blurPostProcess.js.map +1 -1
- package/PostProcesses/chromaticAberrationPostProcess.d.ts +1 -5
- package/PostProcesses/chromaticAberrationPostProcess.js +1 -5
- package/PostProcesses/chromaticAberrationPostProcess.js.map +1 -1
- package/PostProcesses/colorCorrectionPostProcess.d.ts +1 -5
- package/PostProcesses/colorCorrectionPostProcess.js +1 -5
- package/PostProcesses/colorCorrectionPostProcess.js.map +1 -1
- package/PostProcesses/convolutionPostProcess.d.ts +1 -5
- package/PostProcesses/convolutionPostProcess.js +1 -5
- package/PostProcesses/convolutionPostProcess.js.map +1 -1
- package/PostProcesses/depthOfFieldEffect.d.ts +4 -4
- package/PostProcesses/depthOfFieldEffect.js +3 -3
- package/PostProcesses/depthOfFieldEffect.js.map +1 -1
- package/PostProcesses/displayPassPostProcess.d.ts +1 -5
- package/PostProcesses/displayPassPostProcess.js +1 -5
- package/PostProcesses/displayPassPostProcess.js.map +1 -1
- package/PostProcesses/extractHighlightsPostProcess.d.ts +2 -2
- package/PostProcesses/extractHighlightsPostProcess.js +2 -2
- package/PostProcesses/extractHighlightsPostProcess.js.map +1 -1
- package/PostProcesses/filterPostProcess.d.ts +1 -5
- package/PostProcesses/filterPostProcess.js +1 -5
- package/PostProcesses/filterPostProcess.js.map +1 -1
- package/PostProcesses/fxaaPostProcess.d.ts +1 -5
- package/PostProcesses/fxaaPostProcess.js +1 -5
- package/PostProcesses/fxaaPostProcess.js.map +1 -1
- package/PostProcesses/grainPostProcess.d.ts +1 -5
- package/PostProcesses/grainPostProcess.js +1 -5
- package/PostProcesses/grainPostProcess.js.map +1 -1
- package/PostProcesses/imageProcessingPostProcess.d.ts +1 -1
- package/PostProcesses/imageProcessingPostProcess.js +1 -1
- package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
- package/PostProcesses/motionBlurPostProcess.d.ts +1 -5
- package/PostProcesses/motionBlurPostProcess.js +1 -5
- package/PostProcesses/motionBlurPostProcess.js.map +1 -1
- package/PostProcesses/passPostProcess.d.ts +2 -10
- package/PostProcesses/passPostProcess.js +2 -10
- package/PostProcesses/passPostProcess.js.map +1 -1
- package/PostProcesses/postProcess.d.ts +8 -12
- package/PostProcesses/postProcess.js +6 -10
- package/PostProcesses/postProcess.js.map +1 -1
- package/PostProcesses/postProcessManager.d.ts +3 -3
- package/PostProcesses/postProcessManager.js +3 -3
- package/PostProcesses/postProcessManager.js.map +1 -1
- package/PostProcesses/refractionPostProcess.d.ts +1 -5
- package/PostProcesses/refractionPostProcess.js +1 -5
- package/PostProcesses/refractionPostProcess.js.map +1 -1
- package/PostProcesses/screenSpaceCurvaturePostProcess.d.ts +1 -5
- package/PostProcesses/screenSpaceCurvaturePostProcess.js +1 -5
- package/PostProcesses/screenSpaceCurvaturePostProcess.js.map +1 -1
- package/PostProcesses/screenSpaceReflectionPostProcess.d.ts +1 -5
- package/PostProcesses/screenSpaceReflectionPostProcess.js +1 -5
- package/PostProcesses/screenSpaceReflectionPostProcess.js.map +1 -1
- package/PostProcesses/sharpenPostProcess.d.ts +1 -5
- package/PostProcesses/sharpenPostProcess.js +1 -5
- package/PostProcesses/sharpenPostProcess.js.map +1 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.d.ts +1 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.js +1 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.js.map +1 -1
- package/Probes/reflectionProbe.d.ts +1 -1
- package/Probes/reflectionProbe.js +1 -1
- package/Probes/reflectionProbe.js.map +1 -1
- package/Rendering/boundingBoxRenderer.d.ts +5 -5
- package/Rendering/boundingBoxRenderer.js +2 -2
- package/Rendering/boundingBoxRenderer.js.map +1 -1
- package/Rendering/depthPeelingSceneComponent.d.ts +2 -2
- package/Rendering/depthPeelingSceneComponent.js.map +1 -1
- package/Rendering/depthRenderer.d.ts +1 -2
- package/Rendering/depthRenderer.js +1 -2
- package/Rendering/depthRenderer.js.map +1 -1
- package/Rendering/depthRendererSceneComponent.d.ts +1 -1
- package/Rendering/depthRendererSceneComponent.js.map +1 -1
- package/Rendering/edgesRenderer.d.ts +2 -2
- package/Rendering/edgesRenderer.js +1 -1
- package/Rendering/edgesRenderer.js.map +1 -1
- package/Rendering/geometryBufferRenderer.d.ts +10 -16
- package/Rendering/geometryBufferRenderer.js +9 -15
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Rendering/geometryBufferRendererSceneComponent.d.ts +1 -1
- package/Rendering/geometryBufferRendererSceneComponent.js.map +1 -1
- package/Rendering/outlineRenderer.d.ts +3 -3
- package/Rendering/outlineRenderer.js.map +1 -1
- package/Rendering/prePassRenderer.d.ts +7 -14
- package/Rendering/prePassRenderer.js +8 -15
- package/Rendering/prePassRenderer.js.map +1 -1
- package/Rendering/prePassRendererSceneComponent.d.ts +2 -2
- package/Rendering/prePassRendererSceneComponent.js.map +1 -1
- package/Rendering/renderingGroup.d.ts +3 -3
- package/Rendering/renderingGroup.js +3 -3
- package/Rendering/renderingGroup.js.map +1 -1
- package/Rendering/renderingManager.d.ts +15 -8
- package/Rendering/renderingManager.js +59 -17
- package/Rendering/renderingManager.js.map +1 -1
- package/Rendering/subSurfaceConfiguration.d.ts +2 -4
- package/Rendering/subSurfaceConfiguration.js +2 -4
- package/Rendering/subSurfaceConfiguration.js.map +1 -1
- package/Rendering/subSurfaceSceneComponent.d.ts +1 -1
- package/Rendering/subSurfaceSceneComponent.js.map +1 -1
- package/Rendering/utilityLayerRenderer.d.ts +4 -4
- package/Rendering/utilityLayerRenderer.js +15 -10
- package/Rendering/utilityLayerRenderer.js.map +1 -1
- package/Shaders/ShadersInclude/backgroundFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/backgroundFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/backgroundUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/backgroundUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/backgroundUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/backgroundVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/backgroundVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/backgroundVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimation.d.ts +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimation.js +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimation.js.map +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js +1 -1
- package/Shaders/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bayerDitherFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/bayerDitherFunctions.js +1 -1
- package/Shaders/ShadersInclude/bayerDitherFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/bonesDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/bonesDeclaration.js +1 -1
- package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bonesVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/bonesVertex.js +1 -1
- package/Shaders/ShadersInclude/bonesVertex.js.map +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/boundingBoxRendererVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/bumpFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/bumpFragment.js +1 -1
- package/Shaders/ShadersInclude/bumpFragment.js.map +1 -1
- package/Shaders/ShadersInclude/bumpFragmentFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/bumpFragmentFunctions.js +1 -1
- package/Shaders/ShadersInclude/bumpFragmentFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/bumpFragmentMainFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js +1 -1
- package/Shaders/ShadersInclude/bumpFragmentMainFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/bumpVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/bumpVertex.js +1 -1
- package/Shaders/ShadersInclude/bumpVertex.js.map +1 -1
- package/Shaders/ShadersInclude/bumpVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/bumpVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/bumpVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragment.js +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragment.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.d.ts +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js +1 -1
- package/Shaders/ShadersInclude/clipPlaneFragmentDeclaration2.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertex.js +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertex.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.d.ts +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js +1 -1
- package/Shaders/ShadersInclude/clipPlaneVertexDeclaration2.js.map +1 -1
- package/Shaders/ShadersInclude/defaultFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/defaultFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/defaultFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/defaultUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/defaultUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/defaultUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/defaultVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/defaultVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/defaultVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/depthPrePass.d.ts +1 -1
- package/Shaders/ShadersInclude/depthPrePass.js +1 -1
- package/Shaders/ShadersInclude/depthPrePass.js.map +1 -1
- package/Shaders/ShadersInclude/diffusionProfile.d.ts +1 -1
- package/Shaders/ShadersInclude/diffusionProfile.js +1 -1
- package/Shaders/ShadersInclude/diffusionProfile.js.map +1 -1
- package/Shaders/ShadersInclude/fibonacci.d.ts +1 -1
- package/Shaders/ShadersInclude/fibonacci.js +1 -1
- package/Shaders/ShadersInclude/fibonacci.js.map +1 -1
- package/Shaders/ShadersInclude/fogFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/fogFragment.js +1 -1
- package/Shaders/ShadersInclude/fogFragment.js.map +1 -1
- package/Shaders/ShadersInclude/fogFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/fogFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/fogFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/fogVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/fogVertex.js +1 -1
- package/Shaders/ShadersInclude/fogVertex.js.map +1 -1
- package/Shaders/ShadersInclude/fogVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/fogVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/fogVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/fresnelFunction.d.ts +1 -1
- package/Shaders/ShadersInclude/fresnelFunction.js +1 -1
- package/Shaders/ShadersInclude/fresnelFunction.js.map +1 -1
- package/Shaders/ShadersInclude/geometryUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/geometryUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/geometryUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/geometryVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/geometryVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/geometryVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/harmonicsFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/harmonicsFunctions.js +1 -1
- package/Shaders/ShadersInclude/harmonicsFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/hdrFilteringFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js +1 -1
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/helperFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/helperFunctions.js +1 -1
- package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingCompatibility.d.ts +1 -1
- package/Shaders/ShadersInclude/imageProcessingCompatibility.js +1 -1
- package/Shaders/ShadersInclude/imageProcessingCompatibility.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/imageProcessingDeclaration.js +1 -1
- package/Shaders/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/imageProcessingFunctions.js +1 -1
- package/Shaders/ShadersInclude/imageProcessingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/importanceSampling.d.ts +1 -1
- package/Shaders/ShadersInclude/importanceSampling.js +1 -1
- package/Shaders/ShadersInclude/importanceSampling.js.map +1 -1
- package/Shaders/ShadersInclude/instancesDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/instancesDeclaration.js +1 -1
- package/Shaders/ShadersInclude/instancesDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/instancesVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/instancesVertex.js +1 -1
- package/Shaders/ShadersInclude/instancesVertex.js.map +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment.js +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment.js.map +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment2.d.ts +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment2.js +1 -1
- package/Shaders/ShadersInclude/kernelBlurFragment2.js.map +1 -1
- package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js +1 -1
- package/Shaders/ShadersInclude/kernelBlurVaryingDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/kernelBlurVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/kernelBlurVertex.js +1 -1
- package/Shaders/ShadersInclude/kernelBlurVertex.js.map +1 -1
- package/Shaders/ShadersInclude/lightFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/lightFragment.js +1 -1
- package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
- package/Shaders/ShadersInclude/lightFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/lightFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/lightFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/lightUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/lightUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightVxFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/lightVxFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightVxUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/lightVxUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/lightVxUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/lightsFragmentFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/lightsFragmentFunctions.js +1 -1
- package/Shaders/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/logDepthDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/logDepthDeclaration.js +1 -1
- package/Shaders/ShadersInclude/logDepthDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/logDepthFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/logDepthFragment.js +1 -1
- package/Shaders/ShadersInclude/logDepthFragment.js.map +1 -1
- package/Shaders/ShadersInclude/logDepthVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/logDepthVertex.js +1 -1
- package/Shaders/ShadersInclude/logDepthVertex.js.map +1 -1
- package/Shaders/ShadersInclude/mainUVVaryingDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js +1 -1
- package/Shaders/ShadersInclude/mainUVVaryingDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/meshFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/meshFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/meshFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/meshUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/meshUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/meshUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/meshVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/meshVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/meshVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertex.js +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertex.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobal.d.ts +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/mrtFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/mrtFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/mrtFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/oitDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/oitDeclaration.js +1 -1
- package/Shaders/ShadersInclude/oitDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/oitFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/oitFragment.js +1 -1
- package/Shaders/ShadersInclude/oitFragment.js.map +1 -1
- package/Shaders/ShadersInclude/packingFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/packingFunctions.js +1 -1
- package/Shaders/ShadersInclude/packingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBRDFFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBRDFFunctions.js +1 -1
- package/Shaders/ShadersInclude/pbrBRDFFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js +3 -3
- package/Shaders/ShadersInclude/pbrBlockAlbedoOpacity.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockAlphaFresnel.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockAmbientOcclusion.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockAnisotropic.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockAnisotropic.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockAnisotropic.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockClearcoat.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockClearcoat.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockDirectLighting.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockDirectLighting.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockDirectLighting.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalColorComposition.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalLitComponents.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockGeometryInfo.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockGeometryInfo.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockImageProcessing.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockImageProcessing.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockImageProcessing.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockIridescence.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockIridescence.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockLightmapInit.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockLightmapInit.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockLightmapInit.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalFinal.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalFinal.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalFinal.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalGeometric.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockNormalGeometric.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance0.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance0.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectance0.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflection.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflection.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflection.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectivity.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectivity.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockReflectivity.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockSheen.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockSheen.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDebug.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrDebug.js +1 -1
- package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFalloffFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingSetupFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/pbrFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js +2 -2
- package/Shaders/ShadersInclude/pbrFragmentExtraDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +1 -1
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrHelperFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrHelperFunctions.js +1 -1
- package/Shaders/ShadersInclude/pbrHelperFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrIBLFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrIBLFunctions.js +1 -1
- package/Shaders/ShadersInclude/pbrIBLFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/pbrUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pbrVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/pbrVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pointCloudVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/pointCloudVertex.js +1 -1
- package/Shaders/ShadersInclude/pointCloudVertex.js.map +1 -1
- package/Shaders/ShadersInclude/pointCloudVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/pointCloudVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/prePassDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/prePassDeclaration.js +1 -1
- package/Shaders/ShadersInclude/prePassDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/prePassVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/prePassVertex.js +1 -1
- package/Shaders/ShadersInclude/prePassVertex.js.map +1 -1
- package/Shaders/ShadersInclude/prePassVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/prePassVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/prePassVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/reflectionFunction.d.ts +1 -1
- package/Shaders/ShadersInclude/reflectionFunction.js +1 -1
- package/Shaders/ShadersInclude/reflectionFunction.js.map +1 -1
- package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js +1 -1
- package/Shaders/ShadersInclude/samplerFragmentAlternateDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/samplerFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/samplerFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/samplerFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/samplerVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/samplerVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/samplerVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/samplerVertexImplementation.d.ts +1 -1
- package/Shaders/ShadersInclude/samplerVertexImplementation.js +1 -1
- package/Shaders/ShadersInclude/samplerVertexImplementation.js.map +1 -1
- package/Shaders/ShadersInclude/sceneFragmentDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/sceneFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/sceneFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/sceneUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/sceneUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/sceneUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/sceneVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/sceneVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/sceneVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapFragment.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapFragment.js +1 -1
- package/Shaders/ShadersInclude/shadowMapFragment.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentExtraDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js +1 -1
- package/Shaders/ShadersInclude/shadowMapFragmentSoftTransparentShadow.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapUboDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapUboDeclaration.js +1 -1
- package/Shaders/ShadersInclude/shadowMapUboDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexExtraDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexMetric.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexMetric.js +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexMetric.js.map +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexNormalBias.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js +1 -1
- package/Shaders/ShadersInclude/shadowMapVertexNormalBias.js.map +1 -1
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.js +1 -1
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/shadowsVertex.d.ts +1 -1
- package/Shaders/ShadersInclude/shadowsVertex.js +1 -1
- package/Shaders/ShadersInclude/shadowsVertex.js.map +1 -1
- package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.d.ts +1 -1
- package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js +1 -1
- package/Shaders/ShadersInclude/subSurfaceScatteringFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/uvAttributeDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/uvAttributeDeclaration.js +1 -1
- package/Shaders/ShadersInclude/uvAttributeDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/uvVariableDeclaration.d.ts +1 -1
- package/Shaders/ShadersInclude/uvVariableDeclaration.js +1 -1
- package/Shaders/ShadersInclude/uvVariableDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/vertexColorMixing.d.ts +1 -1
- package/Shaders/ShadersInclude/vertexColorMixing.js +2 -2
- package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -1
- package/Shaders/anaglyph.fragment.d.ts +1 -1
- package/Shaders/anaglyph.fragment.js +1 -1
- package/Shaders/anaglyph.fragment.js.map +1 -1
- package/Shaders/background.fragment.d.ts +1 -1
- package/Shaders/background.fragment.js +1 -1
- package/Shaders/background.fragment.js.map +1 -1
- package/Shaders/background.vertex.d.ts +1 -1
- package/Shaders/background.vertex.js +1 -1
- package/Shaders/background.vertex.js.map +1 -1
- package/Shaders/blackAndWhite.fragment.d.ts +1 -1
- package/Shaders/blackAndWhite.fragment.js +1 -1
- package/Shaders/blackAndWhite.fragment.js.map +1 -1
- package/Shaders/bloomMerge.fragment.d.ts +1 -1
- package/Shaders/bloomMerge.fragment.js +1 -1
- package/Shaders/bloomMerge.fragment.js.map +1 -1
- package/Shaders/blur.fragment.d.ts +1 -1
- package/Shaders/blur.fragment.js +1 -1
- package/Shaders/blur.fragment.js.map +1 -1
- package/Shaders/boundingBoxRenderer.fragment.d.ts +1 -1
- package/Shaders/boundingBoxRenderer.fragment.js +1 -1
- package/Shaders/boundingBoxRenderer.fragment.js.map +1 -1
- package/Shaders/boundingBoxRenderer.vertex.d.ts +1 -1
- package/Shaders/boundingBoxRenderer.vertex.js +1 -1
- package/Shaders/boundingBoxRenderer.vertex.js.map +1 -1
- package/Shaders/chromaticAberration.fragment.d.ts +1 -1
- package/Shaders/chromaticAberration.fragment.js +2 -1
- package/Shaders/chromaticAberration.fragment.js.map +1 -1
- package/Shaders/circleOfConfusion.fragment.d.ts +1 -1
- package/Shaders/circleOfConfusion.fragment.js +1 -1
- package/Shaders/circleOfConfusion.fragment.js.map +1 -1
- package/Shaders/clearQuad.fragment.d.ts +1 -1
- package/Shaders/clearQuad.fragment.js +1 -1
- package/Shaders/clearQuad.fragment.js.map +1 -1
- package/Shaders/clearQuad.vertex.d.ts +1 -1
- package/Shaders/clearQuad.vertex.js +1 -1
- package/Shaders/clearQuad.vertex.js.map +1 -1
- package/Shaders/color.fragment.d.ts +1 -1
- package/Shaders/color.fragment.js +4 -3
- package/Shaders/color.fragment.js.map +1 -1
- package/Shaders/color.vertex.d.ts +1 -1
- package/Shaders/color.vertex.js +2 -2
- package/Shaders/color.vertex.js.map +1 -1
- package/Shaders/colorCorrection.fragment.d.ts +1 -1
- package/Shaders/colorCorrection.fragment.js +1 -1
- package/Shaders/colorCorrection.fragment.js.map +1 -1
- package/Shaders/convolution.fragment.d.ts +1 -1
- package/Shaders/convolution.fragment.js +1 -1
- package/Shaders/convolution.fragment.js.map +1 -1
- package/Shaders/default.fragment.d.ts +1 -1
- package/Shaders/default.fragment.js +4 -4
- package/Shaders/default.fragment.js.map +1 -1
- package/Shaders/default.vertex.d.ts +1 -1
- package/Shaders/default.vertex.js +2 -2
- package/Shaders/default.vertex.js.map +1 -1
- package/Shaders/depth.fragment.d.ts +1 -1
- package/Shaders/depth.fragment.js +1 -1
- package/Shaders/depth.fragment.js.map +1 -1
- package/Shaders/depth.vertex.d.ts +1 -1
- package/Shaders/depth.vertex.js +1 -1
- package/Shaders/depth.vertex.js.map +1 -1
- package/Shaders/depthBoxBlur.fragment.d.ts +1 -1
- package/Shaders/depthBoxBlur.fragment.js +1 -1
- package/Shaders/depthBoxBlur.fragment.js.map +1 -1
- package/Shaders/depthOfField.fragment.d.ts +1 -1
- package/Shaders/depthOfField.fragment.js +1 -1
- package/Shaders/depthOfField.fragment.js.map +1 -1
- package/Shaders/depthOfFieldMerge.fragment.d.ts +1 -1
- package/Shaders/depthOfFieldMerge.fragment.js +1 -1
- package/Shaders/depthOfFieldMerge.fragment.js.map +1 -1
- package/Shaders/displayPass.fragment.d.ts +1 -1
- package/Shaders/displayPass.fragment.js +1 -1
- package/Shaders/displayPass.fragment.js.map +1 -1
- package/Shaders/extractHighlights.fragment.d.ts +1 -1
- package/Shaders/extractHighlights.fragment.js +1 -1
- package/Shaders/extractHighlights.fragment.js.map +1 -1
- package/Shaders/filter.fragment.d.ts +1 -1
- package/Shaders/filter.fragment.js +1 -1
- package/Shaders/filter.fragment.js.map +1 -1
- package/Shaders/fxaa.fragment.d.ts +1 -1
- package/Shaders/fxaa.fragment.js +1 -1
- package/Shaders/fxaa.fragment.js.map +1 -1
- package/Shaders/fxaa.vertex.d.ts +1 -1
- package/Shaders/fxaa.vertex.js +1 -1
- package/Shaders/fxaa.vertex.js.map +1 -1
- package/Shaders/geometry.fragment.d.ts +1 -1
- package/Shaders/geometry.fragment.js +14 -2
- package/Shaders/geometry.fragment.js.map +1 -1
- package/Shaders/geometry.vertex.d.ts +1 -1
- package/Shaders/geometry.vertex.js +1 -1
- package/Shaders/geometry.vertex.js.map +1 -1
- package/Shaders/glowBlurPostProcess.fragment.d.ts +1 -1
- package/Shaders/glowBlurPostProcess.fragment.js +1 -1
- package/Shaders/glowBlurPostProcess.fragment.js.map +1 -1
- package/Shaders/glowMapGeneration.fragment.d.ts +1 -1
- package/Shaders/glowMapGeneration.fragment.js +1 -1
- package/Shaders/glowMapGeneration.fragment.js.map +1 -1
- package/Shaders/glowMapGeneration.vertex.d.ts +1 -1
- package/Shaders/glowMapGeneration.vertex.js +1 -1
- package/Shaders/glowMapGeneration.vertex.js.map +1 -1
- package/Shaders/glowMapMerge.fragment.d.ts +1 -1
- package/Shaders/glowMapMerge.fragment.js +1 -1
- package/Shaders/glowMapMerge.fragment.js.map +1 -1
- package/Shaders/glowMapMerge.vertex.d.ts +1 -1
- package/Shaders/glowMapMerge.vertex.js +1 -1
- package/Shaders/glowMapMerge.vertex.js.map +1 -1
- package/Shaders/gpuRenderParticles.fragment.d.ts +3 -1
- package/Shaders/gpuRenderParticles.fragment.js +9 -2
- package/Shaders/gpuRenderParticles.fragment.js.map +1 -1
- package/Shaders/gpuRenderParticles.vertex.d.ts +3 -1
- package/Shaders/gpuRenderParticles.vertex.js +5 -1
- package/Shaders/gpuRenderParticles.vertex.js.map +1 -1
- package/Shaders/gpuUpdateParticles.fragment.d.ts +1 -1
- package/Shaders/gpuUpdateParticles.fragment.js +1 -1
- package/Shaders/gpuUpdateParticles.fragment.js.map +1 -1
- package/Shaders/gpuUpdateParticles.vertex.d.ts +1 -1
- package/Shaders/gpuUpdateParticles.vertex.js +1 -1
- package/Shaders/gpuUpdateParticles.vertex.js.map +1 -1
- package/Shaders/grain.fragment.d.ts +1 -1
- package/Shaders/grain.fragment.js +1 -1
- package/Shaders/grain.fragment.js.map +1 -1
- package/Shaders/hdrFiltering.fragment.d.ts +1 -1
- package/Shaders/hdrFiltering.fragment.js +1 -1
- package/Shaders/hdrFiltering.fragment.js.map +1 -1
- package/Shaders/hdrFiltering.vertex.d.ts +1 -1
- package/Shaders/hdrFiltering.vertex.js +1 -1
- package/Shaders/hdrFiltering.vertex.js.map +1 -1
- package/Shaders/highlights.fragment.d.ts +1 -1
- package/Shaders/highlights.fragment.js +1 -1
- package/Shaders/highlights.fragment.js.map +1 -1
- package/Shaders/imageProcessing.fragment.d.ts +1 -1
- package/Shaders/imageProcessing.fragment.js +1 -1
- package/Shaders/imageProcessing.fragment.js.map +1 -1
- package/Shaders/kernelBlur.fragment.d.ts +1 -1
- package/Shaders/kernelBlur.fragment.js +1 -1
- package/Shaders/kernelBlur.fragment.js.map +1 -1
- package/Shaders/kernelBlur.vertex.d.ts +1 -1
- package/Shaders/kernelBlur.vertex.js +1 -1
- package/Shaders/kernelBlur.vertex.js.map +1 -1
- package/Shaders/layer.fragment.d.ts +1 -1
- package/Shaders/layer.fragment.js +1 -1
- package/Shaders/layer.fragment.js.map +1 -1
- package/Shaders/layer.vertex.d.ts +1 -1
- package/Shaders/layer.vertex.js +1 -1
- package/Shaders/layer.vertex.js.map +1 -1
- package/Shaders/lensFlare.fragment.d.ts +1 -1
- package/Shaders/lensFlare.fragment.js +1 -1
- package/Shaders/lensFlare.fragment.js.map +1 -1
- package/Shaders/lensFlare.vertex.d.ts +1 -1
- package/Shaders/lensFlare.vertex.js +1 -1
- package/Shaders/lensFlare.vertex.js.map +1 -1
- package/Shaders/lensHighlights.fragment.d.ts +1 -1
- package/Shaders/lensHighlights.fragment.js +1 -1
- package/Shaders/lensHighlights.fragment.js.map +1 -1
- package/Shaders/line.fragment.d.ts +1 -1
- package/Shaders/line.fragment.js +1 -1
- package/Shaders/line.fragment.js.map +1 -1
- package/Shaders/line.vertex.d.ts +1 -1
- package/Shaders/line.vertex.js +1 -1
- package/Shaders/line.vertex.js.map +1 -1
- package/Shaders/minmaxRedux.fragment.d.ts +1 -1
- package/Shaders/minmaxRedux.fragment.js +1 -1
- package/Shaders/minmaxRedux.fragment.js.map +1 -1
- package/Shaders/motionBlur.fragment.d.ts +1 -1
- package/Shaders/motionBlur.fragment.js +1 -1
- package/Shaders/motionBlur.fragment.js.map +1 -1
- package/Shaders/noise.fragment.d.ts +1 -1
- package/Shaders/noise.fragment.js +1 -1
- package/Shaders/noise.fragment.js.map +1 -1
- package/Shaders/oitBackBlend.fragment.d.ts +1 -1
- package/Shaders/oitBackBlend.fragment.js +1 -1
- package/Shaders/oitBackBlend.fragment.js.map +1 -1
- package/Shaders/oitFinal.fragment.d.ts +1 -1
- package/Shaders/oitFinal.fragment.js +1 -1
- package/Shaders/oitFinal.fragment.js.map +1 -1
- package/Shaders/outline.fragment.d.ts +1 -1
- package/Shaders/outline.fragment.js +1 -1
- package/Shaders/outline.fragment.js.map +1 -1
- package/Shaders/outline.vertex.d.ts +1 -1
- package/Shaders/outline.vertex.js +1 -1
- package/Shaders/outline.vertex.js.map +1 -1
- package/Shaders/particles.fragment.d.ts +3 -1
- package/Shaders/particles.fragment.js +9 -2
- package/Shaders/particles.fragment.js.map +1 -1
- package/Shaders/particles.vertex.d.ts +3 -1
- package/Shaders/particles.vertex.js +5 -1
- package/Shaders/particles.vertex.js.map +1 -1
- package/Shaders/pass.fragment.d.ts +1 -1
- package/Shaders/pass.fragment.js +1 -1
- package/Shaders/pass.fragment.js.map +1 -1
- package/Shaders/passCube.fragment.d.ts +1 -1
- package/Shaders/passCube.fragment.js +1 -1
- package/Shaders/passCube.fragment.js.map +1 -1
- package/Shaders/pbr.fragment.d.ts +1 -1
- package/Shaders/pbr.fragment.js +1 -1
- package/Shaders/pbr.fragment.js.map +1 -1
- package/Shaders/pbr.vertex.d.ts +1 -1
- package/Shaders/pbr.vertex.js +2 -2
- package/Shaders/pbr.vertex.js.map +1 -1
- package/Shaders/postprocess.vertex.d.ts +1 -1
- package/Shaders/postprocess.vertex.js +1 -1
- package/Shaders/postprocess.vertex.js.map +1 -1
- package/Shaders/procedural.vertex.d.ts +1 -1
- package/Shaders/procedural.vertex.js +1 -1
- package/Shaders/procedural.vertex.js.map +1 -1
- package/Shaders/refraction.fragment.d.ts +1 -1
- package/Shaders/refraction.fragment.js +1 -1
- package/Shaders/refraction.fragment.js.map +1 -1
- package/Shaders/rgbdDecode.fragment.d.ts +1 -1
- package/Shaders/rgbdDecode.fragment.js +1 -1
- package/Shaders/rgbdDecode.fragment.js.map +1 -1
- package/Shaders/rgbdEncode.fragment.d.ts +1 -1
- package/Shaders/rgbdEncode.fragment.js +1 -1
- package/Shaders/rgbdEncode.fragment.js.map +1 -1
- package/Shaders/screenSpaceCurvature.fragment.d.ts +1 -1
- package/Shaders/screenSpaceCurvature.fragment.js +1 -1
- package/Shaders/screenSpaceCurvature.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection.fragment.d.ts +1 -1
- package/Shaders/screenSpaceReflection.fragment.js +1 -1
- package/Shaders/screenSpaceReflection.fragment.js.map +1 -1
- package/Shaders/shadowMap.fragment.d.ts +1 -1
- package/Shaders/shadowMap.fragment.js +1 -1
- package/Shaders/shadowMap.fragment.js.map +1 -1
- package/Shaders/shadowMap.vertex.d.ts +1 -1
- package/Shaders/shadowMap.vertex.js +1 -1
- package/Shaders/shadowMap.vertex.js.map +1 -1
- package/Shaders/sharpen.fragment.d.ts +1 -1
- package/Shaders/sharpen.fragment.js +1 -1
- package/Shaders/sharpen.fragment.js.map +1 -1
- package/Shaders/spriteMap.fragment.d.ts +1 -1
- package/Shaders/spriteMap.fragment.js +1 -1
- package/Shaders/spriteMap.fragment.js.map +1 -1
- package/Shaders/spriteMap.vertex.d.ts +1 -1
- package/Shaders/spriteMap.vertex.js +1 -1
- package/Shaders/spriteMap.vertex.js.map +1 -1
- package/Shaders/sprites.fragment.d.ts +1 -1
- package/Shaders/sprites.fragment.js +1 -1
- package/Shaders/sprites.fragment.js.map +1 -1
- package/Shaders/sprites.vertex.d.ts +1 -1
- package/Shaders/sprites.vertex.js +1 -1
- package/Shaders/sprites.vertex.js.map +1 -1
- package/Shaders/ssao.fragment.d.ts +1 -1
- package/Shaders/ssao.fragment.js +1 -1
- package/Shaders/ssao.fragment.js.map +1 -1
- package/Shaders/ssao2.fragment.d.ts +1 -1
- package/Shaders/ssao2.fragment.js +1 -1
- package/Shaders/ssao2.fragment.js.map +1 -1
- package/Shaders/ssaoCombine.fragment.d.ts +1 -1
- package/Shaders/ssaoCombine.fragment.js +1 -1
- package/Shaders/ssaoCombine.fragment.js.map +1 -1
- package/Shaders/standard.fragment.d.ts +1 -1
- package/Shaders/standard.fragment.js +1 -1
- package/Shaders/standard.fragment.js.map +1 -1
- package/Shaders/stereoscopicInterlace.fragment.d.ts +1 -1
- package/Shaders/stereoscopicInterlace.fragment.js +1 -1
- package/Shaders/stereoscopicInterlace.fragment.js.map +1 -1
- package/Shaders/subSurfaceScattering.fragment.d.ts +1 -1
- package/Shaders/subSurfaceScattering.fragment.js +1 -1
- package/Shaders/subSurfaceScattering.fragment.js.map +1 -1
- package/Shaders/tonemap.fragment.d.ts +1 -1
- package/Shaders/tonemap.fragment.js +1 -1
- package/Shaders/tonemap.fragment.js.map +1 -1
- package/Shaders/volumetricLightScattering.fragment.d.ts +1 -1
- package/Shaders/volumetricLightScattering.fragment.js +1 -1
- package/Shaders/volumetricLightScattering.fragment.js.map +1 -1
- package/Shaders/volumetricLightScatteringPass.fragment.d.ts +1 -1
- package/Shaders/volumetricLightScatteringPass.fragment.js +1 -1
- package/Shaders/volumetricLightScatteringPass.fragment.js.map +1 -1
- package/Shaders/volumetricLightScatteringPass.vertex.d.ts +1 -1
- package/Shaders/volumetricLightScatteringPass.vertex.js +1 -1
- package/Shaders/volumetricLightScatteringPass.vertex.js.map +1 -1
- package/Shaders/vrDistortionCorrection.fragment.d.ts +1 -1
- package/Shaders/vrDistortionCorrection.fragment.js +1 -1
- package/Shaders/vrDistortionCorrection.fragment.js.map +1 -1
- package/Shaders/vrMultiviewToSingleview.fragment.d.ts +1 -1
- package/Shaders/vrMultiviewToSingleview.fragment.js +1 -1
- package/Shaders/vrMultiviewToSingleview.fragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bonesDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/bonesDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/bonesDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/bonesVertex.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/bonesVertex.js +1 -1
- package/ShadersWGSL/ShadersInclude/bonesVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragment.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneFragmentDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertex.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/clipPlaneVertexDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/instancesDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/instancesDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/instancesDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/instancesVertex.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/instancesVertex.js +1 -1
- package/ShadersWGSL/ShadersInclude/instancesVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/meshUboDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/meshUboDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertex.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobal.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.d.ts +1 -1
- package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js +1 -1
- package/ShadersWGSL/ShadersInclude/sceneUboDeclaration.js.map +1 -1
- package/ShadersWGSL/gpuUpdateParticles.compute.d.ts +1 -1
- package/ShadersWGSL/gpuUpdateParticles.compute.js +1 -1
- package/ShadersWGSL/gpuUpdateParticles.compute.js.map +1 -1
- package/Sprites/spriteManager.d.ts +4 -0
- package/Sprites/spriteManager.js +2 -0
- package/Sprites/spriteManager.js.map +1 -1
- package/Sprites/spriteSceneComponent.d.ts +6 -6
- package/Sprites/spriteSceneComponent.js.map +1 -1
- package/Sprites/thinSprite.d.ts +5 -6
- package/Sprites/thinSprite.js +1 -2
- package/Sprites/thinSprite.js.map +1 -1
- package/States/IStencilState.d.ts +1 -1
- package/States/IStencilState.js.map +1 -1
- package/States/alphaCullingState.d.ts +1 -1
- package/States/alphaCullingState.js +1 -1
- package/States/alphaCullingState.js.map +1 -1
- package/States/depthCullingState.d.ts +1 -1
- package/States/depthCullingState.js +1 -1
- package/States/depthCullingState.js.map +1 -1
- package/States/stencilState.d.ts +1 -1
- package/States/stencilState.js +1 -1
- package/States/stencilState.js.map +1 -1
- package/States/stencilStateComposer.d.ts +1 -1
- package/States/stencilStateComposer.js +1 -1
- package/States/stencilStateComposer.js.map +1 -1
- package/XR/features/WebXRControllerPhysics.d.ts +1 -1
- package/XR/features/WebXRControllerPhysics.js +1 -1
- package/XR/features/WebXRControllerPhysics.js.map +1 -1
- package/XR/features/WebXRControllerPointerSelection.d.ts +3 -6
- package/XR/features/WebXRControllerPointerSelection.js +3 -6
- package/XR/features/WebXRControllerPointerSelection.js.map +1 -1
- package/XR/features/WebXRLayers.d.ts +2 -2
- package/XR/features/WebXRLayers.js +4 -4
- package/XR/features/WebXRLayers.js.map +1 -1
- package/XR/features/WebXRNearInteraction.js +2 -2
- package/XR/features/WebXRNearInteraction.js.map +1 -1
- package/XR/motionController/webXRAbstractMotionController.d.ts +3 -4
- package/XR/motionController/webXRAbstractMotionController.js +2 -3
- package/XR/motionController/webXRAbstractMotionController.js.map +1 -1
- package/XR/native/nativeXRFrame.d.ts +2 -2
- package/XR/native/nativeXRFrame.js +1 -1
- package/XR/native/nativeXRFrame.js.map +1 -1
- package/XR/native/nativeXRRenderTarget.d.ts +3 -3
- package/XR/native/nativeXRRenderTarget.js +3 -3
- package/XR/native/nativeXRRenderTarget.js.map +1 -1
- package/XR/webXRCamera.d.ts +2 -2
- package/XR/webXRCamera.js +1 -1
- package/XR/webXRCamera.js.map +1 -1
- package/XR/webXRDefaultExperience.d.ts +6 -6
- package/XR/webXRDefaultExperience.js.map +1 -1
- package/XR/webXRExperienceHelper.d.ts +21 -1
- package/XR/webXRExperienceHelper.js +37 -7
- package/XR/webXRExperienceHelper.js.map +1 -1
- package/XR/webXRInputSource.d.ts +1 -1
- package/XR/webXRInputSource.js.map +1 -1
- package/XR/webXRLayerWrapper.d.ts +1 -1
- package/XR/webXRLayerWrapper.js +1 -1
- package/XR/webXRLayerWrapper.js.map +1 -1
- package/XR/webXRRenderTargetTextureProvider.d.ts +1 -1
- package/XR/webXRRenderTargetTextureProvider.js +1 -1
- package/XR/webXRRenderTargetTextureProvider.js.map +1 -1
- package/XR/webXRSessionManager.d.ts +1 -2
- package/XR/webXRSessionManager.js +1 -2
- package/XR/webXRSessionManager.js.map +1 -1
- package/XR/webXRWebGLLayer.d.ts +2 -2
- package/XR/webXRWebGLLayer.js +2 -2
- package/XR/webXRWebGLLayer.js.map +1 -1
- package/abstractScene.d.ts +1 -1
- package/abstractScene.js +1 -1
- package/abstractScene.js.map +1 -1
- package/node.d.ts +40 -52
- package/node.js +40 -55
- package/node.js.map +1 -1
- package/package.json +1 -1
- package/scene.d.ts +83 -107
- package/scene.js +94 -108
- package/scene.js.map +1 -1
- package/sceneComponent.d.ts +4 -2
- package/sceneComponent.js +4 -2
- package/sceneComponent.js.map +1 -1
- package/types.d.ts +2 -2
- package/types.js +1 -1
- package/types.js.map +1 -1
package/Buffers/storageBuffer.js
CHANGED
|
@@ -19,7 +19,7 @@ export class StorageBuffer {
|
|
|
19
19
|
this._creationFlags = creationFlags;
|
|
20
20
|
this._buffer = this._engine.createStorageBuffer(size, creationFlags);
|
|
21
21
|
}
|
|
22
|
-
/** @
|
|
22
|
+
/** @internal */
|
|
23
23
|
_rebuild() {
|
|
24
24
|
this._create(this._bufferSize, this._creationFlags);
|
|
25
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storageBuffer.js","sourceRoot":"","sources":["../../../../../lts/core/generated/Buffers/storageBuffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD;;GAEG;AACH,MAAM,OAAO,aAAa;IAMtB;;;;;OAKG;IACH,YAAY,MAAkB,EAAE,IAAY,EAAE,aAAa,GAAG,SAAS,CAAC,6BAA6B;QACjG,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACtC,CAAC;IAEO,OAAO,CAAC,IAAY,EAAE,aAAqB;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzE,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"storageBuffer.js","sourceRoot":"","sources":["../../../../../lts/core/generated/Buffers/storageBuffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD;;GAEG;AACH,MAAM,OAAO,aAAa;IAMtB;;;;;OAKG;IACH,YAAY,MAAkB,EAAE,IAAY,EAAE,aAAa,GAAG,SAAS,CAAC,6BAA6B;QACjG,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACtC,CAAC;IAEO,OAAO,CAAC,IAAY,EAAE,aAAqB;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzE,CAAC;IAED,gBAAgB;IACT,QAAQ;QACX,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACI,SAAS;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,IAAe,EAAE,UAAmB,EAAE,UAAmB;QACnE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,OAAO;SACV;QAED,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;OAMG;IACI,IAAI,CAAC,MAAe,EAAE,IAAa,EAAE,MAAwB;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAClF,CAAC;IAED;;OAEG;IACI,OAAO;QACV,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;QACpD,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAE3C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YACd,cAAc,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAClE,cAAc,CAAC,GAAG,EAAE,CAAC;SACxB;QAED,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,IAAW,CAAC;IAC/B,CAAC;CACJ","sourcesContent":["import type { ThinEngine } from \"../Engines/thinEngine\";\r\nimport type { DataBuffer } from \"../Buffers/dataBuffer\";\r\nimport type { DataArray } from \"../types\";\r\nimport { Constants } from \"../Engines/constants\";\r\n\r\n/**\r\n * This class is a small wrapper around a native buffer that can be read and/or written\r\n */\r\nexport class StorageBuffer {\r\n private _engine: ThinEngine;\r\n private _buffer: DataBuffer;\r\n private _bufferSize: number;\r\n private _creationFlags: number;\r\n\r\n /**\r\n * Creates a new storage buffer instance\r\n * @param engine The engine the buffer will be created inside\r\n * @param size The size of the buffer in bytes\r\n * @param creationFlags flags to use when creating the buffer (see Constants.BUFFER_CREATIONFLAG_XXX). The BUFFER_CREATIONFLAG_STORAGE flag will be automatically added.\r\n */\r\n constructor(engine: ThinEngine, size: number, creationFlags = Constants.BUFFER_CREATIONFLAG_READWRITE) {\r\n this._engine = engine;\r\n this._engine._storageBuffers.push(this);\r\n this._create(size, creationFlags);\r\n }\r\n\r\n private _create(size: number, creationFlags: number): void {\r\n this._bufferSize = size;\r\n this._creationFlags = creationFlags;\r\n this._buffer = this._engine.createStorageBuffer(size, creationFlags);\r\n }\r\n\r\n /** @internal */\r\n public _rebuild(): void {\r\n this._create(this._bufferSize, this._creationFlags);\r\n }\r\n\r\n /**\r\n * Gets underlying native buffer\r\n * @returns underlying native buffer\r\n */\r\n public getBuffer(): DataBuffer {\r\n return this._buffer;\r\n }\r\n\r\n /**\r\n * Updates the storage buffer\r\n * @param data the data used to update the storage buffer\r\n * @param byteOffset the byte offset of the data (optional)\r\n * @param byteLength the byte length of the data (optional)\r\n */\r\n public update(data: DataArray, byteOffset?: number, byteLength?: number): void {\r\n if (!this._buffer) {\r\n return;\r\n }\r\n\r\n this._engine.updateStorageBuffer(this._buffer, data, byteOffset, byteLength);\r\n }\r\n\r\n /**\r\n * Reads data from the storage buffer\r\n * @param offset The offset in the storage buffer to start reading from (default: 0)\r\n * @param size The number of bytes to read from the storage buffer (default: capacity of the buffer)\r\n * @param buffer The buffer to write the data we have read from the storage buffer to (optional)\r\n * @returns If not undefined, returns the (promise) buffer (as provided by the 4th parameter) filled with the data, else it returns a (promise) Uint8Array with the data read from the storage buffer\r\n */\r\n public read(offset?: number, size?: number, buffer?: ArrayBufferView): Promise<ArrayBufferView> {\r\n return this._engine.readFromStorageBuffer(this._buffer, offset, size, buffer);\r\n }\r\n\r\n /**\r\n * Disposes the storage buffer\r\n */\r\n public dispose(): void {\r\n const storageBuffers = this._engine._storageBuffers;\r\n const index = storageBuffers.indexOf(this);\r\n\r\n if (index !== -1) {\r\n storageBuffers[index] = storageBuffers[storageBuffers.length - 1];\r\n storageBuffers.pop();\r\n }\r\n\r\n this._engine._releaseBuffer(this._buffer);\r\n this._buffer = null as any;\r\n }\r\n}\r\n"]}
|
|
@@ -40,8 +40,7 @@ export declare class ArcRotateCameraVRDeviceOrientationInput implements ICameraI
|
|
|
40
40
|
*/
|
|
41
41
|
attachControl(noPreventDefault?: boolean): void;
|
|
42
42
|
/**
|
|
43
|
-
* @
|
|
44
|
-
* @hidden
|
|
43
|
+
* @internal
|
|
45
44
|
*/
|
|
46
45
|
_onOrientationEvent(evt: DeviceOrientationEvent): void;
|
|
47
46
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arcRotateCameraVRDeviceOrientationInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/arcRotateCameraVRDeviceOrientationInput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAazC;;;GAGG;AACH,4BAA4B,CAAC,SAAS,CAAC,sBAAsB,GAAG;IAC5D,IAAI,CAAC,GAAG,CAAC,IAAI,uCAAuC,EAAE,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,uCAAuC;IAsBhD;;OAEG;IACH;QAnBA;;WAEG;QACI,oBAAe,GAAG,CAAC,CAAC;QAE3B;;WAEG;QACI,oBAAe,GAAG,CAAC,CAAC;QAEnB,WAAM,GAAG,CAAC,CAAC;QACX,WAAM,GAAG,CAAC,CAAC;QACX,WAAM,GAAG,KAAK,CAAC;QAQnB,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IAED;;;OAGG;IACI,aAAa,CAAC,gBAA0B;QAC3C,8CAA8C;QAC9C,gBAAgB,GAAG,KAAK,CAAC,gCAAgC,CAAC,SAAS,CAAC,CAAC;QAErE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;QAE5C,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC,aAAa,EAAE,CAAC;QAEtE,IAAI,UAAU,EAAE;YACZ,wBAAwB;YACxB,IAAI,OAAO,sBAAsB,KAAK,WAAW,IAAI,OAAa,sBAAuB,CAAC,iBAAiB,KAAK,UAAU,EAAE;gBAClH,sBAAuB;qBACxB,iBAAiB,EAAE;qBACnB,IAAI,CAAC,CAAC,QAAgB,EAAE,EAAE;oBACvB,IAAI,QAAQ,KAAK,SAAS,EAAE;wBACxB,UAAW,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC;qBACrF;yBAAM;wBACH,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;qBACzC;gBACL,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,KAAU,EAAE,EAAE;oBAClB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC,CAAC,CAAC;aACV;iBAAM;gBACH,UAAU,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC;aACpF;SACJ;IACL,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"arcRotateCameraVRDeviceOrientationInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/arcRotateCameraVRDeviceOrientationInput.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ArcRotateCamera } from \"../../Cameras/arcRotateCamera\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport { ArcRotateCameraInputsManager } from \"../../Cameras/arcRotateCameraInputsManager\";\r\nimport { Tools } from \"../../Misc/tools\";\r\n\r\n// Module augmentation to abstract orientation inputs from camera.\r\ndeclare module \"../../Cameras/arcRotateCameraInputsManager\" {\r\n export interface ArcRotateCameraInputsManager {\r\n /**\r\n * Add orientation input support to the input manager.\r\n * @returns the current input manager\r\n */\r\n addVRDeviceOrientation(): ArcRotateCameraInputsManager;\r\n }\r\n}\r\n\r\n/**\r\n * Add orientation input support to the input manager.\r\n * @returns the current input manager\r\n */\r\nArcRotateCameraInputsManager.prototype.addVRDeviceOrientation = function (): ArcRotateCameraInputsManager {\r\n this.add(new ArcRotateCameraVRDeviceOrientationInput());\r\n return this;\r\n};\r\n\r\n/**\r\n * Manage the device orientation inputs (gyroscope) to control an arc rotate camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class ArcRotateCameraVRDeviceOrientationInput implements ICameraInput<ArcRotateCamera> {\r\n /**\r\n * Defines the camera the input is attached to.\r\n */\r\n public camera: ArcRotateCamera;\r\n\r\n /**\r\n * Defines a correction factor applied on the alpha value retrieved from the orientation events.\r\n */\r\n public alphaCorrection = 1;\r\n\r\n /**\r\n * Defines a correction factor applied on the gamma value retrieved from the orientation events.\r\n */\r\n public gammaCorrection = 1;\r\n\r\n private _alpha = 0;\r\n private _gamma = 0;\r\n private _dirty = false;\r\n\r\n private _deviceOrientationHandler: () => void;\r\n\r\n /**\r\n * Instantiate a new ArcRotateCameraVRDeviceOrientationInput.\r\n */\r\n constructor() {\r\n this._deviceOrientationHandler = this._onOrientationEvent.bind(this);\r\n }\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\r\n */\r\n public attachControl(noPreventDefault?: boolean): void {\r\n // eslint-disable-next-line prefer-rest-params\r\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\r\n\r\n this.camera.attachControl(noPreventDefault);\r\n\r\n const hostWindow = this.camera.getScene().getEngine().getHostWindow();\r\n\r\n if (hostWindow) {\r\n // check iOS 13+ support\r\n if (typeof DeviceOrientationEvent !== \"undefined\" && typeof (<any>DeviceOrientationEvent).requestPermission === \"function\") {\r\n (<any>DeviceOrientationEvent)\r\n .requestPermission()\r\n .then((response: string) => {\r\n if (response === \"granted\") {\r\n hostWindow!.addEventListener(\"deviceorientation\", this._deviceOrientationHandler);\r\n } else {\r\n Tools.Warn(\"Permission not granted.\");\r\n }\r\n })\r\n .catch((error: any) => {\r\n Tools.Error(error);\r\n });\r\n } else {\r\n hostWindow.addEventListener(\"deviceorientation\", this._deviceOrientationHandler);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _onOrientationEvent(evt: DeviceOrientationEvent): void {\r\n if (evt.alpha !== null) {\r\n this._alpha = (+evt.alpha | 0) * this.alphaCorrection;\r\n }\r\n\r\n if (evt.gamma !== null) {\r\n this._gamma = (+evt.gamma | 0) * this.gammaCorrection;\r\n }\r\n this._dirty = true;\r\n }\r\n\r\n /**\r\n * Update the current camera state depending on the inputs that have been used this frame.\r\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\r\n */\r\n public checkInputs(): void {\r\n if (this._dirty) {\r\n this._dirty = false;\r\n\r\n if (this._gamma < 0) {\r\n this._gamma = 180 + this._gamma;\r\n }\r\n\r\n this.camera.alpha = (((-this._alpha / 180.0) * Math.PI) % Math.PI) * 2;\r\n this.camera.beta = (this._gamma / 180.0) * Math.PI;\r\n }\r\n }\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n window.removeEventListener(\"deviceorientation\", this._deviceOrientationHandler);\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"ArcRotateCameraVRDeviceOrientationInput\";\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"VRDeviceOrientation\";\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"ArcRotateCameraVRDeviceOrientationInput\"] = ArcRotateCameraVRDeviceOrientationInput;\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flyCameraKeyboardInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/flyCameraKeyboardInput.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAIrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;;GAGG;AACH,MAAM,OAAO,sBAAsB;IAAnC;QAMI;;WAEG;QAEI,gBAAW,GAAG,CAAC,EAAE,CAAC,CAAC;QAE1B;;WAEG;QAEI,iBAAY,GAAG,CAAC,EAAE,CAAC,CAAC;QAE3B;;WAEG;QAEI,WAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QAErB;;WAEG;QAEI,aAAQ,GAAG,CAAC,EAAE,CAAC,CAAC;QAEvB;;WAEG;QAEI,cAAS,GAAG,CAAC,EAAE,CAAC,CAAC;QAExB;;WAEG;QAEI,aAAQ,GAAG,CAAC,EAAE,CAAC,CAAC;QAEf,UAAK,GAAG,IAAI,KAAK,EAAU,CAAC;IAgJxC,CAAC;IA1IG;;;OAGG;IACI,aAAa,CAAC,gBAA0B;QAC3C,8CAA8C;QAC9C,gBAAgB,GAAG,KAAK,CAAC,gCAAgC,CAAC,SAAS,CAAC,CAAC;QACrE,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,OAAO;SACV;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAEvC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,EAAE;YACtE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACrE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;YAEvB,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,CAAC,OAAO,EAAE;gBAC1C,IACI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC5C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACvC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAC5C;oBACE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAE9C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;wBACd,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;qBAChC;oBACD,IAAI,CAAC,gBAAgB,EAAE;wBACnB,GAAG,CAAC,cAAc,EAAE,CAAC;qBACxB;iBACJ;aACJ;iBAAM;gBACH,IACI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC5C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACvC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAC5C;oBACE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAE9C,IAAI,KAAK,IAAI,CAAC,EAAE;wBACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBAC/B;oBACD,IAAI,CAAC,gBAAgB,EAAE;wBACnB,GAAG,CAAC,cAAc,EAAE,CAAC;qBACxB;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACI,aAAa;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC1B,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;aACrE;YAED,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBAC5B,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aAC1E;YACD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAChC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;SACrC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,YAAY;QACf,OAAO,wBAAwB,CAAC;IACpC,CAAC;IAED;;OAEG;IACI,YAAY;QACf,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,aAAa;QAChB,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;;OAGG;IACI,WAAW;QACd,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,WAAW;YACX,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAClC,MAAM,KAAK,GAAG,MAAM,CAAC,wBAAwB,EAAE,CAAC;gBAEhD,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC1C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;iBACtD;qBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAClD,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC5C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;iBACtD;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC9C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC/C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;iBACtD;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC9C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;iBACvD;gBAED,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,oBAAoB,EAAE;oBACxC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;iBAClC;gBAED,MAAM,CAAC,aAAa,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAClE,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,qBAAqB,CAAC,CAAC;gBAClH,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;aACnE;SACJ;IACL,CAAC;CACJ;AAhLG;IADC,SAAS,EAAE;2DACc;AAM1B;IADC,SAAS,EAAE;4DACe;AAM3B;IADC,SAAS,EAAE;sDACS;AAMrB;IADC,SAAS,EAAE;wDACW;AAMvB;IADC,SAAS,EAAE;yDACY;AAMxB;IADC,SAAS,EAAE;wDACW;AAoJrB,gBAAiB,CAAC,wBAAwB,CAAC,GAAG,sBAAsB,CAAC","sourcesContent":["import type { Nullable } from \"../../types\";\r\nimport { serialize } from \"../../Misc/decorators\";\r\nimport type { Observer } from \"../../Misc/observable\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FlyCamera } from \"../../Cameras/flyCamera\";\r\nimport type { Engine } from \"../../Engines/engine\";\r\nimport type { KeyboardInfo } from \"../../Events/keyboardEvents\";\r\nimport { KeyboardEventTypes } from \"../../Events/keyboardEvents\";\r\nimport type { Scene } from \"../../scene\";\r\nimport { Vector3 } from \"../../Maths/math.vector\";\r\nimport { Tools } from \"../../Misc/tools\";\r\n\r\n/**\r\n * Listen to keyboard events to control the camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FlyCameraKeyboardInput implements ICameraInput<FlyCamera> {\r\n /**\r\n * Defines the camera the input is attached to.\r\n */\r\n public camera: FlyCamera;\r\n\r\n /**\r\n * The list of keyboard keys used to control the forward move of the camera.\r\n */\r\n @serialize()\r\n public keysForward = [87];\r\n\r\n /**\r\n * The list of keyboard keys used to control the backward move of the camera.\r\n */\r\n @serialize()\r\n public keysBackward = [83];\r\n\r\n /**\r\n * The list of keyboard keys used to control the forward move of the camera.\r\n */\r\n @serialize()\r\n public keysUp = [69];\r\n\r\n /**\r\n * The list of keyboard keys used to control the backward move of the camera.\r\n */\r\n @serialize()\r\n public keysDown = [81];\r\n\r\n /**\r\n * The list of keyboard keys used to control the right strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysRight = [68];\r\n\r\n /**\r\n * The list of keyboard keys used to control the left strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysLeft = [65];\r\n\r\n private _keys = new Array<number>();\r\n private _onCanvasBlurObserver: Nullable<Observer<Engine>>;\r\n private _onKeyboardObserver: Nullable<Observer<KeyboardInfo>>;\r\n private _engine: Engine;\r\n private _scene: Scene;\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\r\n */\r\n public attachControl(noPreventDefault?: boolean): void {\r\n // eslint-disable-next-line prefer-rest-params\r\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\r\n if (this._onCanvasBlurObserver) {\r\n return;\r\n }\r\n\r\n this._scene = this.camera.getScene();\r\n this._engine = this._scene.getEngine();\r\n\r\n this._onCanvasBlurObserver = this._engine.onCanvasBlurObservable.add(() => {\r\n this._keys.length = 0;\r\n });\r\n\r\n this._onKeyboardObserver = this._scene.onKeyboardObservable.add((info) => {\r\n const evt = info.event;\r\n\r\n if (info.type === KeyboardEventTypes.KEYDOWN) {\r\n if (\r\n this.keysForward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysBackward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index === -1) {\r\n this._keys.push(evt.keyCode);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n } else {\r\n if (\r\n this.keysForward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysBackward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index >= 0) {\r\n this._keys.splice(index, 1);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n if (this._scene) {\r\n if (this._onKeyboardObserver) {\r\n this._scene.onKeyboardObservable.remove(this._onKeyboardObserver);\r\n }\r\n\r\n if (this._onCanvasBlurObserver) {\r\n this._engine.onCanvasBlurObservable.remove(this._onCanvasBlurObserver);\r\n }\r\n this._onKeyboardObserver = null;\r\n this._onCanvasBlurObserver = null;\r\n }\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FlyCameraKeyboardInput\";\r\n }\r\n\r\n /**\r\n * @hidden\r\n */\r\n public _onLostFocus(): void {\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"keyboard\";\r\n }\r\n\r\n /**\r\n * Update the current camera state depending on the inputs that have been used this frame.\r\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\r\n */\r\n public checkInputs(): void {\r\n if (this._onKeyboardObserver) {\r\n const camera = this.camera;\r\n // Keyboard\r\n for (let index = 0; index < this._keys.length; index++) {\r\n const keyCode = this._keys[index];\r\n const speed = camera._computeLocalCameraSpeed();\r\n\r\n if (this.keysForward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, speed);\r\n } else if (this.keysBackward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, -speed);\r\n } else if (this.keysUp.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, speed, 0);\r\n } else if (this.keysDown.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, -speed, 0);\r\n } else if (this.keysRight.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(speed, 0, 0);\r\n } else if (this.keysLeft.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(-speed, 0, 0);\r\n }\r\n\r\n if (camera.getScene().useRightHandedSystem) {\r\n camera._localDirection.z *= -1;\r\n }\r\n\r\n camera.getViewMatrix().invertToRef(camera._cameraTransformMatrix);\r\n Vector3.TransformNormalToRef(camera._localDirection, camera._cameraTransformMatrix, camera._transformedDirection);\r\n camera.cameraDirection.addInPlace(camera._transformedDirection);\r\n }\r\n }\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FlyCameraKeyboardInput\"] = FlyCameraKeyboardInput;\r\n"]}
|
|
1
|
+
{"version":3,"file":"flyCameraKeyboardInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/flyCameraKeyboardInput.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAIrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;;GAGG;AACH,MAAM,OAAO,sBAAsB;IAAnC;QAMI;;WAEG;QAEI,gBAAW,GAAG,CAAC,EAAE,CAAC,CAAC;QAE1B;;WAEG;QAEI,iBAAY,GAAG,CAAC,EAAE,CAAC,CAAC;QAE3B;;WAEG;QAEI,WAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QAErB;;WAEG;QAEI,aAAQ,GAAG,CAAC,EAAE,CAAC,CAAC;QAEvB;;WAEG;QAEI,cAAS,GAAG,CAAC,EAAE,CAAC,CAAC;QAExB;;WAEG;QAEI,aAAQ,GAAG,CAAC,EAAE,CAAC,CAAC;QAEf,UAAK,GAAG,IAAI,KAAK,EAAU,CAAC;IAgJxC,CAAC;IA1IG;;;OAGG;IACI,aAAa,CAAC,gBAA0B;QAC3C,8CAA8C;QAC9C,gBAAgB,GAAG,KAAK,CAAC,gCAAgC,CAAC,SAAS,CAAC,CAAC;QACrE,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,OAAO;SACV;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAEvC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,EAAE;YACtE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACrE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;YAEvB,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,CAAC,OAAO,EAAE;gBAC1C,IACI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC5C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACvC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAC5C;oBACE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAE9C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;wBACd,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;qBAChC;oBACD,IAAI,CAAC,gBAAgB,EAAE;wBACnB,GAAG,CAAC,cAAc,EAAE,CAAC;qBACxB;iBACJ;aACJ;iBAAM;gBACH,IACI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC5C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACvC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAC5C;oBACE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAE9C,IAAI,KAAK,IAAI,CAAC,EAAE;wBACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;qBAC/B;oBACD,IAAI,CAAC,gBAAgB,EAAE;wBACnB,GAAG,CAAC,cAAc,EAAE,CAAC;qBACxB;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACI,aAAa;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAC1B,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;aACrE;YAED,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBAC5B,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aAC1E;YACD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAChC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;SACrC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,YAAY;QACf,OAAO,wBAAwB,CAAC;IACpC,CAAC;IAED;;OAEG;IACI,YAAY;QACf,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACI,aAAa;QAChB,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;;OAGG;IACI,WAAW;QACd,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,WAAW;YACX,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAClC,MAAM,KAAK,GAAG,MAAM,CAAC,wBAAwB,EAAE,CAAC;gBAEhD,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC1C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;iBACtD;qBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAClD,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC5C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;iBACtD;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC9C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC/C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;iBACtD;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC9C,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;iBACvD;gBAED,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,oBAAoB,EAAE;oBACxC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;iBAClC;gBAED,MAAM,CAAC,aAAa,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAClE,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,qBAAqB,CAAC,CAAC;gBAClH,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;aACnE;SACJ;IACL,CAAC;CACJ;AAhLG;IADC,SAAS,EAAE;2DACc;AAM1B;IADC,SAAS,EAAE;4DACe;AAM3B;IADC,SAAS,EAAE;sDACS;AAMrB;IADC,SAAS,EAAE;wDACW;AAMvB;IADC,SAAS,EAAE;yDACY;AAMxB;IADC,SAAS,EAAE;wDACW;AAoJrB,gBAAiB,CAAC,wBAAwB,CAAC,GAAG,sBAAsB,CAAC","sourcesContent":["import type { Nullable } from \"../../types\";\r\nimport { serialize } from \"../../Misc/decorators\";\r\nimport type { Observer } from \"../../Misc/observable\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FlyCamera } from \"../../Cameras/flyCamera\";\r\nimport type { Engine } from \"../../Engines/engine\";\r\nimport type { KeyboardInfo } from \"../../Events/keyboardEvents\";\r\nimport { KeyboardEventTypes } from \"../../Events/keyboardEvents\";\r\nimport type { Scene } from \"../../scene\";\r\nimport { Vector3 } from \"../../Maths/math.vector\";\r\nimport { Tools } from \"../../Misc/tools\";\r\n\r\n/**\r\n * Listen to keyboard events to control the camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FlyCameraKeyboardInput implements ICameraInput<FlyCamera> {\r\n /**\r\n * Defines the camera the input is attached to.\r\n */\r\n public camera: FlyCamera;\r\n\r\n /**\r\n * The list of keyboard keys used to control the forward move of the camera.\r\n */\r\n @serialize()\r\n public keysForward = [87];\r\n\r\n /**\r\n * The list of keyboard keys used to control the backward move of the camera.\r\n */\r\n @serialize()\r\n public keysBackward = [83];\r\n\r\n /**\r\n * The list of keyboard keys used to control the forward move of the camera.\r\n */\r\n @serialize()\r\n public keysUp = [69];\r\n\r\n /**\r\n * The list of keyboard keys used to control the backward move of the camera.\r\n */\r\n @serialize()\r\n public keysDown = [81];\r\n\r\n /**\r\n * The list of keyboard keys used to control the right strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysRight = [68];\r\n\r\n /**\r\n * The list of keyboard keys used to control the left strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysLeft = [65];\r\n\r\n private _keys = new Array<number>();\r\n private _onCanvasBlurObserver: Nullable<Observer<Engine>>;\r\n private _onKeyboardObserver: Nullable<Observer<KeyboardInfo>>;\r\n private _engine: Engine;\r\n private _scene: Scene;\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\r\n */\r\n public attachControl(noPreventDefault?: boolean): void {\r\n // eslint-disable-next-line prefer-rest-params\r\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\r\n if (this._onCanvasBlurObserver) {\r\n return;\r\n }\r\n\r\n this._scene = this.camera.getScene();\r\n this._engine = this._scene.getEngine();\r\n\r\n this._onCanvasBlurObserver = this._engine.onCanvasBlurObservable.add(() => {\r\n this._keys.length = 0;\r\n });\r\n\r\n this._onKeyboardObserver = this._scene.onKeyboardObservable.add((info) => {\r\n const evt = info.event;\r\n\r\n if (info.type === KeyboardEventTypes.KEYDOWN) {\r\n if (\r\n this.keysForward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysBackward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index === -1) {\r\n this._keys.push(evt.keyCode);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n } else {\r\n if (\r\n this.keysForward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysBackward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index >= 0) {\r\n this._keys.splice(index, 1);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n if (this._scene) {\r\n if (this._onKeyboardObserver) {\r\n this._scene.onKeyboardObservable.remove(this._onKeyboardObserver);\r\n }\r\n\r\n if (this._onCanvasBlurObserver) {\r\n this._engine.onCanvasBlurObservable.remove(this._onCanvasBlurObserver);\r\n }\r\n this._onKeyboardObserver = null;\r\n this._onCanvasBlurObserver = null;\r\n }\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FlyCameraKeyboardInput\";\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _onLostFocus(): void {\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"keyboard\";\r\n }\r\n\r\n /**\r\n * Update the current camera state depending on the inputs that have been used this frame.\r\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\r\n */\r\n public checkInputs(): void {\r\n if (this._onKeyboardObserver) {\r\n const camera = this.camera;\r\n // Keyboard\r\n for (let index = 0; index < this._keys.length; index++) {\r\n const keyCode = this._keys[index];\r\n const speed = camera._computeLocalCameraSpeed();\r\n\r\n if (this.keysForward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, speed);\r\n } else if (this.keysBackward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, -speed);\r\n } else if (this.keysUp.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, speed, 0);\r\n } else if (this.keysDown.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, -speed, 0);\r\n } else if (this.keysRight.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(speed, 0, 0);\r\n } else if (this.keysLeft.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(-speed, 0, 0);\r\n }\r\n\r\n if (camera.getScene().useRightHandedSystem) {\r\n camera._localDirection.z *= -1;\r\n }\r\n\r\n camera.getViewMatrix().invertToRef(camera._cameraTransformMatrix);\r\n Vector3.TransformNormalToRef(camera._localDirection, camera._cameraTransformMatrix, camera._transformedDirection);\r\n camera.cameraDirection.addInPlace(camera._transformedDirection);\r\n }\r\n }\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FlyCameraKeyboardInput\"] = FlyCameraKeyboardInput;\r\n"]}
|
|
@@ -5,14 +5,15 @@ import { Observable } from "../../Misc/observable";
|
|
|
5
5
|
declare module "../../Cameras/freeCameraInputsManager" {
|
|
6
6
|
interface FreeCameraInputsManager {
|
|
7
7
|
/**
|
|
8
|
-
* @
|
|
8
|
+
* @internal
|
|
9
9
|
*/
|
|
10
10
|
_deviceOrientationInput: Nullable<FreeCameraDeviceOrientationInput>;
|
|
11
11
|
/**
|
|
12
12
|
* Add orientation input support to the input manager.
|
|
13
|
+
* @param smoothFactor deviceOrientation smoothing. 0: no smoothing, 1: new data ignored, 0.9 recommended for smoothing
|
|
13
14
|
* @returns the current input manager
|
|
14
15
|
*/
|
|
15
|
-
addDeviceOrientation(): FreeCameraInputsManager;
|
|
16
|
+
addDeviceOrientation(smoothFactor?: number): FreeCameraInputsManager;
|
|
16
17
|
}
|
|
17
18
|
}
|
|
18
19
|
/**
|
|
@@ -28,6 +29,8 @@ export declare class FreeCameraDeviceOrientationInput implements ICameraInput<Fr
|
|
|
28
29
|
private _alpha;
|
|
29
30
|
private _beta;
|
|
30
31
|
private _gamma;
|
|
32
|
+
/** alpha+beta+gamma smoothing. 0: no smoothing, 1: new data ignored, 0.9 recommended for smoothing */
|
|
33
|
+
smoothFactor: number;
|
|
31
34
|
/**
|
|
32
35
|
* Can be used to detect if a device orientation sensor is available on a device
|
|
33
36
|
* @param timeout amount of time in milliseconds to wait for a response from the sensor (default: infinite)
|
|
@@ -35,7 +38,7 @@ export declare class FreeCameraDeviceOrientationInput implements ICameraInput<Fr
|
|
|
35
38
|
*/
|
|
36
39
|
static WaitForOrientationChangeAsync(timeout?: number): Promise<void>;
|
|
37
40
|
/**
|
|
38
|
-
* @
|
|
41
|
+
* @internal
|
|
39
42
|
*/
|
|
40
43
|
_onDeviceOrientationChangedObservable: Observable<void>;
|
|
41
44
|
/**
|
|
@@ -5,11 +5,15 @@ import { FreeCameraInputsManager } from "../../Cameras/freeCameraInputsManager.j
|
|
|
5
5
|
import { Observable } from "../../Misc/observable.js";
|
|
6
6
|
/**
|
|
7
7
|
* Add orientation input support to the input manager.
|
|
8
|
+
* @param smoothFactor deviceOrientation smoothing. 0: no smoothing, 1: new data ignored, 0.9 recommended for smoothing
|
|
8
9
|
* @returns the current input manager
|
|
9
10
|
*/
|
|
10
|
-
FreeCameraInputsManager.prototype.addDeviceOrientation = function () {
|
|
11
|
+
FreeCameraInputsManager.prototype.addDeviceOrientation = function (smoothFactor) {
|
|
11
12
|
if (!this._deviceOrientationInput) {
|
|
12
13
|
this._deviceOrientationInput = new FreeCameraDeviceOrientationInput();
|
|
14
|
+
if (smoothFactor) {
|
|
15
|
+
this._deviceOrientationInput.smoothFactor = smoothFactor;
|
|
16
|
+
}
|
|
13
17
|
this.add(this._deviceOrientationInput);
|
|
14
18
|
}
|
|
15
19
|
return this;
|
|
@@ -30,8 +34,10 @@ export class FreeCameraDeviceOrientationInput {
|
|
|
30
34
|
this._alpha = 0;
|
|
31
35
|
this._beta = 0;
|
|
32
36
|
this._gamma = 0;
|
|
37
|
+
/** alpha+beta+gamma smoothing. 0: no smoothing, 1: new data ignored, 0.9 recommended for smoothing */
|
|
38
|
+
this.smoothFactor = 0;
|
|
33
39
|
/**
|
|
34
|
-
* @
|
|
40
|
+
* @internal
|
|
35
41
|
*/
|
|
36
42
|
this._onDeviceOrientationChangedObservable = new Observable();
|
|
37
43
|
this._orientationChanged = () => {
|
|
@@ -45,9 +51,16 @@ export class FreeCameraDeviceOrientationInput {
|
|
|
45
51
|
this._screenQuaternion.copyFromFloats(0, Math.sin(this._screenOrientationAngle), 0, Math.cos(this._screenOrientationAngle));
|
|
46
52
|
};
|
|
47
53
|
this._deviceOrientation = (evt) => {
|
|
48
|
-
this.
|
|
49
|
-
|
|
50
|
-
|
|
54
|
+
if (this.smoothFactor) {
|
|
55
|
+
this._alpha = evt.alpha !== null ? Tools.SmoothAngleChange(this._alpha, evt.alpha, this.smoothFactor) : 0;
|
|
56
|
+
this._beta = evt.beta !== null ? Tools.SmoothAngleChange(this._beta, evt.beta, this.smoothFactor) : 0;
|
|
57
|
+
this._gamma = evt.gamma !== null ? Tools.SmoothAngleChange(this._gamma, evt.gamma, this.smoothFactor) : 0;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
this._alpha = evt.alpha !== null ? evt.alpha : 0;
|
|
61
|
+
this._beta = evt.beta !== null ? evt.beta : 0;
|
|
62
|
+
this._gamma = evt.gamma !== null ? evt.gamma : 0;
|
|
63
|
+
}
|
|
51
64
|
if (evt.alpha !== null) {
|
|
52
65
|
this._onDeviceOrientationChangedObservable.notifyObservers();
|
|
53
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"freeCameraDeviceOrientationInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/freeCameraDeviceOrientationInput.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../types\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FreeCamera } from \"../../Cameras/freeCamera\";\r\nimport { Quaternion } from \"../../Maths/math.vector\";\r\nimport { Tools } from \"../../Misc/tools\";\r\nimport { FreeCameraInputsManager } from \"../../Cameras/freeCameraInputsManager\";\r\nimport { Observable } from \"../../Misc/observable\";\r\n\r\n// Module augmentation to abstract orientation inputs from camera.\r\ndeclare module \"../../Cameras/freeCameraInputsManager\" {\r\n export interface FreeCameraInputsManager {\r\n /**\r\n * @hidden\r\n */\r\n _deviceOrientationInput: Nullable<FreeCameraDeviceOrientationInput>;\r\n /**\r\n * Add orientation input support to the input manager.\r\n * @returns the current input manager\r\n */\r\n addDeviceOrientation(): FreeCameraInputsManager;\r\n }\r\n}\r\n\r\n/**\r\n * Add orientation input support to the input manager.\r\n * @returns the current input manager\r\n */\r\nFreeCameraInputsManager.prototype.addDeviceOrientation = function (): FreeCameraInputsManager {\r\n if (!this._deviceOrientationInput) {\r\n this._deviceOrientationInput = new FreeCameraDeviceOrientationInput();\r\n this.add(this._deviceOrientationInput);\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Takes information about the orientation of the device as reported by the deviceorientation event to orient the camera.\r\n * Screen rotation is taken into account.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FreeCameraDeviceOrientationInput implements ICameraInput<FreeCamera> {\r\n private _camera: FreeCamera;\r\n\r\n private _screenOrientationAngle: number = 0;\r\n\r\n private _constantTranform: Quaternion;\r\n private _screenQuaternion: Quaternion = new Quaternion();\r\n\r\n private _alpha: number = 0;\r\n private _beta: number = 0;\r\n private _gamma: number = 0;\r\n\r\n /**\r\n * Can be used to detect if a device orientation sensor is available on a device\r\n * @param timeout amount of time in milliseconds to wait for a response from the sensor (default: infinite)\r\n * @returns a promise that will resolve on orientation change\r\n */\r\n public static WaitForOrientationChangeAsync(timeout?: number): Promise<void> {\r\n return new Promise((res, rej) => {\r\n let gotValue = false;\r\n const eventHandler = () => {\r\n window.removeEventListener(\"deviceorientation\", eventHandler);\r\n gotValue = true;\r\n res();\r\n };\r\n\r\n // If timeout is populated reject the promise\r\n if (timeout) {\r\n setTimeout(() => {\r\n if (!gotValue) {\r\n window.removeEventListener(\"deviceorientation\", eventHandler);\r\n rej(\"WaitForOrientationChangeAsync timed out\");\r\n }\r\n }, timeout);\r\n }\r\n\r\n if (typeof DeviceOrientationEvent !== \"undefined\" && typeof (<any>DeviceOrientationEvent).requestPermission === \"function\") {\r\n (<any>DeviceOrientationEvent)\r\n .requestPermission()\r\n .then((response: string) => {\r\n if (response == \"granted\") {\r\n window.addEventListener(\"deviceorientation\", eventHandler);\r\n } else {\r\n Tools.Warn(\"Permission not granted.\");\r\n }\r\n })\r\n .catch((error: any) => {\r\n Tools.Error(error);\r\n });\r\n } else {\r\n window.addEventListener(\"deviceorientation\", eventHandler);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * @hidden\r\n */\r\n public _onDeviceOrientationChangedObservable = new Observable<void>();\r\n /**\r\n * Instantiates a new input\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\n constructor() {\r\n this._constantTranform = new Quaternion(-Math.sqrt(0.5), 0, 0, Math.sqrt(0.5));\r\n this._orientationChanged();\r\n }\r\n\r\n /**\r\n * Define the camera controlled by the input.\r\n */\r\n public get camera(): FreeCamera {\r\n return this._camera;\r\n }\r\n\r\n public set camera(camera: FreeCamera) {\r\n this._camera = camera;\r\n if (this._camera != null && !this._camera.rotationQuaternion) {\r\n this._camera.rotationQuaternion = new Quaternion();\r\n }\r\n if (this._camera) {\r\n this._camera.onDisposeObservable.add(() => {\r\n this._onDeviceOrientationChangedObservable.clear();\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n */\r\n public attachControl(): void {\r\n const hostWindow = this.camera.getScene().getEngine().getHostWindow();\r\n\r\n if (hostWindow) {\r\n const eventHandler = () => {\r\n hostWindow!.addEventListener(\"orientationchange\", this._orientationChanged);\r\n hostWindow!.addEventListener(\"deviceorientation\", this._deviceOrientation);\r\n //In certain cases, the attach control is called AFTER orientation was changed,\r\n //So this is needed.\r\n this._orientationChanged();\r\n };\r\n if (typeof DeviceOrientationEvent !== \"undefined\" && typeof (<any>DeviceOrientationEvent).requestPermission === \"function\") {\r\n (<any>DeviceOrientationEvent)\r\n .requestPermission()\r\n .then((response: string) => {\r\n if (response === \"granted\") {\r\n eventHandler();\r\n } else {\r\n Tools.Warn(\"Permission not granted.\");\r\n }\r\n })\r\n .catch((error: any) => {\r\n Tools.Error(error);\r\n });\r\n } else {\r\n eventHandler();\r\n }\r\n }\r\n }\r\n\r\n private _orientationChanged = () => {\r\n this._screenOrientationAngle =\r\n <any>window.orientation !== undefined\r\n ? +(<any>window.orientation)\r\n : (<any>window.screen).orientation && (<any>window.screen).orientation[\"angle\"]\r\n ? (<any>window.screen).orientation.angle\r\n : 0;\r\n this._screenOrientationAngle = -Tools.ToRadians(this._screenOrientationAngle / 2);\r\n this._screenQuaternion.copyFromFloats(0, Math.sin(this._screenOrientationAngle), 0, Math.cos(this._screenOrientationAngle));\r\n };\r\n\r\n private _deviceOrientation = (evt: DeviceOrientationEvent) => {\r\n this._alpha = evt.alpha !== null ? evt.alpha : 0;\r\n this._beta = evt.beta !== null ? evt.beta : 0;\r\n this._gamma = evt.gamma !== null ? evt.gamma : 0;\r\n if (evt.alpha !== null) {\r\n this._onDeviceOrientationChangedObservable.notifyObservers();\r\n }\r\n };\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n window.removeEventListener(\"orientationchange\", this._orientationChanged);\r\n window.removeEventListener(\"deviceorientation\", this._deviceOrientation);\r\n this._alpha = 0;\r\n }\r\n\r\n /**\r\n * Update the current camera state depending on the inputs that have been used this frame.\r\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\r\n */\r\n public checkInputs(): void {\r\n //if no device orientation provided, don't update the rotation.\r\n //Only testing against alpha under the assumption thatnorientation will never be so exact when set.\r\n if (!this._alpha) {\r\n return;\r\n }\r\n Quaternion.RotationYawPitchRollToRef(Tools.ToRadians(this._alpha), Tools.ToRadians(this._beta), -Tools.ToRadians(this._gamma), this.camera.rotationQuaternion);\r\n this._camera.rotationQuaternion.multiplyInPlace(this._screenQuaternion);\r\n this._camera.rotationQuaternion.multiplyInPlace(this._constantTranform);\r\n //Mirror on XY Plane\r\n this._camera.rotationQuaternion.z *= -1;\r\n this._camera.rotationQuaternion.w *= -1;\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FreeCameraDeviceOrientationInput\";\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"deviceOrientation\";\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FreeCameraDeviceOrientationInput\"] = FreeCameraDeviceOrientationInput;\r\n"]}
|
|
1
|
+
{"version":3,"file":"freeCameraDeviceOrientationInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/freeCameraDeviceOrientationInput.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"../../types\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FreeCamera } from \"../../Cameras/freeCamera\";\r\nimport { Quaternion } from \"../../Maths/math.vector\";\r\nimport { Tools } from \"../../Misc/tools\";\r\nimport { FreeCameraInputsManager } from \"../../Cameras/freeCameraInputsManager\";\r\nimport { Observable } from \"../../Misc/observable\";\r\n\r\n// Module augmentation to abstract orientation inputs from camera.\r\ndeclare module \"../../Cameras/freeCameraInputsManager\" {\r\n export interface FreeCameraInputsManager {\r\n /**\r\n * @internal\r\n */\r\n _deviceOrientationInput: Nullable<FreeCameraDeviceOrientationInput>;\r\n /**\r\n * Add orientation input support to the input manager.\r\n * @param smoothFactor deviceOrientation smoothing. 0: no smoothing, 1: new data ignored, 0.9 recommended for smoothing\r\n * @returns the current input manager\r\n */\r\n addDeviceOrientation(smoothFactor?: number): FreeCameraInputsManager;\r\n }\r\n}\r\n\r\n/**\r\n * Add orientation input support to the input manager.\r\n * @param smoothFactor deviceOrientation smoothing. 0: no smoothing, 1: new data ignored, 0.9 recommended for smoothing\r\n * @returns the current input manager\r\n */\r\nFreeCameraInputsManager.prototype.addDeviceOrientation = function (smoothFactor?: number): FreeCameraInputsManager {\r\n if (!this._deviceOrientationInput) {\r\n this._deviceOrientationInput = new FreeCameraDeviceOrientationInput();\r\n if (smoothFactor) {\r\n this._deviceOrientationInput.smoothFactor = smoothFactor;\r\n }\r\n this.add(this._deviceOrientationInput);\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Takes information about the orientation of the device as reported by the deviceorientation event to orient the camera.\r\n * Screen rotation is taken into account.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FreeCameraDeviceOrientationInput implements ICameraInput<FreeCamera> {\r\n private _camera: FreeCamera;\r\n\r\n private _screenOrientationAngle: number = 0;\r\n\r\n private _constantTranform: Quaternion;\r\n private _screenQuaternion: Quaternion = new Quaternion();\r\n\r\n private _alpha: number = 0;\r\n private _beta: number = 0;\r\n private _gamma: number = 0;\r\n\r\n /** alpha+beta+gamma smoothing. 0: no smoothing, 1: new data ignored, 0.9 recommended for smoothing */\r\n public smoothFactor: number = 0;\r\n\r\n /**\r\n * Can be used to detect if a device orientation sensor is available on a device\r\n * @param timeout amount of time in milliseconds to wait for a response from the sensor (default: infinite)\r\n * @returns a promise that will resolve on orientation change\r\n */\r\n public static WaitForOrientationChangeAsync(timeout?: number): Promise<void> {\r\n return new Promise((res, rej) => {\r\n let gotValue = false;\r\n const eventHandler = () => {\r\n window.removeEventListener(\"deviceorientation\", eventHandler);\r\n gotValue = true;\r\n res();\r\n };\r\n\r\n // If timeout is populated reject the promise\r\n if (timeout) {\r\n setTimeout(() => {\r\n if (!gotValue) {\r\n window.removeEventListener(\"deviceorientation\", eventHandler);\r\n rej(\"WaitForOrientationChangeAsync timed out\");\r\n }\r\n }, timeout);\r\n }\r\n\r\n if (typeof DeviceOrientationEvent !== \"undefined\" && typeof (<any>DeviceOrientationEvent).requestPermission === \"function\") {\r\n (<any>DeviceOrientationEvent)\r\n .requestPermission()\r\n .then((response: string) => {\r\n if (response == \"granted\") {\r\n window.addEventListener(\"deviceorientation\", eventHandler);\r\n } else {\r\n Tools.Warn(\"Permission not granted.\");\r\n }\r\n })\r\n .catch((error: any) => {\r\n Tools.Error(error);\r\n });\r\n } else {\r\n window.addEventListener(\"deviceorientation\", eventHandler);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * @internal\r\n */\r\n public _onDeviceOrientationChangedObservable = new Observable<void>();\r\n /**\r\n * Instantiates a new input\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\n constructor() {\r\n this._constantTranform = new Quaternion(-Math.sqrt(0.5), 0, 0, Math.sqrt(0.5));\r\n this._orientationChanged();\r\n }\r\n\r\n /**\r\n * Define the camera controlled by the input.\r\n */\r\n public get camera(): FreeCamera {\r\n return this._camera;\r\n }\r\n\r\n public set camera(camera: FreeCamera) {\r\n this._camera = camera;\r\n if (this._camera != null && !this._camera.rotationQuaternion) {\r\n this._camera.rotationQuaternion = new Quaternion();\r\n }\r\n if (this._camera) {\r\n this._camera.onDisposeObservable.add(() => {\r\n this._onDeviceOrientationChangedObservable.clear();\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n */\r\n public attachControl(): void {\r\n const hostWindow = this.camera.getScene().getEngine().getHostWindow();\r\n\r\n if (hostWindow) {\r\n const eventHandler = () => {\r\n hostWindow!.addEventListener(\"orientationchange\", this._orientationChanged);\r\n hostWindow!.addEventListener(\"deviceorientation\", this._deviceOrientation);\r\n //In certain cases, the attach control is called AFTER orientation was changed,\r\n //So this is needed.\r\n this._orientationChanged();\r\n };\r\n if (typeof DeviceOrientationEvent !== \"undefined\" && typeof (<any>DeviceOrientationEvent).requestPermission === \"function\") {\r\n (<any>DeviceOrientationEvent)\r\n .requestPermission()\r\n .then((response: string) => {\r\n if (response === \"granted\") {\r\n eventHandler();\r\n } else {\r\n Tools.Warn(\"Permission not granted.\");\r\n }\r\n })\r\n .catch((error: any) => {\r\n Tools.Error(error);\r\n });\r\n } else {\r\n eventHandler();\r\n }\r\n }\r\n }\r\n\r\n private _orientationChanged = () => {\r\n this._screenOrientationAngle =\r\n <any>window.orientation !== undefined\r\n ? +(<any>window.orientation)\r\n : (<any>window.screen).orientation && (<any>window.screen).orientation[\"angle\"]\r\n ? (<any>window.screen).orientation.angle\r\n : 0;\r\n this._screenOrientationAngle = -Tools.ToRadians(this._screenOrientationAngle / 2);\r\n this._screenQuaternion.copyFromFloats(0, Math.sin(this._screenOrientationAngle), 0, Math.cos(this._screenOrientationAngle));\r\n };\r\n\r\n private _deviceOrientation = (evt: DeviceOrientationEvent) => {\r\n if (this.smoothFactor) {\r\n this._alpha = evt.alpha !== null ? Tools.SmoothAngleChange(this._alpha, evt.alpha, this.smoothFactor) : 0;\r\n this._beta = evt.beta !== null ? Tools.SmoothAngleChange(this._beta, evt.beta, this.smoothFactor) : 0;\r\n this._gamma = evt.gamma !== null ? Tools.SmoothAngleChange(this._gamma, evt.gamma, this.smoothFactor) : 0;\r\n } else {\r\n this._alpha = evt.alpha !== null ? evt.alpha : 0;\r\n this._beta = evt.beta !== null ? evt.beta : 0;\r\n this._gamma = evt.gamma !== null ? evt.gamma : 0;\r\n }\r\n\r\n if (evt.alpha !== null) {\r\n this._onDeviceOrientationChangedObservable.notifyObservers();\r\n }\r\n };\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n window.removeEventListener(\"orientationchange\", this._orientationChanged);\r\n window.removeEventListener(\"deviceorientation\", this._deviceOrientation);\r\n this._alpha = 0;\r\n }\r\n\r\n /**\r\n * Update the current camera state depending on the inputs that have been used this frame.\r\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\r\n */\r\n public checkInputs(): void {\r\n //if no device orientation provided, don't update the rotation.\r\n //Only testing against alpha under the assumption thatnorientation will never be so exact when set.\r\n if (!this._alpha) {\r\n return;\r\n }\r\n Quaternion.RotationYawPitchRollToRef(Tools.ToRadians(this._alpha), Tools.ToRadians(this._beta), -Tools.ToRadians(this._gamma), this.camera.rotationQuaternion);\r\n this._camera.rotationQuaternion.multiplyInPlace(this._screenQuaternion);\r\n this._camera.rotationQuaternion.multiplyInPlace(this._constantTranform);\r\n //Mirror on XY Plane\r\n this._camera.rotationQuaternion.z *= -1;\r\n this._camera.rotationQuaternion.w *= -1;\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FreeCameraDeviceOrientationInput\";\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"deviceOrientation\";\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FreeCameraDeviceOrientationInput\"] = FreeCameraDeviceOrientationInput;\r\n"]}
|
|
@@ -69,7 +69,7 @@ export declare class FreeCameraKeyboardMoveInput implements ICameraInput<FreeCam
|
|
|
69
69
|
* @returns the class name
|
|
70
70
|
*/
|
|
71
71
|
getClassName(): string;
|
|
72
|
-
/** @
|
|
72
|
+
/** @internal */
|
|
73
73
|
_onLostFocus(): void;
|
|
74
74
|
/**
|
|
75
75
|
* Get the friendly name associated with the input class.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"freeCameraKeyboardMoveInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/freeCameraKeyboardMoveInput.ts"],"names":[],"mappings":"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","sourcesContent":["import { serialize } from \"../../Misc/decorators\";\r\nimport type { Observer } from \"../../Misc/observable\";\r\nimport type { Nullable } from \"../../types\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FreeCamera } from \"../../Cameras/freeCamera\";\r\nimport type { KeyboardInfo } from \"../../Events/keyboardEvents\";\r\nimport { KeyboardEventTypes } from \"../../Events/keyboardEvents\";\r\nimport type { Scene } from \"../../scene\";\r\nimport { Vector3 } from \"../../Maths/math.vector\";\r\nimport type { Engine } from \"../../Engines/engine\";\r\nimport { Tools } from \"../../Misc/tools\";\r\n/**\r\n * Manage the keyboard inputs to control the movement of a free camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FreeCameraKeyboardMoveInput implements ICameraInput<FreeCamera> {\r\n /**\r\n * Defines the camera the input is attached to.\r\n */\r\n public camera: FreeCamera;\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the forward move of the camera.\r\n */\r\n @serialize()\r\n public keysUp = [38];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the upward move of the camera.\r\n */\r\n @serialize()\r\n public keysUpward = [33];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the backward move of the camera.\r\n */\r\n @serialize()\r\n public keysDown = [40];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the downward move of the camera.\r\n */\r\n @serialize()\r\n public keysDownward = [34];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the left strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysLeft = [37];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the right strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysRight = [39];\r\n\r\n /**\r\n * Defines the pointer angular sensibility along the X and Y axis or how fast is the camera rotating.\r\n */\r\n @serialize()\r\n public rotationSpeed = 0.5;\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the left rotation move of the camera.\r\n */\r\n @serialize()\r\n public keysRotateLeft: number[] = [];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the right rotation move of the camera.\r\n */\r\n @serialize()\r\n public keysRotateRight: number[] = [];\r\n\r\n private _keys = new Array<number>();\r\n private _onCanvasBlurObserver: Nullable<Observer<Engine>>;\r\n private _onKeyboardObserver: Nullable<Observer<KeyboardInfo>>;\r\n private _engine: Engine;\r\n private _scene: Scene;\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\r\n */\r\n public attachControl(noPreventDefault?: boolean): void {\r\n // eslint-disable-next-line prefer-rest-params\r\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\r\n if (this._onCanvasBlurObserver) {\r\n return;\r\n }\r\n\r\n this._scene = this.camera.getScene();\r\n this._engine = this._scene.getEngine();\r\n\r\n this._onCanvasBlurObserver = this._engine.onCanvasBlurObservable.add(() => {\r\n this._keys.length = 0;\r\n });\r\n\r\n this._onKeyboardObserver = this._scene.onKeyboardObservable.add((info) => {\r\n const evt = info.event;\r\n if (!evt.metaKey) {\r\n if (info.type === KeyboardEventTypes.KEYDOWN) {\r\n if (\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUpward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDownward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index === -1) {\r\n this._keys.push(evt.keyCode);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n } else {\r\n if (\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUpward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDownward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index >= 0) {\r\n this._keys.splice(index, 1);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n if (this._scene) {\r\n if (this._onKeyboardObserver) {\r\n this._scene.onKeyboardObservable.remove(this._onKeyboardObserver);\r\n }\r\n\r\n if (this._onCanvasBlurObserver) {\r\n this._engine.onCanvasBlurObservable.remove(this._onCanvasBlurObserver);\r\n }\r\n this._onKeyboardObserver = null;\r\n this._onCanvasBlurObserver = null;\r\n }\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Update the current camera state depending on the inputs that have been used this frame.\r\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\r\n */\r\n public checkInputs(): void {\r\n if (this._onKeyboardObserver) {\r\n const camera = this.camera;\r\n // Keyboard\r\n for (let index = 0; index < this._keys.length; index++) {\r\n const keyCode = this._keys[index];\r\n const speed = camera._computeLocalCameraSpeed();\r\n\r\n if (this.keysLeft.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(-speed, 0, 0);\r\n } else if (this.keysUp.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, speed);\r\n } else if (this.keysRight.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(speed, 0, 0);\r\n } else if (this.keysDown.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, -speed);\r\n } else if (this.keysUpward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, speed, 0);\r\n } else if (this.keysDownward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, -speed, 0);\r\n } else if (this.keysRotateLeft.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, 0);\r\n camera.cameraRotation.y -= this._getLocalRotation();\r\n } else if (this.keysRotateRight.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, 0);\r\n camera.cameraRotation.y += this._getLocalRotation();\r\n }\r\n\r\n if (camera.getScene().useRightHandedSystem) {\r\n camera._localDirection.z *= -1;\r\n }\r\n\r\n camera.getViewMatrix().invertToRef(camera._cameraTransformMatrix);\r\n Vector3.TransformNormalToRef(camera._localDirection, camera._cameraTransformMatrix, camera._transformedDirection);\r\n camera.cameraDirection.addInPlace(camera._transformedDirection);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FreeCameraKeyboardMoveInput\";\r\n }\r\n\r\n /** @hidden */\r\n public _onLostFocus(): void {\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"keyboard\";\r\n }\r\n\r\n private _getLocalRotation(): number {\r\n let rotation = (this.rotationSpeed * this._engine.getDeltaTime()) / 1000;\r\n if (this.camera.getScene().useRightHandedSystem) {\r\n rotation *= -1;\r\n }\r\n if (this.camera.parent && this.camera.parent._getWorldMatrixDeterminant() < 0) {\r\n rotation *= -1;\r\n }\r\n return rotation;\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FreeCameraKeyboardMoveInput\"] = FreeCameraKeyboardMoveInput;\r\n"]}
|
|
1
|
+
{"version":3,"file":"freeCameraKeyboardMoveInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/freeCameraKeyboardMoveInput.ts"],"names":[],"mappings":"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","sourcesContent":["import { serialize } from \"../../Misc/decorators\";\r\nimport type { Observer } from \"../../Misc/observable\";\r\nimport type { Nullable } from \"../../types\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FreeCamera } from \"../../Cameras/freeCamera\";\r\nimport type { KeyboardInfo } from \"../../Events/keyboardEvents\";\r\nimport { KeyboardEventTypes } from \"../../Events/keyboardEvents\";\r\nimport type { Scene } from \"../../scene\";\r\nimport { Vector3 } from \"../../Maths/math.vector\";\r\nimport type { Engine } from \"../../Engines/engine\";\r\nimport { Tools } from \"../../Misc/tools\";\r\n/**\r\n * Manage the keyboard inputs to control the movement of a free camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FreeCameraKeyboardMoveInput implements ICameraInput<FreeCamera> {\r\n /**\r\n * Defines the camera the input is attached to.\r\n */\r\n public camera: FreeCamera;\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the forward move of the camera.\r\n */\r\n @serialize()\r\n public keysUp = [38];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the upward move of the camera.\r\n */\r\n @serialize()\r\n public keysUpward = [33];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the backward move of the camera.\r\n */\r\n @serialize()\r\n public keysDown = [40];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the downward move of the camera.\r\n */\r\n @serialize()\r\n public keysDownward = [34];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the left strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysLeft = [37];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the right strafe move of the camera.\r\n */\r\n @serialize()\r\n public keysRight = [39];\r\n\r\n /**\r\n * Defines the pointer angular sensibility along the X and Y axis or how fast is the camera rotating.\r\n */\r\n @serialize()\r\n public rotationSpeed = 0.5;\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the left rotation move of the camera.\r\n */\r\n @serialize()\r\n public keysRotateLeft: number[] = [];\r\n\r\n /**\r\n * Gets or Set the list of keyboard keys used to control the right rotation move of the camera.\r\n */\r\n @serialize()\r\n public keysRotateRight: number[] = [];\r\n\r\n private _keys = new Array<number>();\r\n private _onCanvasBlurObserver: Nullable<Observer<Engine>>;\r\n private _onKeyboardObserver: Nullable<Observer<KeyboardInfo>>;\r\n private _engine: Engine;\r\n private _scene: Scene;\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\r\n */\r\n public attachControl(noPreventDefault?: boolean): void {\r\n // eslint-disable-next-line prefer-rest-params\r\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\r\n if (this._onCanvasBlurObserver) {\r\n return;\r\n }\r\n\r\n this._scene = this.camera.getScene();\r\n this._engine = this._scene.getEngine();\r\n\r\n this._onCanvasBlurObserver = this._engine.onCanvasBlurObservable.add(() => {\r\n this._keys.length = 0;\r\n });\r\n\r\n this._onKeyboardObserver = this._scene.onKeyboardObservable.add((info) => {\r\n const evt = info.event;\r\n if (!evt.metaKey) {\r\n if (info.type === KeyboardEventTypes.KEYDOWN) {\r\n if (\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUpward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDownward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index === -1) {\r\n this._keys.push(evt.keyCode);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n } else {\r\n if (\r\n this.keysUp.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDown.indexOf(evt.keyCode) !== -1 ||\r\n this.keysLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRight.indexOf(evt.keyCode) !== -1 ||\r\n this.keysUpward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysDownward.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateLeft.indexOf(evt.keyCode) !== -1 ||\r\n this.keysRotateRight.indexOf(evt.keyCode) !== -1\r\n ) {\r\n const index = this._keys.indexOf(evt.keyCode);\r\n\r\n if (index >= 0) {\r\n this._keys.splice(index, 1);\r\n }\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n if (this._scene) {\r\n if (this._onKeyboardObserver) {\r\n this._scene.onKeyboardObservable.remove(this._onKeyboardObserver);\r\n }\r\n\r\n if (this._onCanvasBlurObserver) {\r\n this._engine.onCanvasBlurObservable.remove(this._onCanvasBlurObserver);\r\n }\r\n this._onKeyboardObserver = null;\r\n this._onCanvasBlurObserver = null;\r\n }\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Update the current camera state depending on the inputs that have been used this frame.\r\n * This is a dynamically created lambda to avoid the performance penalty of looping for inputs in the render loop.\r\n */\r\n public checkInputs(): void {\r\n if (this._onKeyboardObserver) {\r\n const camera = this.camera;\r\n // Keyboard\r\n for (let index = 0; index < this._keys.length; index++) {\r\n const keyCode = this._keys[index];\r\n const speed = camera._computeLocalCameraSpeed();\r\n\r\n if (this.keysLeft.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(-speed, 0, 0);\r\n } else if (this.keysUp.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, speed);\r\n } else if (this.keysRight.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(speed, 0, 0);\r\n } else if (this.keysDown.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, -speed);\r\n } else if (this.keysUpward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, speed, 0);\r\n } else if (this.keysDownward.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, -speed, 0);\r\n } else if (this.keysRotateLeft.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, 0);\r\n camera.cameraRotation.y -= this._getLocalRotation();\r\n } else if (this.keysRotateRight.indexOf(keyCode) !== -1) {\r\n camera._localDirection.copyFromFloats(0, 0, 0);\r\n camera.cameraRotation.y += this._getLocalRotation();\r\n }\r\n\r\n if (camera.getScene().useRightHandedSystem) {\r\n camera._localDirection.z *= -1;\r\n }\r\n\r\n camera.getViewMatrix().invertToRef(camera._cameraTransformMatrix);\r\n Vector3.TransformNormalToRef(camera._localDirection, camera._cameraTransformMatrix, camera._transformedDirection);\r\n camera.cameraDirection.addInPlace(camera._transformedDirection);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FreeCameraKeyboardMoveInput\";\r\n }\r\n\r\n /** @internal */\r\n public _onLostFocus(): void {\r\n this._keys.length = 0;\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"keyboard\";\r\n }\r\n\r\n private _getLocalRotation(): number {\r\n let rotation = (this.rotationSpeed * this._engine.getDeltaTime()) / 1000;\r\n if (this.camera.getScene().useRightHandedSystem) {\r\n rotation *= -1;\r\n }\r\n if (this.camera.parent && this.camera.parent._getWorldMatrixDeterminant() < 0) {\r\n rotation *= -1;\r\n }\r\n return rotation;\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FreeCameraKeyboardMoveInput\"] = FreeCameraKeyboardMoveInput;\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"freeCameraMouseInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/freeCameraMouseInput.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Observer, EventState } from \"../../Misc/observable\";\r\nimport { Observable } from \"../../Misc/observable\";\r\nimport { serialize } from \"../../Misc/decorators\";\r\nimport type { Nullable } from \"../../types\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FreeCamera } from \"../../Cameras/freeCamera\";\r\nimport type { PointerInfo } from \"../../Events/pointerEvents\";\r\nimport { PointerEventTypes } from \"../../Events/pointerEvents\";\r\nimport { Tools } from \"../../Misc/tools\";\r\nimport type { IMouseEvent, IPointerEvent } from \"../../Events/deviceInputEvents\";\r\n/**\r\n * Manage the mouse inputs to control the movement of a free camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FreeCameraMouseInput implements ICameraInput<FreeCamera> {\r\n /**\r\n * Defines the camera the input is attached to.\r\n */\r\n public camera: FreeCamera;\r\n\r\n /**\r\n * Defines the buttons associated with the input to handle camera move.\r\n */\r\n @serialize()\r\n public buttons = [0, 1, 2];\r\n\r\n /**\r\n * Defines the pointer angular sensibility along the X and Y axis or how fast is the camera rotating.\r\n */\r\n @serialize()\r\n public angularSensibility = 2000.0;\r\n\r\n private _pointerInput: (p: PointerInfo, s: EventState) => void;\r\n private _onMouseMove: Nullable<(e: IMouseEvent) => any>;\r\n private _observer: Nullable<Observer<PointerInfo>>;\r\n private _previousPosition: Nullable<{ x: number; y: number }> = null;\r\n\r\n /**\r\n * Observable for when a pointer move event occurs containing the move offset\r\n */\r\n public onPointerMovedObservable = new Observable<{ offsetX: number; offsetY: number }>();\r\n /**\r\n * @hidden\r\n * If the camera should be rotated automatically based on pointer movement\r\n */\r\n public _allowCameraRotation = true;\r\n\r\n private _currentActiveButton: number = -1;\r\n\r\n private _contextMenuBind: () => void;\r\n\r\n /**\r\n * Manage the mouse inputs to control the movement of a free camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n * @param touchEnabled Defines if touch is enabled or not\r\n */\r\n constructor(\r\n /**\r\n * Define if touch is enabled in the mouse input\r\n */\r\n public touchEnabled = true\r\n ) {}\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\r\n */\r\n public attachControl(noPreventDefault?: boolean): void {\r\n // eslint-disable-next-line prefer-rest-params\r\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\r\n const engine = this.camera.getEngine();\r\n const element = engine.getInputElement();\r\n\r\n if (!this._pointerInput) {\r\n this._pointerInput = (p) => {\r\n const evt = <IPointerEvent>p.event;\r\n const isTouch = evt.pointerType === \"touch\";\r\n\r\n if (engine.isInVRExclusivePointerMode) {\r\n return;\r\n }\r\n\r\n if (!this.touchEnabled && isTouch) {\r\n return;\r\n }\r\n\r\n if (p.type !== PointerEventTypes.POINTERMOVE && this.buttons.indexOf(evt.button) === -1) {\r\n return;\r\n }\r\n\r\n const srcElement = <HTMLElement>evt.target;\r\n\r\n if (p.type === PointerEventTypes.POINTERDOWN && (this._currentActiveButton === -1 || isTouch)) {\r\n try {\r\n srcElement?.setPointerCapture(evt.pointerId);\r\n } catch (e) {\r\n //Nothing to do with the error. Execution will continue.\r\n }\r\n\r\n if (this._currentActiveButton === -1) {\r\n this._currentActiveButton = evt.button;\r\n }\r\n\r\n this._previousPosition = {\r\n x: evt.clientX,\r\n y: evt.clientY,\r\n };\r\n\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n element && element.focus();\r\n }\r\n\r\n // This is required to move while pointer button is down\r\n if (engine.isPointerLock && this._onMouseMove) {\r\n this._onMouseMove(p.event);\r\n }\r\n } else if (p.type === PointerEventTypes.POINTERUP && (this._currentActiveButton === evt.button || isTouch)) {\r\n try {\r\n srcElement?.releasePointerCapture(evt.pointerId);\r\n } catch (e) {\r\n //Nothing to do with the error.\r\n }\r\n this._currentActiveButton = -1;\r\n\r\n this._previousPosition = null;\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n } else if (p.type === PointerEventTypes.POINTERMOVE) {\r\n if (engine.isPointerLock && this._onMouseMove) {\r\n this._onMouseMove(p.event);\r\n } else if (this._previousPosition) {\r\n let offsetX = evt.clientX - this._previousPosition.x;\r\n const offsetY = evt.clientY - this._previousPosition.y;\r\n if (this.camera.getScene().useRightHandedSystem) {\r\n offsetX *= -1;\r\n }\r\n if (this.camera.parent && this.camera.parent._getWorldMatrixDeterminant() < 0) {\r\n offsetX *= -1;\r\n }\r\n\r\n if (this._allowCameraRotation) {\r\n this.camera.cameraRotation.y += offsetX / this.angularSensibility;\r\n this.camera.cameraRotation.x += offsetY / this.angularSensibility;\r\n }\r\n this.onPointerMovedObservable.notifyObservers({ offsetX: offsetX, offsetY: offsetY });\r\n\r\n this._previousPosition = {\r\n x: evt.clientX,\r\n y: evt.clientY,\r\n };\r\n\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n }\r\n };\r\n }\r\n\r\n this._onMouseMove = (evt) => {\r\n if (!engine.isPointerLock) {\r\n return;\r\n }\r\n\r\n if (engine.isInVRExclusivePointerMode) {\r\n return;\r\n }\r\n\r\n let offsetX = evt.movementX;\r\n if (this.camera.getScene().useRightHandedSystem) {\r\n offsetX *= -1;\r\n }\r\n if (this.camera.parent && this.camera.parent._getWorldMatrixDeterminant() < 0) {\r\n offsetX *= -1;\r\n }\r\n this.camera.cameraRotation.y += offsetX / this.angularSensibility;\r\n\r\n const offsetY = evt.movementY;\r\n this.camera.cameraRotation.x += offsetY / this.angularSensibility;\r\n\r\n this._previousPosition = null;\r\n\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n };\r\n\r\n this._observer = this.camera\r\n .getScene()\r\n .onPointerObservable.add(this._pointerInput, PointerEventTypes.POINTERDOWN | PointerEventTypes.POINTERUP | PointerEventTypes.POINTERMOVE);\r\n\r\n if (element) {\r\n this._contextMenuBind = this.onContextMenu.bind(this);\r\n element.addEventListener(\"contextmenu\", this._contextMenuBind, false); // TODO: We need to figure out how to handle this for Native\r\n }\r\n }\r\n\r\n /**\r\n * Called on JS contextmenu event.\r\n * Override this method to provide functionality.\r\n * @param evt\r\n */\r\n public onContextMenu(evt: PointerEvent): void {\r\n evt.preventDefault();\r\n }\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n if (this._observer) {\r\n this.camera.getScene().onPointerObservable.remove(this._observer);\r\n\r\n if (this._contextMenuBind) {\r\n const engine = this.camera.getEngine();\r\n const element = engine.getInputElement();\r\n element && element.removeEventListener(\"contextmenu\", this._contextMenuBind);\r\n }\r\n\r\n if (this.onPointerMovedObservable) {\r\n this.onPointerMovedObservable.clear();\r\n }\r\n\r\n this._observer = null;\r\n this._onMouseMove = null;\r\n this._previousPosition = null;\r\n }\r\n\r\n this._currentActiveButton = -1;\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FreeCameraMouseInput\";\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"mouse\";\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FreeCameraMouseInput\"] = FreeCameraMouseInput;\r\n"]}
|
|
1
|
+
{"version":3,"file":"freeCameraMouseInput.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/Inputs/freeCameraMouseInput.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Observer, EventState } from \"../../Misc/observable\";\r\nimport { Observable } from \"../../Misc/observable\";\r\nimport { serialize } from \"../../Misc/decorators\";\r\nimport type { Nullable } from \"../../types\";\r\nimport type { ICameraInput } from \"../../Cameras/cameraInputsManager\";\r\nimport { CameraInputTypes } from \"../../Cameras/cameraInputsManager\";\r\nimport type { FreeCamera } from \"../../Cameras/freeCamera\";\r\nimport type { PointerInfo } from \"../../Events/pointerEvents\";\r\nimport { PointerEventTypes } from \"../../Events/pointerEvents\";\r\nimport { Tools } from \"../../Misc/tools\";\r\nimport type { IMouseEvent, IPointerEvent } from \"../../Events/deviceInputEvents\";\r\n/**\r\n * Manage the mouse inputs to control the movement of a free camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n */\r\nexport class FreeCameraMouseInput implements ICameraInput<FreeCamera> {\r\n /**\r\n * Defines the camera the input is attached to.\r\n */\r\n public camera: FreeCamera;\r\n\r\n /**\r\n * Defines the buttons associated with the input to handle camera move.\r\n */\r\n @serialize()\r\n public buttons = [0, 1, 2];\r\n\r\n /**\r\n * Defines the pointer angular sensibility along the X and Y axis or how fast is the camera rotating.\r\n */\r\n @serialize()\r\n public angularSensibility = 2000.0;\r\n\r\n private _pointerInput: (p: PointerInfo, s: EventState) => void;\r\n private _onMouseMove: Nullable<(e: IMouseEvent) => any>;\r\n private _observer: Nullable<Observer<PointerInfo>>;\r\n private _previousPosition: Nullable<{ x: number; y: number }> = null;\r\n\r\n /**\r\n * Observable for when a pointer move event occurs containing the move offset\r\n */\r\n public onPointerMovedObservable = new Observable<{ offsetX: number; offsetY: number }>();\r\n /**\r\n * @internal\r\n * If the camera should be rotated automatically based on pointer movement\r\n */\r\n public _allowCameraRotation = true;\r\n\r\n private _currentActiveButton: number = -1;\r\n\r\n private _contextMenuBind: () => void;\r\n\r\n /**\r\n * Manage the mouse inputs to control the movement of a free camera.\r\n * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs\r\n * @param touchEnabled Defines if touch is enabled or not\r\n */\r\n constructor(\r\n /**\r\n * Define if touch is enabled in the mouse input\r\n */\r\n public touchEnabled = true\r\n ) {}\r\n\r\n /**\r\n * Attach the input controls to a specific dom element to get the input from.\r\n * @param noPreventDefault Defines whether event caught by the controls should call preventdefault() (https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault)\r\n */\r\n public attachControl(noPreventDefault?: boolean): void {\r\n // eslint-disable-next-line prefer-rest-params\r\n noPreventDefault = Tools.BackCompatCameraNoPreventDefault(arguments);\r\n const engine = this.camera.getEngine();\r\n const element = engine.getInputElement();\r\n\r\n if (!this._pointerInput) {\r\n this._pointerInput = (p) => {\r\n const evt = <IPointerEvent>p.event;\r\n const isTouch = evt.pointerType === \"touch\";\r\n\r\n if (engine.isInVRExclusivePointerMode) {\r\n return;\r\n }\r\n\r\n if (!this.touchEnabled && isTouch) {\r\n return;\r\n }\r\n\r\n if (p.type !== PointerEventTypes.POINTERMOVE && this.buttons.indexOf(evt.button) === -1) {\r\n return;\r\n }\r\n\r\n const srcElement = <HTMLElement>evt.target;\r\n\r\n if (p.type === PointerEventTypes.POINTERDOWN && (this._currentActiveButton === -1 || isTouch)) {\r\n try {\r\n srcElement?.setPointerCapture(evt.pointerId);\r\n } catch (e) {\r\n //Nothing to do with the error. Execution will continue.\r\n }\r\n\r\n if (this._currentActiveButton === -1) {\r\n this._currentActiveButton = evt.button;\r\n }\r\n\r\n this._previousPosition = {\r\n x: evt.clientX,\r\n y: evt.clientY,\r\n };\r\n\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n element && element.focus();\r\n }\r\n\r\n // This is required to move while pointer button is down\r\n if (engine.isPointerLock && this._onMouseMove) {\r\n this._onMouseMove(p.event);\r\n }\r\n } else if (p.type === PointerEventTypes.POINTERUP && (this._currentActiveButton === evt.button || isTouch)) {\r\n try {\r\n srcElement?.releasePointerCapture(evt.pointerId);\r\n } catch (e) {\r\n //Nothing to do with the error.\r\n }\r\n this._currentActiveButton = -1;\r\n\r\n this._previousPosition = null;\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n } else if (p.type === PointerEventTypes.POINTERMOVE) {\r\n if (engine.isPointerLock && this._onMouseMove) {\r\n this._onMouseMove(p.event);\r\n } else if (this._previousPosition) {\r\n let offsetX = evt.clientX - this._previousPosition.x;\r\n const offsetY = evt.clientY - this._previousPosition.y;\r\n if (this.camera.getScene().useRightHandedSystem) {\r\n offsetX *= -1;\r\n }\r\n if (this.camera.parent && this.camera.parent._getWorldMatrixDeterminant() < 0) {\r\n offsetX *= -1;\r\n }\r\n\r\n if (this._allowCameraRotation) {\r\n this.camera.cameraRotation.y += offsetX / this.angularSensibility;\r\n this.camera.cameraRotation.x += offsetY / this.angularSensibility;\r\n }\r\n this.onPointerMovedObservable.notifyObservers({ offsetX: offsetX, offsetY: offsetY });\r\n\r\n this._previousPosition = {\r\n x: evt.clientX,\r\n y: evt.clientY,\r\n };\r\n\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n }\r\n }\r\n };\r\n }\r\n\r\n this._onMouseMove = (evt) => {\r\n if (!engine.isPointerLock) {\r\n return;\r\n }\r\n\r\n if (engine.isInVRExclusivePointerMode) {\r\n return;\r\n }\r\n\r\n let offsetX = evt.movementX;\r\n if (this.camera.getScene().useRightHandedSystem) {\r\n offsetX *= -1;\r\n }\r\n if (this.camera.parent && this.camera.parent._getWorldMatrixDeterminant() < 0) {\r\n offsetX *= -1;\r\n }\r\n this.camera.cameraRotation.y += offsetX / this.angularSensibility;\r\n\r\n const offsetY = evt.movementY;\r\n this.camera.cameraRotation.x += offsetY / this.angularSensibility;\r\n\r\n this._previousPosition = null;\r\n\r\n if (!noPreventDefault) {\r\n evt.preventDefault();\r\n }\r\n };\r\n\r\n this._observer = this.camera\r\n .getScene()\r\n .onPointerObservable.add(this._pointerInput, PointerEventTypes.POINTERDOWN | PointerEventTypes.POINTERUP | PointerEventTypes.POINTERMOVE);\r\n\r\n if (element) {\r\n this._contextMenuBind = this.onContextMenu.bind(this);\r\n element.addEventListener(\"contextmenu\", this._contextMenuBind, false); // TODO: We need to figure out how to handle this for Native\r\n }\r\n }\r\n\r\n /**\r\n * Called on JS contextmenu event.\r\n * Override this method to provide functionality.\r\n * @param evt\r\n */\r\n public onContextMenu(evt: PointerEvent): void {\r\n evt.preventDefault();\r\n }\r\n\r\n /**\r\n * Detach the current controls from the specified dom element.\r\n */\r\n public detachControl(): void {\r\n if (this._observer) {\r\n this.camera.getScene().onPointerObservable.remove(this._observer);\r\n\r\n if (this._contextMenuBind) {\r\n const engine = this.camera.getEngine();\r\n const element = engine.getInputElement();\r\n element && element.removeEventListener(\"contextmenu\", this._contextMenuBind);\r\n }\r\n\r\n if (this.onPointerMovedObservable) {\r\n this.onPointerMovedObservable.clear();\r\n }\r\n\r\n this._observer = null;\r\n this._onMouseMove = null;\r\n this._previousPosition = null;\r\n }\r\n\r\n this._currentActiveButton = -1;\r\n }\r\n\r\n /**\r\n * Gets the class name of the current input.\r\n * @returns the class name\r\n */\r\n public getClassName(): string {\r\n return \"FreeCameraMouseInput\";\r\n }\r\n\r\n /**\r\n * Get the friendly name associated with the input class.\r\n * @returns the input friendly name\r\n */\r\n public getSimpleName(): string {\r\n return \"mouse\";\r\n }\r\n}\r\n\r\n(<any>CameraInputTypes)[\"FreeCameraMouseInput\"] = FreeCameraMouseInput;\r\n"]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { PassPostProcess } from "../../PostProcesses/passPostProcess.js";
|
|
2
2
|
import { AnaglyphPostProcess } from "../../PostProcesses/anaglyphPostProcess.js";
|
|
3
3
|
/**
|
|
4
|
-
* @
|
|
5
|
-
* @hidden
|
|
4
|
+
* @internal
|
|
6
5
|
*/
|
|
7
6
|
export function setStereoscopicAnaglyphRigMode(camera) {
|
|
8
7
|
camera._rigCameras[0]._rigPostProcess = new PassPostProcess(camera.name + "_passthru", 1.0, camera._rigCameras[0]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stereoscopicAnaglyphRigMode.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/RigModes/stereoscopicAnaglyphRigMode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAE9E
|
|
1
|
+
{"version":3,"file":"stereoscopicAnaglyphRigMode.js","sourceRoot":"","sources":["../../../../../../lts/core/generated/Cameras/RigModes/stereoscopicAnaglyphRigMode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAE9E;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAAC,MAAc;IACzD,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,GAAG,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACnH,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,IAAI,GAAG,WAAW,EAAE,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;AACxH,CAAC","sourcesContent":["import type { Camera } from \"../camera\";\r\nimport { PassPostProcess } from \"../../PostProcesses/passPostProcess\";\r\nimport { AnaglyphPostProcess } from \"../../PostProcesses/anaglyphPostProcess\";\r\n\r\n/**\r\n * @internal\r\n */\r\nexport function setStereoscopicAnaglyphRigMode(camera: Camera) {\r\n camera._rigCameras[0]._rigPostProcess = new PassPostProcess(camera.name + \"_passthru\", 1.0, camera._rigCameras[0]);\r\n camera._rigCameras[1]._rigPostProcess = new AnaglyphPostProcess(camera.name + \"_anaglyph\", 1.0, camera._rigCameras);\r\n}\r\n"]}
|