@babylonjs/core 7.49.0 → 7.51.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/Behaviors/Cameras/framingBehavior.js +3 -0
- package/Behaviors/Cameras/framingBehavior.js.map +1 -1
- package/Behaviors/Meshes/baseSixDofDragBehavior.js +10 -9
- package/Behaviors/Meshes/baseSixDofDragBehavior.js.map +1 -1
- package/Behaviors/Meshes/pointerDragBehavior.js +4 -1
- package/Behaviors/Meshes/pointerDragBehavior.js.map +1 -1
- package/Buffers/bufferUtils.d.ts +9 -10
- package/Buffers/bufferUtils.js +16 -0
- package/Buffers/bufferUtils.js.map +1 -1
- package/Culling/Helper/transformFeedbackBoundingHelper.js +2 -1
- package/Culling/Helper/transformFeedbackBoundingHelper.js.map +1 -1
- package/Engines/AbstractEngine/abstractEngine.cubeTexture.js +2 -3
- package/Engines/AbstractEngine/abstractEngine.cubeTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuBufferManager.js +23 -22
- package/Engines/WebGPU/webgpuBufferManager.js.map +1 -1
- package/Engines/abstractEngine.js +2 -2
- package/Engines/abstractEngine.js.map +1 -1
- package/Engines/thinEngine.functions.js +5 -3
- package/Engines/thinEngine.functions.js.map +1 -1
- package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.d.ts +43 -0
- package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js +83 -0
- package/FrameGraph/Node/Blocks/Rendering/utilityLayerRendererBlock.js.map +1 -0
- package/FrameGraph/Node/Blocks/index.d.ts +1 -0
- package/FrameGraph/Node/Blocks/index.js +1 -0
- package/FrameGraph/Node/Blocks/index.js.map +1 -1
- package/FrameGraph/Tasks/Rendering/utilityLayerRendererTask.d.ts +35 -0
- package/FrameGraph/Tasks/Rendering/utilityLayerRendererTask.js +40 -0
- package/FrameGraph/Tasks/Rendering/utilityLayerRendererTask.js.map +1 -0
- package/FrameGraph/frameGraph.d.ts +4 -0
- package/FrameGraph/frameGraph.js +6 -0
- package/FrameGraph/frameGraph.js.map +1 -1
- package/FrameGraph/frameGraphRenderContext.d.ts +2 -2
- package/FrameGraph/frameGraphRenderContext.js.map +1 -1
- package/FrameGraph/index.d.ts +1 -0
- package/FrameGraph/index.js +1 -0
- package/FrameGraph/index.js.map +1 -1
- package/Layers/thinEffectLayer.js +3 -1
- package/Layers/thinEffectLayer.js.map +1 -1
- package/Lights/Shadows/shadowGenerator.js +3 -1
- package/Lights/Shadows/shadowGenerator.js.map +1 -1
- package/Loading/loadingScreen.js +4 -1
- package/Loading/loadingScreen.js.map +1 -1
- package/Materials/GreasedLine/greasedLinePluginMaterialShadersGLSL.js +9 -20
- package/Materials/GreasedLine/greasedLinePluginMaterialShadersGLSL.js.map +1 -1
- package/Materials/GreasedLine/greasedLinePluginMaterialShadersWGSL.js +8 -19
- package/Materials/GreasedLine/greasedLinePluginMaterialShadersWGSL.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/prePassOutputBlock.d.ts +8 -0
- package/Materials/Node/Blocks/Fragment/prePassOutputBlock.js +36 -0
- package/Materials/Node/Blocks/Fragment/prePassOutputBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +6 -3
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
- package/Materials/Node/Blocks/Vertex/morphTargetsBlock.d.ts +8 -0
- package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js +48 -0
- package/Materials/Node/Blocks/Vertex/morphTargetsBlock.js.map +1 -1
- package/Materials/Node/nodeMaterial.d.ts +2 -0
- package/Materials/Node/nodeMaterial.js +14 -0
- package/Materials/Node/nodeMaterial.js.map +1 -1
- package/Materials/PBR/pbrBaseMaterial.d.ts +2 -0
- package/Materials/PBR/pbrBaseMaterial.js +2 -0
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Materials/materialHelper.functions.d.ts +2 -1
- package/Materials/materialHelper.functions.js +17 -1
- package/Materials/materialHelper.functions.js.map +1 -1
- package/Materials/shaderMaterial.js +3 -1
- package/Materials/shaderMaterial.js.map +1 -1
- package/Materials/standardMaterial.d.ts +2 -0
- package/Materials/standardMaterial.js +2 -0
- package/Materials/standardMaterial.js.map +1 -1
- package/Meshes/Compression/dracoCompressionWorker.js.map +1 -1
- package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.d.ts +4 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.js +11 -2
- package/Meshes/Node/Blocks/Instances/instantiateOnFacesBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.d.ts +4 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.js +11 -2
- package/Meshes/Node/Blocks/Instances/instantiateOnVerticesBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Instances/instantiateOnVolumeBlock.d.ts +4 -0
- package/Meshes/Node/Blocks/Instances/instantiateOnVolumeBlock.js +11 -2
- package/Meshes/Node/Blocks/Instances/instantiateOnVolumeBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Sources/boxBlock.js +4 -4
- package/Meshes/Node/Blocks/Sources/boxBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Sources/gridBlock.js +3 -3
- package/Meshes/Node/Blocks/Sources/gridBlock.js.map +1 -1
- package/Meshes/Node/Blocks/Sources/planeBlock.js +3 -3
- package/Meshes/Node/Blocks/Sources/planeBlock.js.map +1 -1
- package/Meshes/Node/Blocks/subdivideBlock.d.ts +45 -0
- package/Meshes/Node/Blocks/subdivideBlock.js +98 -0
- package/Meshes/Node/Blocks/subdivideBlock.js.map +1 -0
- package/Meshes/Node/index.d.ts +1 -0
- package/Meshes/Node/index.js +1 -0
- package/Meshes/Node/index.js.map +1 -1
- package/Meshes/abstractMesh.js +6 -0
- package/Meshes/abstractMesh.js.map +1 -1
- package/Meshes/csg2.js +18 -1
- package/Meshes/csg2.js.map +1 -1
- package/Meshes/geometry.js +1 -0
- package/Meshes/geometry.js.map +1 -1
- package/Meshes/index.d.ts +1 -0
- package/Meshes/index.js +1 -0
- package/Meshes/index.js.map +1 -1
- package/Meshes/mesh.d.ts +47 -1
- package/Meshes/mesh.js +28 -1
- package/Meshes/mesh.js.map +1 -1
- package/Meshes/mesh.vertexData.js +1 -1
- package/Meshes/mesh.vertexData.js.map +1 -1
- package/Meshes/mesh.vertexData.subdivide.d.ts +28 -0
- package/Meshes/mesh.vertexData.subdivide.js +400 -0
- package/Meshes/mesh.vertexData.subdivide.js.map +1 -0
- package/Misc/index.d.ts +1 -0
- package/Misc/index.js +1 -0
- package/Misc/index.js.map +1 -1
- package/Misc/screenshotTools.js +3 -0
- package/Misc/screenshotTools.js.map +1 -1
- package/Misc/urlTools.d.ts +6 -0
- package/Misc/urlTools.js +12 -0
- package/Misc/urlTools.js.map +1 -0
- package/Morph/morphTarget.d.ts +12 -0
- package/Morph/morphTarget.js +35 -1
- package/Morph/morphTarget.js.map +1 -1
- package/Morph/morphTargetManager.d.ts +13 -0
- package/Morph/morphTargetManager.js +30 -1
- package/Morph/morphTargetManager.js.map +1 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.js +3 -1
- package/PostProcesses/volumetricLightScatteringPostProcess.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.js +5 -3
- package/Rendering/IBLShadows/iblShadowsVoxelRenderer.js.map +1 -1
- package/Rendering/depthRenderer.js +3 -1
- package/Rendering/depthRenderer.js.map +1 -1
- package/Rendering/geometryBufferRenderer.js +3 -1
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Rendering/outlineRenderer.js +3 -1
- package/Rendering/outlineRenderer.js.map +1 -1
- package/Rendering/utilityLayerRenderer.d.ts +3 -1
- package/Rendering/utilityLayerRenderer.js +16 -7
- package/Rendering/utilityLayerRenderer.js.map +1 -1
- package/Shaders/ShadersInclude/lightFragment.js +1 -1
- package/Shaders/ShadersInclude/lightFragment.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertex.js +9 -0
- package/Shaders/ShadersInclude/morphTargetsVertex.js.map +1 -1
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -0
- package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js +5 -1
- package/Shaders/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +2 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/vertexColorMixing.js +2 -2
- package/Shaders/ShadersInclude/vertexColorMixing.js.map +1 -1
- package/Shaders/background.vertex.js +1 -1
- package/Shaders/background.vertex.js.map +1 -1
- package/Shaders/color.vertex.js +3 -0
- package/Shaders/color.vertex.js.map +1 -1
- package/Shaders/default.vertex.js +3 -0
- package/Shaders/default.vertex.js.map +1 -1
- package/Shaders/greasedLine.vertex.js +1 -2
- package/Shaders/greasedLine.vertex.js.map +1 -1
- package/Shaders/pbr.vertex.js +3 -0
- package/Shaders/pbr.vertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/lightFragment.js +1 -1
- package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js +6 -0
- package/ShadersWGSL/ShadersInclude/morphTargetsVertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +3 -0
- package/ShadersWGSL/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js +5 -1
- package/ShadersWGSL/ShadersInclude/pbrBlockFinalUnlitComponents.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +2 -1
- package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/ShadersWGSL/boundingInfo.compute.js +3 -0
- package/ShadersWGSL/boundingInfo.compute.js.map +1 -1
- package/ShadersWGSL/color.vertex.js +3 -0
- package/ShadersWGSL/color.vertex.js.map +1 -1
- package/ShadersWGSL/default.vertex.js +3 -0
- package/ShadersWGSL/default.vertex.js.map +1 -1
- package/ShadersWGSL/greasedLine.vertex.js +2 -3
- package/ShadersWGSL/greasedLine.vertex.js.map +1 -1
- package/ShadersWGSL/pbr.fragment.js +1 -1
- package/ShadersWGSL/pbr.fragment.js.map +1 -1
- package/ShadersWGSL/pbr.vertex.js +3 -0
- package/ShadersWGSL/pbr.vertex.js.map +1 -1
- package/XR/features/WebXRAnchorSystem.d.ts +4 -0
- package/XR/features/WebXRAnchorSystem.js +8 -5
- package/XR/features/WebXRAnchorSystem.js.map +1 -1
- package/XR/features/WebXRControllerPointerSelection.js +1 -0
- package/XR/features/WebXRControllerPointerSelection.js.map +1 -1
- package/package.json +1 -1
- package/scene.d.ts +2 -0
- package/scene.js +13 -9
- package/scene.js.map +1 -1
- package/types.d.ts +22 -0
- package/types.js.map +1 -1
package/Meshes/mesh.d.ts
CHANGED
|
@@ -33,16 +33,49 @@ import type { AbstractEngine } from "../Engines/abstractEngine.js";
|
|
|
33
33
|
* @internal
|
|
34
34
|
**/
|
|
35
35
|
export declare class _CreationDataStorage {
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
*/
|
|
36
39
|
closePath?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
*
|
|
42
|
+
*/
|
|
37
43
|
closeArray?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
*
|
|
46
|
+
*/
|
|
38
47
|
idx: number[];
|
|
48
|
+
/**
|
|
49
|
+
*
|
|
50
|
+
*/
|
|
39
51
|
dashSize: number;
|
|
52
|
+
/**
|
|
53
|
+
*
|
|
54
|
+
*/
|
|
40
55
|
gapSize: number;
|
|
56
|
+
/**
|
|
57
|
+
*
|
|
58
|
+
*/
|
|
41
59
|
path3D: Path3D;
|
|
60
|
+
/**
|
|
61
|
+
*
|
|
62
|
+
*/
|
|
42
63
|
pathArray: Vector3[][];
|
|
64
|
+
/**
|
|
65
|
+
*
|
|
66
|
+
*/
|
|
43
67
|
arc: number;
|
|
68
|
+
/**
|
|
69
|
+
*
|
|
70
|
+
*/
|
|
44
71
|
radius: number;
|
|
72
|
+
/**
|
|
73
|
+
*
|
|
74
|
+
*/
|
|
45
75
|
cap: number;
|
|
76
|
+
/**
|
|
77
|
+
*
|
|
78
|
+
*/
|
|
46
79
|
tessellation: number;
|
|
47
80
|
}
|
|
48
81
|
/**
|
|
@@ -72,9 +105,21 @@ declare class _InstanceDataStorage {
|
|
|
72
105
|
* @internal
|
|
73
106
|
**/
|
|
74
107
|
export declare class _InstancesBatch {
|
|
108
|
+
/**
|
|
109
|
+
*
|
|
110
|
+
*/
|
|
75
111
|
mustReturn: boolean;
|
|
112
|
+
/**
|
|
113
|
+
*
|
|
114
|
+
*/
|
|
76
115
|
visibleInstances: Nullable<InstancedMesh[]>[];
|
|
116
|
+
/**
|
|
117
|
+
*
|
|
118
|
+
*/
|
|
77
119
|
renderSelf: boolean[];
|
|
120
|
+
/**
|
|
121
|
+
*
|
|
122
|
+
*/
|
|
78
123
|
hardwareInstancedRendering: boolean[];
|
|
79
124
|
}
|
|
80
125
|
/**
|
|
@@ -876,9 +921,10 @@ export declare class Mesh extends AbstractMesh implements IGetSetVerticesData {
|
|
|
876
921
|
* Note that, under the hood, this method sets a new VertexBuffer each call.
|
|
877
922
|
* @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/transforms/center_origin/bakingTransforms
|
|
878
923
|
* @param bakeIndependentlyOfChildren indicates whether to preserve all child nodes' World Matrix during baking
|
|
924
|
+
* @param forceUnique indicates whether to force the mesh geometry to be unique
|
|
879
925
|
* @returns the current mesh
|
|
880
926
|
*/
|
|
881
|
-
bakeCurrentTransformIntoVertices(bakeIndependentlyOfChildren?: boolean): Mesh;
|
|
927
|
+
bakeCurrentTransformIntoVertices(bakeIndependentlyOfChildren?: boolean, forceUnique?: boolean): Mesh;
|
|
882
928
|
/** @internal */
|
|
883
929
|
get _positions(): Nullable<Vector3[]>;
|
|
884
930
|
/** @internal */
|
package/Meshes/mesh.js
CHANGED
|
@@ -43,9 +43,21 @@ class _InstanceDataStorage {
|
|
|
43
43
|
**/
|
|
44
44
|
export class _InstancesBatch {
|
|
45
45
|
constructor() {
|
|
46
|
+
/**
|
|
47
|
+
*
|
|
48
|
+
*/
|
|
46
49
|
this.mustReturn = false;
|
|
50
|
+
/**
|
|
51
|
+
*
|
|
52
|
+
*/
|
|
47
53
|
this.visibleInstances = new Array();
|
|
54
|
+
/**
|
|
55
|
+
*
|
|
56
|
+
*/
|
|
48
57
|
this.renderSelf = [];
|
|
58
|
+
/**
|
|
59
|
+
*
|
|
60
|
+
*/
|
|
49
61
|
this.hardwareInstancedRendering = [];
|
|
50
62
|
}
|
|
51
63
|
}
|
|
@@ -2413,9 +2425,13 @@ export class Mesh extends AbstractMesh {
|
|
|
2413
2425
|
* Note that, under the hood, this method sets a new VertexBuffer each call.
|
|
2414
2426
|
* @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/transforms/center_origin/bakingTransforms
|
|
2415
2427
|
* @param bakeIndependentlyOfChildren indicates whether to preserve all child nodes' World Matrix during baking
|
|
2428
|
+
* @param forceUnique indicates whether to force the mesh geometry to be unique
|
|
2416
2429
|
* @returns the current mesh
|
|
2417
2430
|
*/
|
|
2418
|
-
bakeCurrentTransformIntoVertices(bakeIndependentlyOfChildren = true) {
|
|
2431
|
+
bakeCurrentTransformIntoVertices(bakeIndependentlyOfChildren = true, forceUnique = false) {
|
|
2432
|
+
if (forceUnique) {
|
|
2433
|
+
this.makeGeometryUnique();
|
|
2434
|
+
}
|
|
2419
2435
|
this.bakeTransformIntoVertices(this.computeWorldMatrix(true));
|
|
2420
2436
|
this.resetLocalMatrix(bakeIndependentlyOfChildren);
|
|
2421
2437
|
return this;
|
|
@@ -2700,6 +2716,10 @@ export class Mesh extends AbstractMesh {
|
|
|
2700
2716
|
if (uvs) {
|
|
2701
2717
|
target.setUVs(separateVertices(uvs, 2));
|
|
2702
2718
|
}
|
|
2719
|
+
const colors = target.getColors();
|
|
2720
|
+
if (colors) {
|
|
2721
|
+
target.setColors(separateVertices(colors, 4));
|
|
2722
|
+
}
|
|
2703
2723
|
}
|
|
2704
2724
|
this.morphTargetManager.synchronize();
|
|
2705
2725
|
}
|
|
@@ -3355,6 +3375,10 @@ export class Mesh extends AbstractMesh {
|
|
|
3355
3375
|
if (uv2s) {
|
|
3356
3376
|
this.geometry.setVerticesData(VertexBuffer.UV2Kind + "_" + index, uv2s, false, 2);
|
|
3357
3377
|
}
|
|
3378
|
+
const colors = morphTarget.getColors();
|
|
3379
|
+
if (colors) {
|
|
3380
|
+
this.geometry.setVerticesData(VertexBuffer.ColorKind + index, colors, false, 4);
|
|
3381
|
+
}
|
|
3358
3382
|
}
|
|
3359
3383
|
}
|
|
3360
3384
|
else {
|
|
@@ -3374,6 +3398,9 @@ export class Mesh extends AbstractMesh {
|
|
|
3374
3398
|
if (this.geometry.isVerticesDataPresent(VertexBuffer.UV2Kind + index)) {
|
|
3375
3399
|
this.geometry.removeVerticesData(VertexBuffer.UV2Kind + "_" + index);
|
|
3376
3400
|
}
|
|
3401
|
+
if (this.geometry.isVerticesDataPresent(VertexBuffer.ColorKind + index)) {
|
|
3402
|
+
this.geometry.removeVerticesData(VertexBuffer.ColorKind + index);
|
|
3403
|
+
}
|
|
3377
3404
|
index++;
|
|
3378
3405
|
}
|
|
3379
3406
|
}
|