@babylonjs/core 5.45.2 → 5.47.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/actionManager.js +6 -1
- package/Actions/actionManager.js.map +1 -1
- package/Actions/condition.js +23 -23
- package/Actions/condition.js.map +1 -1
- package/Animations/animatable.js +48 -48
- package/Animations/animatable.js.map +1 -1
- package/Animations/animation.js +53 -53
- package/Animations/animation.js.map +1 -1
- package/Animations/animationGroup.js +53 -53
- package/Animations/animationGroup.js.map +1 -1
- package/Animations/runtimeAnimation.js +36 -36
- package/Animations/runtimeAnimation.js.map +1 -1
- package/Audio/audioEngine.js +14 -14
- package/Audio/audioEngine.js.map +1 -1
- package/Audio/audioSceneComponent.js +14 -14
- package/Audio/audioSceneComponent.js.map +1 -1
- package/Audio/sound.js +47 -47
- package/Audio/sound.js.map +1 -1
- package/Behaviors/Meshes/baseSixDofDragBehavior.d.ts +1 -1
- package/Behaviors/Meshes/fadeInOutBehavior.js +11 -11
- package/Behaviors/Meshes/fadeInOutBehavior.js.map +1 -1
- package/Behaviors/Meshes/pointerDragBehavior.js +34 -34
- package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
- package/Bones/bone.js +15 -15
- package/Bones/bone.js.map +1 -1
- package/Bones/boneIKController.js +9 -9
- package/Bones/boneIKController.js.map +1 -1
- package/Bones/boneLookController.js +50 -50
- package/Bones/boneLookController.js.map +1 -1
- package/Bones/skeleton.js +35 -35
- package/Bones/skeleton.js.map +1 -1
- package/Buffers/buffer.js +14 -14
- package/Buffers/buffer.js.map +1 -1
- package/Buffers/dataBuffer.js +6 -6
- package/Buffers/dataBuffer.js.map +1 -1
- package/Cameras/Inputs/freeCameraDeviceOrientationInput.js +42 -42
- package/Cameras/Inputs/freeCameraDeviceOrientationInput.js.map +1 -1
- package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.js +18 -18
- package/Cameras/Stereoscopic/stereoscopicScreenUniversalCamera.js.map +1 -1
- package/Cameras/VR/vrExperienceHelper.js +178 -178
- package/Cameras/VR/vrExperienceHelper.js.map +1 -1
- package/Cameras/arcRotateCamera.js +176 -176
- package/Cameras/arcRotateCamera.js.map +1 -1
- package/Cameras/camera.js +90 -90
- package/Cameras/camera.js.map +1 -1
- package/Cameras/flyCamera.js +82 -82
- package/Cameras/flyCamera.js.map +1 -1
- package/Cameras/freeCamera.js +54 -54
- package/Cameras/freeCamera.js.map +1 -1
- package/Compute/computeShader.js +12 -12
- package/Compute/computeShader.js.map +1 -1
- package/Culling/ray.d.ts +1 -1
- package/Debug/axesViewer.js +12 -12
- package/Debug/axesViewer.js.map +1 -1
- package/Debug/debugLayer.js +21 -21
- package/Debug/debugLayer.js.map +1 -1
- package/Debug/directionalLightFrustumViewer.js +20 -20
- package/Debug/directionalLightFrustumViewer.js.map +1 -1
- package/Debug/physicsViewer.js +3 -3
- package/Debug/physicsViewer.js.map +1 -1
- package/Debug/rayHelper.js +10 -10
- package/Debug/rayHelper.js.map +1 -1
- package/Debug/skeletonViewer.js +81 -81
- package/Debug/skeletonViewer.js.map +1 -1
- package/DeviceInput/InputDevices/deviceSource.d.ts +1 -1
- package/DeviceInput/InputDevices/deviceSourceManager.js +31 -31
- package/DeviceInput/InputDevices/deviceSourceManager.js.map +1 -1
- package/DeviceInput/InputDevices/deviceTypes.d.ts +1 -1
- package/DeviceInput/eventFactory.d.ts +1 -1
- package/DeviceInput/eventFactory.js +4 -4
- package/DeviceInput/eventFactory.js.map +1 -1
- package/DeviceInput/internalDeviceSourceManager.d.ts +2 -2
- package/DeviceInput/webDeviceInputSystem.js +2 -2
- package/DeviceInput/webDeviceInputSystem.js.map +1 -1
- package/Engines/Extensions/engine.computeShader.d.ts +3 -3
- package/Engines/Extensions/engine.multiRender.js +1 -1
- package/Engines/Extensions/engine.multiRender.js.map +1 -1
- package/Engines/Extensions/engine.query.d.ts +1 -1
- package/Engines/Extensions/engine.renderTarget.d.ts +1 -1
- package/Engines/Extensions/engine.renderTarget.js +1 -1
- package/Engines/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/Native/nativeDataStream.d.ts +1 -1
- package/Engines/Native/nativeHardwareTexture.js +3 -3
- package/Engines/Native/nativeHardwareTexture.js.map +1 -1
- package/Engines/Native/nativeInterfaces.d.ts +5 -5
- package/Engines/Native/nativePipelineContext.js +7 -7
- package/Engines/Native/nativePipelineContext.js.map +1 -1
- package/Engines/Native/nativeRenderTargetWrapper.js +6 -6
- package/Engines/Native/nativeRenderTargetWrapper.js.map +1 -1
- package/Engines/Processors/shaderCodeInliner.js +4 -4
- package/Engines/Processors/shaderCodeInliner.js.map +1 -1
- package/Engines/Processors/shaderProcessingOptions.d.ts +1 -1
- package/Engines/WebGL/webGLHardwareTexture.js +3 -3
- package/Engines/WebGL/webGLHardwareTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuBufferManager.js +3 -3
- package/Engines/WebGPU/webgpuBufferManager.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheBindGroups.js +6 -6
- package/Engines/WebGPU/webgpuCacheBindGroups.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipelineTree.js +5 -5
- package/Engines/WebGPU/webgpuCacheRenderPipelineTree.js.map +1 -1
- package/Engines/WebGPU/webgpuClearQuad.js +11 -11
- package/Engines/WebGPU/webgpuClearQuad.js.map +1 -1
- package/Engines/WebGPU/webgpuComputeContext.js +7 -7
- package/Engines/WebGPU/webgpuComputeContext.js.map +1 -1
- package/Engines/WebGPU/webgpuComputePipelineContext.js +4 -4
- package/Engines/WebGPU/webgpuComputePipelineContext.js.map +1 -1
- package/Engines/WebGPU/webgpuDrawContext.js +7 -7
- package/Engines/WebGPU/webgpuDrawContext.js.map +1 -1
- package/Engines/WebGPU/webgpuHardwareTexture.js +9 -9
- package/Engines/WebGPU/webgpuHardwareTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuMaterialContext.js +5 -5
- package/Engines/WebGPU/webgpuMaterialContext.js.map +1 -1
- package/Engines/WebGPU/webgpuOcclusionQuery.js +10 -10
- package/Engines/WebGPU/webgpuOcclusionQuery.js.map +1 -1
- package/Engines/WebGPU/webgpuPipelineContext.js +6 -6
- package/Engines/WebGPU/webgpuPipelineContext.js.map +1 -1
- package/Engines/WebGPU/webgpuQuerySet.js +3 -3
- package/Engines/WebGPU/webgpuQuerySet.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessingContext.js +3 -3
- package/Engines/WebGPU/webgpuShaderProcessingContext.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.js +3 -3
- package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
- package/Engines/WebGPU/webgpuTimestampQuery.js +3 -3
- package/Engines/WebGPU/webgpuTimestampQuery.js.map +1 -1
- package/Engines/engine.js +134 -134
- package/Engines/engine.js.map +1 -1
- package/Engines/nativeEngine.js +6 -6
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/nullEngine.js +25 -25
- package/Engines/nullEngine.js.map +1 -1
- package/Engines/renderTargetWrapper.js +25 -25
- package/Engines/renderTargetWrapper.js.map +1 -1
- package/Engines/thinEngine.js +243 -243
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.js +132 -132
- package/Engines/webgpuEngine.js.map +1 -1
- package/Events/keyboardEvents.js +10 -10
- package/Events/keyboardEvents.js.map +1 -1
- package/Events/pointerEvents.js +10 -10
- package/Events/pointerEvents.js.map +1 -1
- package/Gamepads/Controllers/poseEnabledController.js +9 -9
- package/Gamepads/Controllers/poseEnabledController.js.map +1 -1
- package/Gamepads/Controllers/webVRController.js +13 -13
- package/Gamepads/Controllers/webVRController.js.map +1 -1
- package/Gamepads/gamepad.js +20 -20
- package/Gamepads/gamepad.js.map +1 -1
- package/Gizmos/axisDragGizmo.js +45 -45
- package/Gizmos/axisDragGizmo.js.map +1 -1
- package/Gizmos/axisScaleGizmo.js +12 -12
- package/Gizmos/axisScaleGizmo.js.map +1 -1
- package/Gizmos/boundingBoxGizmo.js +74 -74
- package/Gizmos/boundingBoxGizmo.js.map +1 -1
- package/Gizmos/gizmo.js +34 -34
- package/Gizmos/gizmo.js.map +1 -1
- package/Gizmos/gizmoManager.js +40 -40
- package/Gizmos/gizmoManager.js.map +1 -1
- package/Gizmos/planeDragGizmo.js +23 -23
- package/Gizmos/planeDragGizmo.js.map +1 -1
- package/Gizmos/planeRotationGizmo.js +12 -12
- package/Gizmos/planeRotationGizmo.js.map +1 -1
- package/Gizmos/positionGizmo.js +40 -40
- package/Gizmos/positionGizmo.js.map +1 -1
- package/Gizmos/rotationGizmo.js +47 -47
- package/Gizmos/rotationGizmo.js.map +1 -1
- package/Gizmos/scaleGizmo.js +41 -41
- package/Gizmos/scaleGizmo.js.map +1 -1
- package/Helpers/environmentHelper.js +18 -18
- package/Helpers/environmentHelper.js.map +1 -1
- package/Helpers/textureDome.js +96 -96
- package/Helpers/textureDome.js.map +1 -1
- package/IAccessibilityTag.d.ts +2 -2
- package/Inputs/scene.inputManager.d.ts +4 -3
- package/Inputs/scene.inputManager.js +12 -11
- package/Inputs/scene.inputManager.js.map +1 -1
- package/Instrumentation/engineInstrumentation.js +21 -21
- package/Instrumentation/engineInstrumentation.js.map +1 -1
- package/Instrumentation/sceneInstrumentation.js +90 -90
- package/Instrumentation/sceneInstrumentation.js.map +1 -1
- package/Layers/effectLayer.js +48 -48
- package/Layers/effectLayer.js.map +1 -1
- package/Layers/glowLayer.js +32 -32
- package/Layers/glowLayer.js.map +1 -1
- package/Layers/highlightLayer.js +26 -26
- package/Layers/highlightLayer.js.map +1 -1
- package/Layers/layer.js +40 -40
- package/Layers/layer.js.map +1 -1
- package/LensFlares/lensFlare.js +15 -15
- package/LensFlares/lensFlare.js.map +1 -1
- package/LensFlares/lensFlareSystem.js +4 -4
- package/LensFlares/lensFlareSystem.js.map +1 -1
- package/Lights/Shadows/cascadedShadowGenerator.js +18 -18
- package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
- package/Lights/Shadows/shadowGenerator.js +115 -115
- package/Lights/Shadows/shadowGenerator.js.map +1 -1
- package/Lights/directionalLight.js +31 -31
- package/Lights/directionalLight.js.map +1 -1
- package/Lights/light.js +72 -72
- package/Lights/light.js.map +1 -1
- package/Lights/pointLight.js +18 -18
- package/Lights/pointLight.js.map +1 -1
- package/Lights/spotLight.js +30 -30
- package/Lights/spotLight.js.map +1 -1
- package/Loading/sceneLoader.d.ts +1 -1
- package/Materials/Background/backgroundMaterial.js +124 -124
- package/Materials/Background/backgroundMaterial.js.map +1 -1
- package/Materials/Node/Blocks/Dual/imageSourceBlock.js +8 -8
- package/Materials/Node/Blocks/Dual/imageSourceBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/lightBlock.js +14 -14
- package/Materials/Node/Blocks/Dual/lightBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js +9 -9
- package/Materials/Node/Blocks/Dual/reflectionTextureBaseBlock.js.map +1 -1
- package/Materials/Node/Blocks/Dual/textureBlock.js +26 -26
- package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
- package/Materials/Node/Blocks/Input/inputBlock.js +34 -34
- package/Materials/Node/Blocks/Input/inputBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +14 -14
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/reflectionBlock.js +16 -16
- package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
- package/Materials/Node/Blocks/customBlock.js +7 -7
- package/Materials/Node/Blocks/customBlock.js.map +1 -1
- package/Materials/Node/Blocks/gradientBlock.js +13 -13
- package/Materials/Node/Blocks/gradientBlock.js.map +1 -1
- package/Materials/Node/Blocks/triPlanarBlock.js +30 -30
- package/Materials/Node/Blocks/triPlanarBlock.js.map +1 -1
- package/Materials/Node/nodeMaterial.d.ts +1 -1
- package/Materials/Node/nodeMaterial.js +60 -60
- package/Materials/Node/nodeMaterial.js.map +1 -1
- package/Materials/Node/nodeMaterialBlock.js +35 -35
- package/Materials/Node/nodeMaterialBlock.js.map +1 -1
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js +50 -50
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js.map +1 -1
- package/Materials/PBR/pbrAnisotropicConfiguration.js +5 -5
- package/Materials/PBR/pbrAnisotropicConfiguration.js.map +1 -1
- package/Materials/PBR/pbrBRDFConfiguration.js +4 -4
- package/Materials/PBR/pbrBRDFConfiguration.js.map +1 -1
- package/Materials/PBR/pbrBaseMaterial.js +53 -55
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Materials/PBR/pbrBaseSimpleMaterial.js +17 -17
- package/Materials/PBR/pbrBaseSimpleMaterial.js.map +1 -1
- package/Materials/PBR/pbrClearCoatConfiguration.js +5 -5
- package/Materials/PBR/pbrClearCoatConfiguration.js.map +1 -1
- package/Materials/PBR/pbrIridescenceConfiguration.js +5 -5
- package/Materials/PBR/pbrIridescenceConfiguration.js.map +1 -1
- package/Materials/PBR/pbrMaterial.js +209 -209
- package/Materials/PBR/pbrMaterial.js.map +1 -1
- package/Materials/PBR/pbrSheenConfiguration.js +5 -5
- package/Materials/PBR/pbrSheenConfiguration.js.map +1 -1
- package/Materials/PBR/pbrSpecularGlossinessMaterial.js +6 -6
- package/Materials/PBR/pbrSpecularGlossinessMaterial.js.map +1 -1
- package/Materials/PBR/pbrSubSurfaceConfiguration.js +51 -51
- package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
- package/Materials/Textures/baseTexture.js +99 -99
- package/Materials/Textures/baseTexture.js.map +1 -1
- package/Materials/Textures/cubeTexture.js +61 -61
- package/Materials/Textures/cubeTexture.js.map +1 -1
- package/Materials/Textures/externalTexture.js +16 -16
- package/Materials/Textures/externalTexture.js.map +1 -1
- package/Materials/Textures/hdrCubeTexture.js +44 -44
- package/Materials/Textures/hdrCubeTexture.js.map +1 -1
- package/Materials/Textures/internalTexture.js +31 -31
- package/Materials/Textures/internalTexture.js.map +1 -1
- package/Materials/Textures/mirrorTexture.js +73 -73
- package/Materials/Textures/mirrorTexture.js.map +1 -1
- package/Materials/Textures/multiRenderTarget.js +47 -47
- package/Materials/Textures/multiRenderTarget.js.map +1 -1
- package/Materials/Textures/rawTexture2DArray.js +6 -6
- package/Materials/Textures/rawTexture2DArray.js.map +1 -1
- package/Materials/Textures/renderTargetTexture.js +142 -142
- package/Materials/Textures/renderTargetTexture.js.map +1 -1
- package/Materials/Textures/texture.d.ts +1 -1
- package/Materials/Textures/texture.js +26 -26
- package/Materials/Textures/texture.js.map +1 -1
- package/Materials/Textures/textureCreationOptions.d.ts +1 -1
- package/Materials/Textures/textureSampler.js +20 -20
- package/Materials/Textures/textureSampler.js.map +1 -1
- package/Materials/Textures/thinRenderTargetTexture.js +6 -6
- package/Materials/Textures/thinRenderTargetTexture.js.map +1 -1
- package/Materials/Textures/thinTexture.js +39 -39
- package/Materials/Textures/thinTexture.js.map +1 -1
- package/Materials/Textures/videoTexture.js +41 -41
- package/Materials/Textures/videoTexture.js.map +1 -1
- package/Materials/drawWrapper.js +6 -6
- package/Materials/drawWrapper.js.map +1 -1
- package/Materials/effect.js +18 -18
- package/Materials/effect.js.map +1 -1
- package/Materials/effectRenderer.js +9 -9
- package/Materials/effectRenderer.js.map +1 -1
- package/Materials/fresnelParameters.d.ts +2 -2
- package/Materials/fresnelParameters.js +13 -13
- package/Materials/fresnelParameters.js.map +1 -1
- package/Materials/material.detailMapConfiguration.js +5 -5
- package/Materials/material.detailMapConfiguration.js.map +1 -1
- package/Materials/material.js +223 -223
- package/Materials/material.js.map +1 -1
- package/Materials/materialPluginBase.js +5 -5
- package/Materials/materialPluginBase.js.map +1 -1
- package/Materials/materialPluginEvent.d.ts +14 -14
- package/Materials/materialPluginManager.d.ts +1 -1
- package/Materials/multiMaterial.js +16 -16
- package/Materials/multiMaterial.js.map +1 -1
- package/Materials/shadowDepthWrapper.js +14 -14
- package/Materials/shadowDepthWrapper.js.map +1 -1
- package/Materials/standardMaterial.js +100 -100
- package/Materials/standardMaterial.js.map +1 -1
- package/Materials/uniformBufferEffectCommonAccessor.js +3 -3
- package/Materials/uniformBufferEffectCommonAccessor.js.map +1 -1
- package/Maths/math.functions.js +2 -0
- package/Maths/math.functions.js.map +1 -1
- package/Maths/math.path.js +11 -11
- package/Maths/math.path.js.map +1 -1
- package/Maths/math.vector.d.ts +27 -7
- package/Maths/math.vector.js +75 -48
- package/Maths/math.vector.js.map +1 -1
- package/Meshes/Builders/goldbergBuilder.d.ts +2 -2
- package/Meshes/Compression/dracoCompression.js +23 -23
- package/Meshes/Compression/dracoCompression.js.map +1 -1
- package/Meshes/Compression/meshoptCompression.js +9 -9
- package/Meshes/Compression/meshoptCompression.js.map +1 -1
- package/Meshes/abstractMesh.js +179 -179
- package/Meshes/abstractMesh.js.map +1 -1
- package/Meshes/geometry.js +32 -32
- package/Meshes/geometry.js.map +1 -1
- package/Meshes/goldbergMesh.d.ts +1 -1
- package/Meshes/linesMesh.js +3 -3
- package/Meshes/linesMesh.js.map +1 -1
- package/Meshes/mesh.js +166 -166
- package/Meshes/mesh.js.map +1 -1
- package/Meshes/mesh.vertexData.js.map +1 -1
- package/Meshes/polygonMesh.js +5 -5
- package/Meshes/polygonMesh.js.map +1 -1
- package/Meshes/subMesh.js +59 -59
- package/Meshes/subMesh.js.map +1 -1
- package/Meshes/transformNode.js +52 -52
- package/Meshes/transformNode.js.map +1 -1
- package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.d.ts +1 -1
- package/Misc/PerformanceViewer/performanceViewerCollector.js +12 -12
- package/Misc/PerformanceViewer/performanceViewerCollector.js.map +1 -1
- package/Misc/arrayTools.d.ts +1 -1
- package/Misc/copyTextureToTexture.js +3 -3
- package/Misc/copyTextureToTexture.js.map +1 -1
- package/Misc/coroutine.d.ts +5 -5
- package/Misc/deferred.js +9 -9
- package/Misc/deferred.js.map +1 -1
- package/Misc/depthReducer.js +7 -7
- package/Misc/depthReducer.js.map +1 -1
- package/Misc/environmentTextureTools.d.ts +1 -1
- package/Misc/error.d.ts +1 -1
- package/Misc/fileTools.d.ts +5 -5
- package/Misc/filesInput.js +6 -6
- package/Misc/filesInput.js.map +1 -1
- package/Misc/khronosTextureContainer2.js +9 -9
- package/Misc/khronosTextureContainer2.js.map +1 -1
- package/Misc/observable.js +12 -12
- package/Misc/observable.js.map +1 -1
- package/Misc/perfCounter.js +16 -16
- package/Misc/perfCounter.js.map +1 -1
- package/Misc/sceneOptimizer.js +76 -76
- package/Misc/sceneOptimizer.js.map +1 -1
- package/Misc/stringDictionary.d.ts +1 -1
- package/Misc/trajectoryClassifier.js +67 -67
- package/Misc/trajectoryClassifier.js.map +1 -1
- package/Misc/videoRecorder.js +15 -15
- package/Misc/videoRecorder.js.map +1 -1
- package/Misc/virtualJoystick.js +12 -12
- package/Misc/virtualJoystick.js.map +1 -1
- package/Morph/morphTarget.js +28 -28
- package/Morph/morphTarget.js.map +1 -1
- package/Morph/morphTargetManager.js +18 -18
- package/Morph/morphTargetManager.js.map +1 -1
- package/Offline/database.js +12 -12
- package/Offline/database.js.map +1 -1
- package/Particles/EmitterTypes/coneParticleEmitter.js +25 -25
- package/Particles/EmitterTypes/coneParticleEmitter.js.map +1 -1
- package/Particles/EmitterTypes/meshParticleEmitter.js +20 -20
- package/Particles/EmitterTypes/meshParticleEmitter.js.map +1 -1
- package/Particles/baseParticleSystem.js +232 -232
- package/Particles/baseParticleSystem.js.map +1 -1
- package/Particles/cloudPoint.js +9 -9
- package/Particles/cloudPoint.js.map +1 -1
- package/Particles/gpuParticleSystem.js +123 -123
- package/Particles/gpuParticleSystem.js.map +1 -1
- package/Particles/particleSystem.js +102 -102
- package/Particles/particleSystem.js.map +1 -1
- package/Particles/particleSystemComponent.js +5 -0
- package/Particles/particleSystemComponent.js.map +1 -1
- package/Particles/pointsCloudSystem.js +18 -18
- package/Particles/pointsCloudSystem.js.map +1 -1
- package/Particles/solidParticle.js +23 -23
- package/Particles/solidParticle.js.map +1 -1
- package/Physics/index.d.ts +1 -0
- package/Physics/index.js +1 -0
- package/Physics/index.js.map +1 -1
- package/Physics/v1/physicsEngine.js +14 -14
- package/Physics/v1/physicsEngine.js.map +1 -1
- package/Physics/v1/physicsImpostor.js +149 -149
- package/Physics/v1/physicsImpostor.js.map +1 -1
- package/Physics/v2/IPhysicsEnginePlugin.d.ts +6 -8
- package/Physics/v2/IPhysicsEnginePlugin.js +1 -0
- package/Physics/v2/IPhysicsEnginePlugin.js.map +1 -1
- package/Physics/v2/physicsBody.d.ts +10 -1
- package/Physics/v2/physicsBody.js +13 -1
- package/Physics/v2/physicsBody.js.map +1 -1
- package/Physics/v2/physicsConstraint.d.ts +139 -66
- package/Physics/v2/physicsConstraint.js +145 -78
- package/Physics/v2/physicsConstraint.js.map +1 -1
- package/Physics/v2/physicsEngine.js +14 -14
- package/Physics/v2/physicsEngine.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js +137 -129
- package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js +68 -68
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.js +6 -6
- package/PostProcesses/RenderPipeline/Pipelines/ssaoRenderingPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/standardRenderingPipeline.js +226 -225
- package/PostProcesses/RenderPipeline/Pipelines/standardRenderingPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/postProcessRenderPipeline.js +10 -10
- package/PostProcesses/RenderPipeline/postProcessRenderPipeline.js.map +1 -1
- package/PostProcesses/anaglyphPostProcess.js +7 -7
- package/PostProcesses/anaglyphPostProcess.js.map +1 -1
- package/PostProcesses/blackAndWhitePostProcess.js +7 -7
- package/PostProcesses/blackAndWhitePostProcess.js.map +1 -1
- package/PostProcesses/bloomEffect.js +28 -28
- package/PostProcesses/bloomEffect.js.map +1 -1
- package/PostProcesses/bloomMergePostProcess.js +7 -7
- package/PostProcesses/bloomMergePostProcess.js.map +1 -1
- package/PostProcesses/blurPostProcess.js +32 -32
- package/PostProcesses/blurPostProcess.js.map +1 -1
- package/PostProcesses/chromaticAberrationPostProcess.js +7 -7
- package/PostProcesses/chromaticAberrationPostProcess.js.map +1 -1
- package/PostProcesses/circleOfConfusionPostProcess.js +7 -7
- package/PostProcesses/circleOfConfusionPostProcess.js.map +1 -1
- package/PostProcesses/colorCorrectionPostProcess.js +7 -7
- package/PostProcesses/colorCorrectionPostProcess.js.map +1 -1
- package/PostProcesses/convolutionPostProcess.js +7 -7
- package/PostProcesses/convolutionPostProcess.js.map +1 -1
- package/PostProcesses/depthOfFieldBlurPostProcess.js +7 -7
- package/PostProcesses/depthOfFieldBlurPostProcess.js.map +1 -1
- package/PostProcesses/depthOfFieldEffect.js +36 -36
- package/PostProcesses/depthOfFieldEffect.js.map +1 -1
- package/PostProcesses/depthOfFieldMergePostProcess.js +7 -7
- package/PostProcesses/depthOfFieldMergePostProcess.js.map +1 -1
- package/PostProcesses/extractHighlightsPostProcess.js +7 -7
- package/PostProcesses/extractHighlightsPostProcess.js.map +1 -1
- package/PostProcesses/filterPostProcess.js +7 -7
- package/PostProcesses/filterPostProcess.js.map +1 -1
- package/PostProcesses/grainPostProcess.js +7 -7
- package/PostProcesses/grainPostProcess.js.map +1 -1
- package/PostProcesses/imageProcessingPostProcess.js +42 -42
- package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
- package/PostProcesses/motionBlurPostProcess.js +41 -41
- package/PostProcesses/motionBlurPostProcess.js.map +1 -1
- package/PostProcesses/passPostProcess.js +15 -15
- package/PostProcesses/passPostProcess.js.map +1 -1
- package/PostProcesses/postProcess.d.ts +2 -2
- package/PostProcesses/postProcess.js +123 -123
- package/PostProcesses/postProcess.js.map +1 -1
- package/PostProcesses/refractionPostProcess.js +21 -21
- package/PostProcesses/refractionPostProcess.js.map +1 -1
- package/PostProcesses/screenSpaceCurvaturePostProcess.js +7 -7
- package/PostProcesses/screenSpaceCurvaturePostProcess.js.map +1 -1
- package/PostProcesses/screenSpaceReflectionPostProcess.js +19 -19
- package/PostProcesses/screenSpaceReflectionPostProcess.js.map +1 -1
- package/PostProcesses/sharpenPostProcess.js +7 -7
- package/PostProcesses/sharpenPostProcess.js.map +1 -1
- package/PostProcesses/stereoscopicInterlacePostProcess.js +14 -14
- package/PostProcesses/stereoscopicInterlacePostProcess.js.map +1 -1
- package/PostProcesses/tonemapPostProcess.js +7 -7
- package/PostProcesses/tonemapPostProcess.js.map +1 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.js +11 -11
- package/PostProcesses/volumetricLightScatteringPostProcess.js.map +1 -1
- package/PostProcesses/vrDistortionCorrectionPostProcess.js +7 -7
- package/PostProcesses/vrDistortionCorrectionPostProcess.js.map +1 -1
- package/Rendering/depthPeelingRenderer.js +36 -36
- package/Rendering/depthPeelingRenderer.js.map +1 -1
- package/Rendering/depthRenderer.js +8 -8
- package/Rendering/depthRenderer.js.map +1 -1
- package/Rendering/edgesRenderer.js +34 -34
- package/Rendering/edgesRenderer.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderer.js +8 -8
- package/Rendering/fluidRenderer/fluidRenderer.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingDepthTextureCopy.js +3 -3
- package/Rendering/fluidRenderer/fluidRenderingDepthTextureCopy.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObject.js +22 -19
- package/Rendering/fluidRenderer/fluidRenderingObject.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.js +12 -12
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.js +18 -18
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js +71 -68
- package/Rendering/fluidRenderer/fluidRenderingTargetRenderer.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingTextures.js +29 -29
- package/Rendering/fluidRenderer/fluidRenderingTextures.js.map +1 -1
- package/Rendering/geometryBufferRenderer.js +173 -168
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Rendering/prePassRenderer.js +51 -51
- package/Rendering/prePassRenderer.js.map +1 -1
- package/Rendering/renderingGroup.js +25 -25
- package/Rendering/renderingGroup.js.map +1 -1
- package/Rendering/renderingManager.js +21 -21
- package/Rendering/renderingManager.js.map +1 -1
- package/Rendering/subSurfaceConfiguration.js +18 -18
- package/Rendering/subSurfaceConfiguration.js.map +1 -1
- package/Rendering/utilityLayerRenderer.js +76 -76
- package/Rendering/utilityLayerRenderer.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
- package/Shaders/fluidRenderingParticleDepth.fragment.js +5 -1
- package/Shaders/fluidRenderingParticleDepth.fragment.js.map +1 -1
- package/Shaders/fluidRenderingRender.fragment.js +7 -2
- package/Shaders/fluidRenderingRender.fragment.js.map +1 -1
- package/Shaders/geometry.fragment.d.ts +2 -0
- package/Shaders/geometry.fragment.js +5 -1
- package/Shaders/geometry.fragment.js.map +1 -1
- package/Shaders/geometry.vertex.d.ts +2 -0
- package/Shaders/geometry.vertex.js +8 -4
- package/Shaders/geometry.vertex.js.map +1 -1
- package/Sprites/sprite.js +16 -16
- package/Sprites/sprite.js.map +1 -1
- package/Sprites/spriteManager.js +81 -81
- package/Sprites/spriteManager.js.map +1 -1
- package/Sprites/spriteMap.js +32 -32
- package/Sprites/spriteMap.js.map +1 -1
- package/Sprites/spriteRenderer.js +6 -6
- package/Sprites/spriteRenderer.js.map +1 -1
- package/Sprites/thinSprite.js +22 -22
- package/Sprites/thinSprite.js.map +1 -1
- package/States/stencilStateComposer.js +10 -10
- package/States/stencilStateComposer.js.map +1 -1
- package/XR/features/WebXRAnchorSystem.js +7 -7
- package/XR/features/WebXRAnchorSystem.js.map +1 -1
- package/XR/features/WebXRControllerMovement.d.ts +3 -3
- package/XR/features/WebXRControllerMovement.js +97 -97
- package/XR/features/WebXRControllerMovement.js.map +1 -1
- package/XR/features/WebXRControllerPhysics.js +24 -24
- package/XR/features/WebXRControllerPhysics.js.map +1 -1
- package/XR/features/WebXRControllerTeleportation.js +26 -26
- package/XR/features/WebXRControllerTeleportation.js.map +1 -1
- package/XR/features/WebXRDOMOverlay.d.ts +1 -1
- package/XR/features/WebXRFeaturePointSystem.js +6 -6
- package/XR/features/WebXRFeaturePointSystem.js.map +1 -1
- package/XR/features/WebXRHandTracking.d.ts +1 -1
- package/XR/features/WebXRHandTracking.js +95 -95
- package/XR/features/WebXRHandTracking.js.map +1 -1
- package/XR/features/WebXRWalkingLocomotion.js +21 -21
- package/XR/features/WebXRWalkingLocomotion.js.map +1 -1
- package/XR/motionController/webXRAbstractMotionController.d.ts +3 -3
- package/XR/motionController/webXRMotionControllerManager.d.ts +1 -1
- package/XR/native/nativeXRFrame.js +3 -3
- package/XR/native/nativeXRFrame.js.map +1 -1
- package/XR/webXRFeaturesManager.d.ts +1 -1
- package/XR/webXRLayerWrapper.d.ts +2 -2
- package/XR/webXRLayerWrapper.js +17 -17
- package/XR/webXRLayerWrapper.js.map +1 -1
- package/abstractScene.d.ts +2 -2
- package/node.d.ts +1 -1
- package/node.js +71 -71
- package/node.js.map +1 -1
- package/package.json +1 -1
- package/scene.js +777 -777
- package/scene.js.map +1 -1
- package/sceneComponent.d.ts +12 -12
- package/types.d.ts +11 -11
package/Engines/thinEngine.js
CHANGED
|
@@ -29,6 +29,249 @@ class BufferPointer {
|
|
|
29
29
|
* The base engine class (root of all engines)
|
|
30
30
|
*/
|
|
31
31
|
export class ThinEngine {
|
|
32
|
+
/**
|
|
33
|
+
* Returns the current npm package of the sdk
|
|
34
|
+
*/
|
|
35
|
+
// Not mixed with Version for tooling purpose.
|
|
36
|
+
static get NpmPackage() {
|
|
37
|
+
return "babylonjs@5.47.0";
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Returns the current version of the framework
|
|
41
|
+
*/
|
|
42
|
+
static get Version() {
|
|
43
|
+
return "5.47.0";
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Returns a string describing the current engine
|
|
47
|
+
*/
|
|
48
|
+
get description() {
|
|
49
|
+
let description = this.name + this.webGLVersion;
|
|
50
|
+
if (this._caps.parallelShaderCompile) {
|
|
51
|
+
description += " - Parallel shader compilation";
|
|
52
|
+
}
|
|
53
|
+
return description;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Gets or sets the name of the engine
|
|
57
|
+
*/
|
|
58
|
+
get name() {
|
|
59
|
+
return this._name;
|
|
60
|
+
}
|
|
61
|
+
set name(value) {
|
|
62
|
+
this._name = value;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Returns the version of the engine
|
|
66
|
+
*/
|
|
67
|
+
get version() {
|
|
68
|
+
return this._webGLVersion;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Gets or sets the relative url used to load shaders if using the engine in non-minified mode
|
|
72
|
+
*/
|
|
73
|
+
static get ShadersRepository() {
|
|
74
|
+
return Effect.ShadersRepository;
|
|
75
|
+
}
|
|
76
|
+
static set ShadersRepository(value) {
|
|
77
|
+
Effect.ShadersRepository = value;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* @internal
|
|
81
|
+
*/
|
|
82
|
+
_getShaderProcessor(shaderLanguage) {
|
|
83
|
+
return this._shaderProcessor;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Gets or sets a boolean indicating if depth buffer should be reverse, going from far to near.
|
|
87
|
+
* This can provide greater z depth for distant objects.
|
|
88
|
+
*/
|
|
89
|
+
get useReverseDepthBuffer() {
|
|
90
|
+
return this._useReverseDepthBuffer;
|
|
91
|
+
}
|
|
92
|
+
set useReverseDepthBuffer(useReverse) {
|
|
93
|
+
if (useReverse === this._useReverseDepthBuffer) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
this._useReverseDepthBuffer = useReverse;
|
|
97
|
+
if (useReverse) {
|
|
98
|
+
this._depthCullingState.depthFunc = 518;
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
this._depthCullingState.depthFunc = 515;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Gets the current frame id
|
|
106
|
+
*/
|
|
107
|
+
get frameId() {
|
|
108
|
+
return this._frameId;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Gets a boolean indicating that the engine supports uniform buffers
|
|
112
|
+
* @see https://doc.babylonjs.com/setup/support/webGL2#uniform-buffer-objets
|
|
113
|
+
*/
|
|
114
|
+
get supportsUniformBuffers() {
|
|
115
|
+
return this.webGLVersion > 1 && !this.disableUniformBuffers;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Gets the options used for engine creation
|
|
119
|
+
* @returns EngineOptions object
|
|
120
|
+
*/
|
|
121
|
+
getCreationOptions() {
|
|
122
|
+
return this._creationOptions;
|
|
123
|
+
}
|
|
124
|
+
/** @internal */
|
|
125
|
+
get _shouldUseHighPrecisionShader() {
|
|
126
|
+
return !!(this._caps.highPrecisionShaderSupported && this._highPrecisionShadersAllowed);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Gets a boolean indicating that only power of 2 textures are supported
|
|
130
|
+
* Please note that you can still use non power of 2 textures but in this case the engine will forcefully convert them
|
|
131
|
+
*/
|
|
132
|
+
get needPOTTextures() {
|
|
133
|
+
return this._webGLVersion < 2 || this.forcePOTTextures;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Gets the list of current active render loop functions
|
|
137
|
+
* @returns an array with the current render loop functions
|
|
138
|
+
*/
|
|
139
|
+
get activeRenderLoops() {
|
|
140
|
+
return this._activeRenderLoops;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Gets or sets a boolean indicating if resources should be retained to be able to handle context lost events
|
|
144
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/scene/optimize_your_scene#handling-webgl-context-lost
|
|
145
|
+
*/
|
|
146
|
+
get doNotHandleContextLost() {
|
|
147
|
+
return this._doNotHandleContextLost;
|
|
148
|
+
}
|
|
149
|
+
set doNotHandleContextLost(value) {
|
|
150
|
+
this._doNotHandleContextLost = value;
|
|
151
|
+
}
|
|
152
|
+
get _supportsHardwareTextureRescaling() {
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* sets the object from which width and height will be taken from when getting render width and height
|
|
157
|
+
* Will fallback to the gl object
|
|
158
|
+
* @param dimensions the framebuffer width and height that will be used.
|
|
159
|
+
*/
|
|
160
|
+
set framebufferDimensionsObject(dimensions) {
|
|
161
|
+
this._framebufferDimensionsObject = dimensions;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Gets the current viewport
|
|
165
|
+
*/
|
|
166
|
+
get currentViewport() {
|
|
167
|
+
return this._cachedViewport;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Gets the default empty texture
|
|
171
|
+
*/
|
|
172
|
+
get emptyTexture() {
|
|
173
|
+
if (!this._emptyTexture) {
|
|
174
|
+
this._emptyTexture = this.createRawTexture(new Uint8Array(4), 1, 1, 5, false, false, 1);
|
|
175
|
+
}
|
|
176
|
+
return this._emptyTexture;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Gets the default empty 3D texture
|
|
180
|
+
*/
|
|
181
|
+
get emptyTexture3D() {
|
|
182
|
+
if (!this._emptyTexture3D) {
|
|
183
|
+
this._emptyTexture3D = this.createRawTexture3D(new Uint8Array(4), 1, 1, 1, 5, false, false, 1);
|
|
184
|
+
}
|
|
185
|
+
return this._emptyTexture3D;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Gets the default empty 2D array texture
|
|
189
|
+
*/
|
|
190
|
+
get emptyTexture2DArray() {
|
|
191
|
+
if (!this._emptyTexture2DArray) {
|
|
192
|
+
this._emptyTexture2DArray = this.createRawTexture2DArray(new Uint8Array(4), 1, 1, 1, 5, false, false, 1);
|
|
193
|
+
}
|
|
194
|
+
return this._emptyTexture2DArray;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Gets the default empty cube texture
|
|
198
|
+
*/
|
|
199
|
+
get emptyCubeTexture() {
|
|
200
|
+
if (!this._emptyCubeTexture) {
|
|
201
|
+
const faceData = new Uint8Array(4);
|
|
202
|
+
const cubeData = [faceData, faceData, faceData, faceData, faceData, faceData];
|
|
203
|
+
this._emptyCubeTexture = this.createRawCubeTexture(cubeData, 1, 5, 0, false, false, 1);
|
|
204
|
+
}
|
|
205
|
+
return this._emptyCubeTexture;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Gets a boolean indicating if the engine runs in WebGPU or not.
|
|
209
|
+
*/
|
|
210
|
+
get isWebGPU() {
|
|
211
|
+
return this._isWebGPU;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Gets the shader platform name used by the effects.
|
|
215
|
+
*/
|
|
216
|
+
get shaderPlatformName() {
|
|
217
|
+
return this._shaderPlatformName;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Enables or disables the snapshot rendering mode
|
|
221
|
+
* Note that the WebGL engine does not support snapshot rendering so setting the value won't have any effect for this engine
|
|
222
|
+
*/
|
|
223
|
+
get snapshotRendering() {
|
|
224
|
+
return false;
|
|
225
|
+
}
|
|
226
|
+
set snapshotRendering(activate) {
|
|
227
|
+
// WebGL engine does not support snapshot rendering
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Gets or sets the snapshot rendering mode
|
|
231
|
+
*/
|
|
232
|
+
get snapshotRenderingMode() {
|
|
233
|
+
return this._snapshotRenderingMode;
|
|
234
|
+
}
|
|
235
|
+
set snapshotRenderingMode(mode) {
|
|
236
|
+
this._snapshotRenderingMode = mode;
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Gets a boolean indicating if the exact sRGB conversions or faster approximations are used for converting to and from linear space.
|
|
240
|
+
*/
|
|
241
|
+
get useExactSrgbConversions() {
|
|
242
|
+
return this._useExactSrgbConversions;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Creates a new snapshot at the next frame using the current snapshotRenderingMode
|
|
246
|
+
*/
|
|
247
|
+
snapshotRenderingReset() {
|
|
248
|
+
this.snapshotRendering = false;
|
|
249
|
+
}
|
|
250
|
+
static _CreateCanvas(width, height) {
|
|
251
|
+
if (typeof document === "undefined") {
|
|
252
|
+
return new OffscreenCanvas(width, height);
|
|
253
|
+
}
|
|
254
|
+
const canvas = document.createElement("canvas");
|
|
255
|
+
canvas.width = width;
|
|
256
|
+
canvas.height = height;
|
|
257
|
+
return canvas;
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Create a canvas. This method is overridden by other engines
|
|
261
|
+
* @param width width
|
|
262
|
+
* @param height height
|
|
263
|
+
* @returns ICanvas interface
|
|
264
|
+
*/
|
|
265
|
+
createCanvas(width, height) {
|
|
266
|
+
return ThinEngine._CreateCanvas(width, height);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Create an image to use with canvas
|
|
270
|
+
* @returns IImage interface
|
|
271
|
+
*/
|
|
272
|
+
createCanvasImage() {
|
|
273
|
+
return document.createElement("img");
|
|
274
|
+
}
|
|
32
275
|
/**
|
|
33
276
|
* Creates a new engine
|
|
34
277
|
* @param canvasOrContext defines the canvas or WebGL context to use for rendering. If you provide a WebGL context, Babylon.js will not hook events on the canvas (like pointers, keyboards, etc...) so no event observables will be available. This is mostly used when Babylon.js is used as a plugin on a system which already used the WebGL context
|
|
@@ -398,249 +641,6 @@ export class ThinEngine {
|
|
|
398
641
|
this._renderingCanvas.setAttribute("data-engine", versionToLog);
|
|
399
642
|
}
|
|
400
643
|
}
|
|
401
|
-
/**
|
|
402
|
-
* Returns the current npm package of the sdk
|
|
403
|
-
*/
|
|
404
|
-
// Not mixed with Version for tooling purpose.
|
|
405
|
-
static get NpmPackage() {
|
|
406
|
-
return "babylonjs@5.45.2";
|
|
407
|
-
}
|
|
408
|
-
/**
|
|
409
|
-
* Returns the current version of the framework
|
|
410
|
-
*/
|
|
411
|
-
static get Version() {
|
|
412
|
-
return "5.45.2";
|
|
413
|
-
}
|
|
414
|
-
/**
|
|
415
|
-
* Returns a string describing the current engine
|
|
416
|
-
*/
|
|
417
|
-
get description() {
|
|
418
|
-
let description = this.name + this.webGLVersion;
|
|
419
|
-
if (this._caps.parallelShaderCompile) {
|
|
420
|
-
description += " - Parallel shader compilation";
|
|
421
|
-
}
|
|
422
|
-
return description;
|
|
423
|
-
}
|
|
424
|
-
/**
|
|
425
|
-
* Gets or sets the name of the engine
|
|
426
|
-
*/
|
|
427
|
-
get name() {
|
|
428
|
-
return this._name;
|
|
429
|
-
}
|
|
430
|
-
set name(value) {
|
|
431
|
-
this._name = value;
|
|
432
|
-
}
|
|
433
|
-
/**
|
|
434
|
-
* Returns the version of the engine
|
|
435
|
-
*/
|
|
436
|
-
get version() {
|
|
437
|
-
return this._webGLVersion;
|
|
438
|
-
}
|
|
439
|
-
/**
|
|
440
|
-
* Gets or sets the relative url used to load shaders if using the engine in non-minified mode
|
|
441
|
-
*/
|
|
442
|
-
static get ShadersRepository() {
|
|
443
|
-
return Effect.ShadersRepository;
|
|
444
|
-
}
|
|
445
|
-
static set ShadersRepository(value) {
|
|
446
|
-
Effect.ShadersRepository = value;
|
|
447
|
-
}
|
|
448
|
-
/**
|
|
449
|
-
* @internal
|
|
450
|
-
*/
|
|
451
|
-
_getShaderProcessor(shaderLanguage) {
|
|
452
|
-
return this._shaderProcessor;
|
|
453
|
-
}
|
|
454
|
-
/**
|
|
455
|
-
* Gets or sets a boolean indicating if depth buffer should be reverse, going from far to near.
|
|
456
|
-
* This can provide greater z depth for distant objects.
|
|
457
|
-
*/
|
|
458
|
-
get useReverseDepthBuffer() {
|
|
459
|
-
return this._useReverseDepthBuffer;
|
|
460
|
-
}
|
|
461
|
-
set useReverseDepthBuffer(useReverse) {
|
|
462
|
-
if (useReverse === this._useReverseDepthBuffer) {
|
|
463
|
-
return;
|
|
464
|
-
}
|
|
465
|
-
this._useReverseDepthBuffer = useReverse;
|
|
466
|
-
if (useReverse) {
|
|
467
|
-
this._depthCullingState.depthFunc = 518;
|
|
468
|
-
}
|
|
469
|
-
else {
|
|
470
|
-
this._depthCullingState.depthFunc = 515;
|
|
471
|
-
}
|
|
472
|
-
}
|
|
473
|
-
/**
|
|
474
|
-
* Gets the current frame id
|
|
475
|
-
*/
|
|
476
|
-
get frameId() {
|
|
477
|
-
return this._frameId;
|
|
478
|
-
}
|
|
479
|
-
/**
|
|
480
|
-
* Gets a boolean indicating that the engine supports uniform buffers
|
|
481
|
-
* @see https://doc.babylonjs.com/setup/support/webGL2#uniform-buffer-objets
|
|
482
|
-
*/
|
|
483
|
-
get supportsUniformBuffers() {
|
|
484
|
-
return this.webGLVersion > 1 && !this.disableUniformBuffers;
|
|
485
|
-
}
|
|
486
|
-
/**
|
|
487
|
-
* Gets the options used for engine creation
|
|
488
|
-
* @returns EngineOptions object
|
|
489
|
-
*/
|
|
490
|
-
getCreationOptions() {
|
|
491
|
-
return this._creationOptions;
|
|
492
|
-
}
|
|
493
|
-
/** @internal */
|
|
494
|
-
get _shouldUseHighPrecisionShader() {
|
|
495
|
-
return !!(this._caps.highPrecisionShaderSupported && this._highPrecisionShadersAllowed);
|
|
496
|
-
}
|
|
497
|
-
/**
|
|
498
|
-
* Gets a boolean indicating that only power of 2 textures are supported
|
|
499
|
-
* Please note that you can still use non power of 2 textures but in this case the engine will forcefully convert them
|
|
500
|
-
*/
|
|
501
|
-
get needPOTTextures() {
|
|
502
|
-
return this._webGLVersion < 2 || this.forcePOTTextures;
|
|
503
|
-
}
|
|
504
|
-
/**
|
|
505
|
-
* Gets the list of current active render loop functions
|
|
506
|
-
* @returns an array with the current render loop functions
|
|
507
|
-
*/
|
|
508
|
-
get activeRenderLoops() {
|
|
509
|
-
return this._activeRenderLoops;
|
|
510
|
-
}
|
|
511
|
-
/**
|
|
512
|
-
* Gets or sets a boolean indicating if resources should be retained to be able to handle context lost events
|
|
513
|
-
* @see https://doc.babylonjs.com/features/featuresDeepDive/scene/optimize_your_scene#handling-webgl-context-lost
|
|
514
|
-
*/
|
|
515
|
-
get doNotHandleContextLost() {
|
|
516
|
-
return this._doNotHandleContextLost;
|
|
517
|
-
}
|
|
518
|
-
set doNotHandleContextLost(value) {
|
|
519
|
-
this._doNotHandleContextLost = value;
|
|
520
|
-
}
|
|
521
|
-
get _supportsHardwareTextureRescaling() {
|
|
522
|
-
return false;
|
|
523
|
-
}
|
|
524
|
-
/**
|
|
525
|
-
* sets the object from which width and height will be taken from when getting render width and height
|
|
526
|
-
* Will fallback to the gl object
|
|
527
|
-
* @param dimensions the framebuffer width and height that will be used.
|
|
528
|
-
*/
|
|
529
|
-
set framebufferDimensionsObject(dimensions) {
|
|
530
|
-
this._framebufferDimensionsObject = dimensions;
|
|
531
|
-
}
|
|
532
|
-
/**
|
|
533
|
-
* Gets the current viewport
|
|
534
|
-
*/
|
|
535
|
-
get currentViewport() {
|
|
536
|
-
return this._cachedViewport;
|
|
537
|
-
}
|
|
538
|
-
/**
|
|
539
|
-
* Gets the default empty texture
|
|
540
|
-
*/
|
|
541
|
-
get emptyTexture() {
|
|
542
|
-
if (!this._emptyTexture) {
|
|
543
|
-
this._emptyTexture = this.createRawTexture(new Uint8Array(4), 1, 1, 5, false, false, 1);
|
|
544
|
-
}
|
|
545
|
-
return this._emptyTexture;
|
|
546
|
-
}
|
|
547
|
-
/**
|
|
548
|
-
* Gets the default empty 3D texture
|
|
549
|
-
*/
|
|
550
|
-
get emptyTexture3D() {
|
|
551
|
-
if (!this._emptyTexture3D) {
|
|
552
|
-
this._emptyTexture3D = this.createRawTexture3D(new Uint8Array(4), 1, 1, 1, 5, false, false, 1);
|
|
553
|
-
}
|
|
554
|
-
return this._emptyTexture3D;
|
|
555
|
-
}
|
|
556
|
-
/**
|
|
557
|
-
* Gets the default empty 2D array texture
|
|
558
|
-
*/
|
|
559
|
-
get emptyTexture2DArray() {
|
|
560
|
-
if (!this._emptyTexture2DArray) {
|
|
561
|
-
this._emptyTexture2DArray = this.createRawTexture2DArray(new Uint8Array(4), 1, 1, 1, 5, false, false, 1);
|
|
562
|
-
}
|
|
563
|
-
return this._emptyTexture2DArray;
|
|
564
|
-
}
|
|
565
|
-
/**
|
|
566
|
-
* Gets the default empty cube texture
|
|
567
|
-
*/
|
|
568
|
-
get emptyCubeTexture() {
|
|
569
|
-
if (!this._emptyCubeTexture) {
|
|
570
|
-
const faceData = new Uint8Array(4);
|
|
571
|
-
const cubeData = [faceData, faceData, faceData, faceData, faceData, faceData];
|
|
572
|
-
this._emptyCubeTexture = this.createRawCubeTexture(cubeData, 1, 5, 0, false, false, 1);
|
|
573
|
-
}
|
|
574
|
-
return this._emptyCubeTexture;
|
|
575
|
-
}
|
|
576
|
-
/**
|
|
577
|
-
* Gets a boolean indicating if the engine runs in WebGPU or not.
|
|
578
|
-
*/
|
|
579
|
-
get isWebGPU() {
|
|
580
|
-
return this._isWebGPU;
|
|
581
|
-
}
|
|
582
|
-
/**
|
|
583
|
-
* Gets the shader platform name used by the effects.
|
|
584
|
-
*/
|
|
585
|
-
get shaderPlatformName() {
|
|
586
|
-
return this._shaderPlatformName;
|
|
587
|
-
}
|
|
588
|
-
/**
|
|
589
|
-
* Enables or disables the snapshot rendering mode
|
|
590
|
-
* Note that the WebGL engine does not support snapshot rendering so setting the value won't have any effect for this engine
|
|
591
|
-
*/
|
|
592
|
-
get snapshotRendering() {
|
|
593
|
-
return false;
|
|
594
|
-
}
|
|
595
|
-
set snapshotRendering(activate) {
|
|
596
|
-
// WebGL engine does not support snapshot rendering
|
|
597
|
-
}
|
|
598
|
-
/**
|
|
599
|
-
* Gets or sets the snapshot rendering mode
|
|
600
|
-
*/
|
|
601
|
-
get snapshotRenderingMode() {
|
|
602
|
-
return this._snapshotRenderingMode;
|
|
603
|
-
}
|
|
604
|
-
set snapshotRenderingMode(mode) {
|
|
605
|
-
this._snapshotRenderingMode = mode;
|
|
606
|
-
}
|
|
607
|
-
/**
|
|
608
|
-
* Gets a boolean indicating if the exact sRGB conversions or faster approximations are used for converting to and from linear space.
|
|
609
|
-
*/
|
|
610
|
-
get useExactSrgbConversions() {
|
|
611
|
-
return this._useExactSrgbConversions;
|
|
612
|
-
}
|
|
613
|
-
/**
|
|
614
|
-
* Creates a new snapshot at the next frame using the current snapshotRenderingMode
|
|
615
|
-
*/
|
|
616
|
-
snapshotRenderingReset() {
|
|
617
|
-
this.snapshotRendering = false;
|
|
618
|
-
}
|
|
619
|
-
static _CreateCanvas(width, height) {
|
|
620
|
-
if (typeof document === "undefined") {
|
|
621
|
-
return new OffscreenCanvas(width, height);
|
|
622
|
-
}
|
|
623
|
-
const canvas = document.createElement("canvas");
|
|
624
|
-
canvas.width = width;
|
|
625
|
-
canvas.height = height;
|
|
626
|
-
return canvas;
|
|
627
|
-
}
|
|
628
|
-
/**
|
|
629
|
-
* Create a canvas. This method is overridden by other engines
|
|
630
|
-
* @param width width
|
|
631
|
-
* @param height height
|
|
632
|
-
* @returns ICanvas interface
|
|
633
|
-
*/
|
|
634
|
-
createCanvas(width, height) {
|
|
635
|
-
return ThinEngine._CreateCanvas(width, height);
|
|
636
|
-
}
|
|
637
|
-
/**
|
|
638
|
-
* Create an image to use with canvas
|
|
639
|
-
* @returns IImage interface
|
|
640
|
-
*/
|
|
641
|
-
createCanvasImage() {
|
|
642
|
-
return document.createElement("img");
|
|
643
|
-
}
|
|
644
644
|
_restoreEngineAfterContextLost(initEngine) {
|
|
645
645
|
// Adding a timeout to avoid race condition at browser level
|
|
646
646
|
setTimeout(async () => {
|