@babylonjs/core 5.30.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/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/webgpuShaderProcessorsGLSL.d.ts +6 -0
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +36 -8
- package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
- package/Engines/nativeEngine.js +1 -0
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/thinEngine.js +2 -2
- package/Engines/thinEngine.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/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 +16 -0
- package/Maths/math.vector.js +16 -0
- 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 +2 -2
- package/Meshes/mesh.js +26 -18
- 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/sceneRecorder.js +10 -4
- package/Misc/sceneRecorder.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 +3 -3
- package/Shaders/ShadersInclude/shadowsFragmentFunctions.js.map +1 -1
- package/Shaders/fxaa.fragment.js +1 -1
- package/Shaders/fxaa.fragment.js.map +1 -1
- package/Shaders/spriteMap.fragment.js +1 -1
- package/Shaders/spriteMap.fragment.js.map +1 -1
- package/package.json +1 -1
package/Meshes/mesh.d.ts
CHANGED
|
@@ -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
|
@@ -105,7 +105,7 @@ export class Mesh extends AbstractMesh {
|
|
|
105
105
|
// Members
|
|
106
106
|
/**
|
|
107
107
|
* Gets the delay loading state of the mesh (when delay loading is turned on)
|
|
108
|
-
* @see https://doc.babylonjs.com/
|
|
108
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/importers/incrementalLoading
|
|
109
109
|
*/
|
|
110
110
|
this.delayLoadState = 0;
|
|
111
111
|
/**
|
|
@@ -620,7 +620,7 @@ export class Mesh extends AbstractMesh {
|
|
|
620
620
|
}
|
|
621
621
|
/**
|
|
622
622
|
* Returns the registered LOD mesh distant from the parameter `camera` position if any, else returns the current mesh.
|
|
623
|
-
* @see https://doc.babylonjs.com/
|
|
623
|
+
* @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/LOD
|
|
624
624
|
* @param camera defines the camera to use to compute distance
|
|
625
625
|
* @param boundingSphere defines a custom bounding sphere to use instead of the one from this mesh
|
|
626
626
|
* @returns This mesh (for chaining)
|
|
@@ -905,18 +905,25 @@ export class Mesh extends AbstractMesh {
|
|
|
905
905
|
// Shadows
|
|
906
906
|
const currentRenderPassId = engine.currentRenderPassId;
|
|
907
907
|
for (const light of this.lightSources) {
|
|
908
|
-
const
|
|
909
|
-
if (
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
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
|
+
}
|
|
917
924
|
}
|
|
925
|
+
engine.currentRenderPassId = currentRenderPassId;
|
|
918
926
|
}
|
|
919
|
-
engine.currentRenderPassId = currentRenderPassId;
|
|
920
927
|
}
|
|
921
928
|
}
|
|
922
929
|
// LOD
|
|
@@ -2148,20 +2155,21 @@ export class Mesh extends AbstractMesh {
|
|
|
2148
2155
|
const submeshes = this.subMeshes.splice(0);
|
|
2149
2156
|
this._resetPointsArrayCache();
|
|
2150
2157
|
let data = this.getVerticesData(VertexBuffer.PositionKind);
|
|
2151
|
-
|
|
2158
|
+
const temp = Vector3.Zero();
|
|
2152
2159
|
let index;
|
|
2153
2160
|
for (index = 0; index < data.length; index += 3) {
|
|
2154
|
-
Vector3.
|
|
2161
|
+
Vector3.TransformCoordinatesFromFloatsToRef(data[index], data[index + 1], data[index + 2], transform, temp).toArray(data, index);
|
|
2155
2162
|
}
|
|
2156
|
-
this.setVerticesData(VertexBuffer.PositionKind,
|
|
2163
|
+
this.setVerticesData(VertexBuffer.PositionKind, data, this.getVertexBuffer(VertexBuffer.PositionKind).isUpdatable());
|
|
2157
2164
|
// Normals
|
|
2158
2165
|
if (this.isVerticesDataPresent(VertexBuffer.NormalKind)) {
|
|
2159
2166
|
data = this.getVerticesData(VertexBuffer.NormalKind);
|
|
2160
|
-
temp = [];
|
|
2161
2167
|
for (index = 0; index < data.length; index += 3) {
|
|
2162
|
-
Vector3.
|
|
2168
|
+
Vector3.TransformNormalFromFloatsToRef(data[index], data[index + 1], data[index + 2], transform, temp)
|
|
2169
|
+
.normalize()
|
|
2170
|
+
.toArray(data, index);
|
|
2163
2171
|
}
|
|
2164
|
-
this.setVerticesData(VertexBuffer.NormalKind,
|
|
2172
|
+
this.setVerticesData(VertexBuffer.NormalKind, data, this.getVertexBuffer(VertexBuffer.NormalKind).isUpdatable());
|
|
2165
2173
|
}
|
|
2166
2174
|
// flip faces?
|
|
2167
2175
|
if (transform.determinant() < 0) {
|