@babylonjs/core 5.29.0 → 5.31.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/Cameras/cameraInputsManager.d.ts +2 -2
- package/Cameras/cameraInputsManager.js +5 -4
- package/Cameras/cameraInputsManager.js.map +1 -1
- package/Collisions/pickingInfo.d.ts +1 -0
- package/Collisions/pickingInfo.js +7 -2
- package/Collisions/pickingInfo.js.map +1 -1
- package/Culling/ray.d.ts +1 -1
- package/Culling/ray.js +0 -6
- package/Culling/ray.js.map +1 -1
- package/Debug/debugLayer.d.ts +5 -0
- package/Debug/debugLayer.js.map +1 -1
- package/Engines/Extensions/engine.renderTarget.js +5 -1
- package/Engines/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/Processors/iShaderProcessor.d.ts +4 -0
- package/Engines/Processors/iShaderProcessor.js.map +1 -1
- package/Engines/Processors/shaderCodeNode.js +11 -2
- package/Engines/Processors/shaderCodeNode.js.map +1 -1
- package/Engines/Processors/shaderProcessor.js +4 -1
- package/Engines/Processors/shaderProcessor.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.renderTarget.js +4 -1
- package/Engines/WebGPU/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js +2 -0
- package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessor.js +3 -7
- package/Engines/WebGPU/webgpuShaderProcessor.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.d.ts +6 -0
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +36 -8
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureHelper.js +2 -0
- package/Engines/WebGPU/webgpuTextureHelper.js.map +1 -1
- package/Engines/WebGPU/webgpuTintWASM.d.ts +1 -0
- package/Engines/WebGPU/webgpuTintWASM.js +7 -1
- package/Engines/WebGPU/webgpuTintWASM.js.map +1 -1
- package/Engines/constants.d.ts +4 -0
- package/Engines/constants.js +4 -0
- package/Engines/constants.js.map +1 -1
- package/Engines/engine.d.ts +45 -12
- package/Engines/nativeEngine.js +1 -0
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/thinEngine.js +6 -3
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.d.ts +0 -2
- package/Engines/webgpuEngine.js +15 -14
- package/Engines/webgpuEngine.js.map +1 -1
- package/IAccessibilityTag.d.ts +29 -0
- package/IAccessibilityTag.js +2 -0
- package/IAccessibilityTag.js.map +1 -0
- package/Inputs/scene.inputManager.d.ts +1 -1
- package/Inputs/scene.inputManager.js +9 -2
- package/Inputs/scene.inputManager.js.map +1 -1
- package/Layers/effectLayer.js +1 -1
- package/Layers/effectLayer.js.map +1 -1
- package/Lights/Shadows/cascadedShadowGenerator.d.ts +3 -1
- package/Lights/Shadows/cascadedShadowGenerator.js +19 -16
- package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
- package/Lights/Shadows/shadowGenerator.d.ts +6 -2
- package/Lights/Shadows/shadowGenerator.js +32 -7
- package/Lights/Shadows/shadowGenerator.js.map +1 -1
- package/Lights/Shadows/shadowGeneratorSceneComponent.js +16 -8
- package/Lights/Shadows/shadowGeneratorSceneComponent.js.map +1 -1
- package/Lights/light.d.ts +10 -3
- package/Lights/light.js +28 -6
- package/Lights/light.js.map +1 -1
- package/Lights/pointLight.js +6 -2
- package/Lights/pointLight.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/heightToNormalBlock.d.ts +24 -3
- package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js +92 -21
- package/Materials/Node/Blocks/Fragment/heightToNormalBlock.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/perturbNormalBlock.d.ts +3 -1
- package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +8 -2
- package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/anisotropyBlock.d.ts +4 -0
- package/Materials/Node/Blocks/PBR/anisotropyBlock.js +11 -1
- package/Materials/Node/Blocks/PBR/anisotropyBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/clearCoatBlock.d.ts +1 -0
- package/Materials/Node/Blocks/PBR/clearCoatBlock.js +7 -1
- package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
- package/Materials/materialHelper.js +2 -1
- package/Materials/materialHelper.js.map +1 -1
- package/Materials/uniformBuffer.js +1 -1
- package/Materials/uniformBuffer.js.map +1 -1
- package/Maths/math.vector.d.ts +88 -20
- package/Maths/math.vector.js +88 -31
- package/Maths/math.vector.js.map +1 -1
- package/Meshes/abstractMesh.js +11 -7
- package/Meshes/abstractMesh.js.map +1 -1
- package/Meshes/mesh.d.ts +3 -3
- package/Meshes/mesh.js +28 -19
- package/Meshes/mesh.js.map +1 -1
- package/Meshes/transformNode.d.ts +1 -1
- package/Meshes/transformNode.js +1 -1
- package/Meshes/transformNode.js.map +1 -1
- package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.d.ts +17 -4
- package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.js +49 -9
- package/Misc/PerformanceViewer/performanceViewerCollectionStrategies.js.map +1 -1
- package/Misc/iInspectable.d.ts +5 -1
- package/Misc/iInspectable.js +4 -0
- package/Misc/iInspectable.js.map +1 -1
- package/Misc/index.d.ts +1 -1
- package/Misc/index.js +1 -1
- package/Misc/index.js.map +1 -1
- package/Misc/khronosTextureContainer2.js +41 -46
- package/Misc/khronosTextureContainer2.js.map +1 -1
- package/Misc/observable.js +4 -4
- package/Misc/observable.js.map +1 -1
- package/Misc/pressureObserverWrapper.d.ts +36 -0
- package/Misc/pressureObserverWrapper.js +68 -0
- package/Misc/pressureObserverWrapper.js.map +1 -0
- package/Misc/sceneRecorder.js +10 -4
- package/Misc/sceneRecorder.js.map +1 -1
- package/Misc/screenshotTools.js +0 -1
- package/Misc/screenshotTools.js.map +1 -1
- package/Particles/particleSystem.d.ts +4 -0
- package/Particles/particleSystem.js +12 -4
- package/Particles/particleSystem.js.map +1 -1
- package/PostProcesses/postProcess.js +4 -4
- package/PostProcesses/postProcess.js.map +1 -1
- package/Rendering/depthPeelingRenderer.js +4 -0
- package/Rendering/depthPeelingRenderer.js.map +1 -1
- package/Rendering/renderingManager.d.ts +3 -0
- package/Rendering/renderingManager.js +3 -0
- package/Rendering/renderingManager.js.map +1 -1
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js +3 -3
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/helperFunctions.js +2 -2
- package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/mrtFragmentDeclaration.js +1 -1
- package/Shaders/ShadersInclude/mrtFragmentDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.js +20 -15
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
- package/Shaders/fxaa.fragment.js +10 -5
- package/Shaders/fxaa.fragment.js.map +1 -1
- package/Shaders/particles.vertex.js +4 -1
- package/Shaders/particles.vertex.js.map +1 -1
- package/Shaders/spriteMap.fragment.js +7 -2
- package/Shaders/spriteMap.fragment.js.map +1 -1
- package/XR/features/WebXRControllerPointerSelection.js +1 -0
- package/XR/features/WebXRControllerPointerSelection.js.map +1 -1
- package/XR/features/WebXRNearInteraction.js.map +1 -1
- package/node.d.ts +8 -0
- package/node.js +13 -1
- package/node.js.map +1 -1
- package/package.json +1 -1
- package/scene.d.ts +1 -8
- package/scene.js +1 -24
- package/scene.js.map +1 -1
- package/Misc/computePressure.d.ts +0 -57
- package/Misc/computePressure.js +0 -48
- package/Misc/computePressure.js.map +0 -1
package/Meshes/mesh.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Observable } from "../Misc/observable";
|
|
2
2
|
import type { IAnimatable } from "../Animations/animatable.interface";
|
|
3
3
|
import type { Nullable, FloatArray, IndicesArray } from "../types";
|
|
4
|
-
import
|
|
4
|
+
import { Camera } from "../Cameras/camera";
|
|
5
5
|
import type { Scene } from "../scene";
|
|
6
6
|
import { Matrix, Vector3, Vector2 } from "../Maths/math.vector";
|
|
7
7
|
import type { Engine } from "../Engines/engine";
|
|
@@ -221,7 +221,7 @@ export declare class Mesh extends AbstractMesh implements IGetSetVerticesData {
|
|
|
221
221
|
get hasThinInstances(): boolean;
|
|
222
222
|
/**
|
|
223
223
|
* Gets the delay loading state of the mesh (when delay loading is turned on)
|
|
224
|
-
* @see https://doc.babylonjs.com/
|
|
224
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/importers/incrementalLoading
|
|
225
225
|
*/
|
|
226
226
|
delayLoadState: number;
|
|
227
227
|
/**
|
|
@@ -366,7 +366,7 @@ export declare class Mesh extends AbstractMesh implements IGetSetVerticesData {
|
|
|
366
366
|
removeLODLevel(mesh: Mesh): Mesh;
|
|
367
367
|
/**
|
|
368
368
|
* Returns the registered LOD mesh distant from the parameter `camera` position if any, else returns the current mesh.
|
|
369
|
-
* @see https://doc.babylonjs.com/
|
|
369
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/LOD
|
|
370
370
|
* @param camera defines the camera to use to compute distance
|
|
371
371
|
* @param boundingSphere defines a custom bounding sphere to use instead of the one from this mesh
|
|
372
372
|
* @returns This mesh (for chaining)
|
package/Meshes/mesh.js
CHANGED
|
@@ -3,6 +3,7 @@ import { Tools, AsyncLoop } from "../Misc/tools.js";
|
|
|
3
3
|
import { DeepCopier } from "../Misc/deepCopier.js";
|
|
4
4
|
import { Tags } from "../Misc/tags.js";
|
|
5
5
|
import { runCoroutineSync, runCoroutineAsync, createYieldingScheduler } from "../Misc/coroutine.js";
|
|
6
|
+
import { Camera } from "../Cameras/camera.js";
|
|
6
7
|
import { ScenePerformancePriority } from "../scene.js";
|
|
7
8
|
import { Quaternion, Matrix, Vector3, Vector2 } from "../Maths/math.vector.js";
|
|
8
9
|
import { Color3 } from "../Maths/math.color.js";
|
|
@@ -104,7 +105,7 @@ export class Mesh extends AbstractMesh {
|
|
|
104
105
|
// Members
|
|
105
106
|
/**
|
|
106
107
|
* Gets the delay loading state of the mesh (when delay loading is turned on)
|
|
107
|
-
* @see https://doc.babylonjs.com/
|
|
108
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/importers/incrementalLoading
|
|
108
109
|
*/
|
|
109
110
|
this.delayLoadState = 0;
|
|
110
111
|
/**
|
|
@@ -619,7 +620,7 @@ export class Mesh extends AbstractMesh {
|
|
|
619
620
|
}
|
|
620
621
|
/**
|
|
621
622
|
* Returns the registered LOD mesh distant from the parameter `camera` position if any, else returns the current mesh.
|
|
622
|
-
* @see https://doc.babylonjs.com/
|
|
623
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/LOD
|
|
623
624
|
* @param camera defines the camera to use to compute distance
|
|
624
625
|
* @param boundingSphere defines a custom bounding sphere to use instead of the one from this mesh
|
|
625
626
|
* @returns This mesh (for chaining)
|
|
@@ -637,7 +638,7 @@ export class Mesh extends AbstractMesh {
|
|
|
637
638
|
const boundingInfo = this.getBoundingInfo();
|
|
638
639
|
bSphere = boundingInfo.boundingSphere;
|
|
639
640
|
}
|
|
640
|
-
const distanceToCamera = bSphere.centerWorld.subtract(camera.globalPosition).length();
|
|
641
|
+
const distanceToCamera = camera.mode === Camera.ORTHOGRAPHIC_CAMERA ? camera.minZ : bSphere.centerWorld.subtract(camera.globalPosition).length();
|
|
641
642
|
const useScreenCoverage = internalDataInfo._useLODScreenCoverage;
|
|
642
643
|
let compareValue = distanceToCamera;
|
|
643
644
|
let compareSign = 1;
|
|
@@ -904,18 +905,25 @@ export class Mesh extends AbstractMesh {
|
|
|
904
905
|
// Shadows
|
|
905
906
|
const currentRenderPassId = engine.currentRenderPassId;
|
|
906
907
|
for (const light of this.lightSources) {
|
|
907
|
-
const
|
|
908
|
-
if (
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
908
|
+
const generators = light.getShadowGenerators();
|
|
909
|
+
if (!generators) {
|
|
910
|
+
continue;
|
|
911
|
+
}
|
|
912
|
+
const iterator = generators.values();
|
|
913
|
+
for (let key = iterator.next(); key.done !== true; key = iterator.next()) {
|
|
914
|
+
const generator = key.value;
|
|
915
|
+
if (generator && (!((_a = generator.getShadowMap()) === null || _a === void 0 ? void 0 : _a.renderList) || (((_b = generator.getShadowMap()) === null || _b === void 0 ? void 0 : _b.renderList) && ((_d = (_c = generator.getShadowMap()) === null || _c === void 0 ? void 0 : _c.renderList) === null || _d === void 0 ? void 0 : _d.indexOf(this)) !== -1))) {
|
|
916
|
+
if (generator.getShadowMap()) {
|
|
917
|
+
engine.currentRenderPassId = generator.getShadowMap().renderPassId;
|
|
918
|
+
}
|
|
919
|
+
for (const subMesh of this.subMeshes) {
|
|
920
|
+
if (!generator.isReady(subMesh, hardwareInstancedRendering, (_f = (_e = subMesh.getMaterial()) === null || _e === void 0 ? void 0 : _e.needAlphaBlendingForMesh(this)) !== null && _f !== void 0 ? _f : false)) {
|
|
921
|
+
engine.currentRenderPassId = currentRenderPassId;
|
|
922
|
+
return false;
|
|
923
|
+
}
|
|
916
924
|
}
|
|
925
|
+
engine.currentRenderPassId = currentRenderPassId;
|
|
917
926
|
}
|
|
918
|
-
engine.currentRenderPassId = currentRenderPassId;
|
|
919
927
|
}
|
|
920
928
|
}
|
|
921
929
|
// LOD
|
|
@@ -2147,20 +2155,21 @@ export class Mesh extends AbstractMesh {
|
|
|
2147
2155
|
const submeshes = this.subMeshes.splice(0);
|
|
2148
2156
|
this._resetPointsArrayCache();
|
|
2149
2157
|
let data = this.getVerticesData(VertexBuffer.PositionKind);
|
|
2150
|
-
|
|
2158
|
+
const temp = Vector3.Zero();
|
|
2151
2159
|
let index;
|
|
2152
2160
|
for (index = 0; index < data.length; index += 3) {
|
|
2153
|
-
Vector3.
|
|
2161
|
+
Vector3.TransformCoordinatesFromFloatsToRef(data[index], data[index + 1], data[index + 2], transform, temp).toArray(data, index);
|
|
2154
2162
|
}
|
|
2155
|
-
this.setVerticesData(VertexBuffer.PositionKind,
|
|
2163
|
+
this.setVerticesData(VertexBuffer.PositionKind, data, this.getVertexBuffer(VertexBuffer.PositionKind).isUpdatable());
|
|
2156
2164
|
// Normals
|
|
2157
2165
|
if (this.isVerticesDataPresent(VertexBuffer.NormalKind)) {
|
|
2158
2166
|
data = this.getVerticesData(VertexBuffer.NormalKind);
|
|
2159
|
-
temp = [];
|
|
2160
2167
|
for (index = 0; index < data.length; index += 3) {
|
|
2161
|
-
Vector3.
|
|
2168
|
+
Vector3.TransformNormalFromFloatsToRef(data[index], data[index + 1], data[index + 2], transform, temp)
|
|
2169
|
+
.normalize()
|
|
2170
|
+
.toArray(data, index);
|
|
2162
2171
|
}
|
|
2163
|
-
this.setVerticesData(VertexBuffer.NormalKind,
|
|
2172
|
+
this.setVerticesData(VertexBuffer.NormalKind, data, this.getVertexBuffer(VertexBuffer.NormalKind).isUpdatable());
|
|
2164
2173
|
}
|
|
2165
2174
|
// flip faces?
|
|
2166
2175
|
if (transform.determinant() < 0) {
|