@babylonjs/core 5.50.1 → 5.52.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/Animations/animatable.d.ts +5 -3
- package/Animations/animatable.js +10 -7
- package/Animations/animatable.js.map +1 -1
- package/Animations/animationGroup.js +3 -1
- package/Animations/animationGroup.js.map +1 -1
- package/Animations/runtimeAnimation.d.ts +1 -0
- package/Animations/runtimeAnimation.js +1 -0
- package/Animations/runtimeAnimation.js.map +1 -1
- package/Cameras/Inputs/freeCameraKeyboardMoveInput.d.ts +8 -0
- package/Cameras/Inputs/freeCameraKeyboardMoveInput.js +28 -2
- package/Cameras/Inputs/freeCameraKeyboardMoveInput.js.map +1 -1
- package/Cameras/freeCamera.d.ts +10 -0
- package/Cameras/freeCamera.js +32 -0
- package/Cameras/freeCamera.js.map +1 -1
- package/Cameras/targetCamera.js +4 -1
- package/Cameras/targetCamera.js.map +1 -1
- package/Engines/engineCapabilities.d.ts +2 -0
- package/Engines/engineCapabilities.js.map +1 -1
- package/Engines/nativeEngine.js +1 -0
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/nullEngine.js +1 -0
- package/Engines/nullEngine.js.map +1 -1
- package/Engines/thinEngine.js +3 -2
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.js +1 -0
- package/Engines/webgpuEngine.js.map +1 -1
- package/Inputs/scene.inputManager.d.ts +6 -3
- package/Inputs/scene.inputManager.js +67 -12
- package/Inputs/scene.inputManager.js.map +1 -1
- package/Materials/Node/Blocks/Dual/sceneDepthBlock.d.ts +4 -0
- package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +37 -2
- package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
- package/Materials/Node/nodeMaterialDecorator.d.ts +1 -1
- package/Materials/Node/nodeMaterialDecorator.js.map +1 -1
- package/Materials/PBR/pbrMaterial.js +1 -0
- package/Materials/PBR/pbrMaterial.js.map +1 -1
- package/Materials/Textures/cubeTexture.js +7 -1
- package/Materials/Textures/cubeTexture.js.map +1 -1
- package/Meshes/mesh.js +2 -2
- package/Meshes/mesh.js.map +1 -1
- package/Meshes/mesh.vertexData.d.ts +4 -1
- package/Meshes/mesh.vertexData.js +21 -17
- package/Meshes/mesh.vertexData.js.map +1 -1
- package/Misc/decorators.d.ts +8 -0
- package/Misc/decorators.js +22 -12
- package/Misc/decorators.js.map +1 -1
- package/Misc/environmentTextureTools.js +7 -0
- package/Misc/environmentTextureTools.js.map +1 -1
- package/Misc/khronosTextureContainer.js +4 -0
- package/Misc/khronosTextureContainer.js.map +1 -1
- package/Misc/observable.js +3 -0
- package/Misc/observable.js.map +1 -1
- package/Misc/sceneRecorder.js +3 -0
- package/Misc/sceneRecorder.js.map +1 -1
- package/Misc/virtualJoystick.js +2 -2
- package/Misc/virtualJoystick.js.map +1 -1
- package/Morph/morphTargetManager.js +7 -1
- package/Morph/morphTargetManager.js.map +1 -1
- package/Particles/gpuParticleSystem.js +18 -14
- package/Particles/gpuParticleSystem.js.map +1 -1
- package/Physics/v2/IPhysicsEnginePlugin.d.ts +126 -19
- package/Physics/v2/IPhysicsEnginePlugin.js +6 -0
- package/Physics/v2/IPhysicsEnginePlugin.js.map +1 -1
- package/Physics/v2/physicsAggregate.d.ts +7 -1
- package/Physics/v2/physicsAggregate.js +21 -7
- package/Physics/v2/physicsAggregate.js.map +1 -1
- package/Physics/v2/physicsBody.d.ts +24 -15
- package/Physics/v2/physicsBody.js +46 -20
- package/Physics/v2/physicsBody.js.map +1 -1
- package/Physics/v2/physicsEngineComponent.d.ts +10 -0
- package/Physics/v2/physicsEngineComponent.js +27 -0
- package/Physics/v2/physicsEngineComponent.js.map +1 -1
- package/Physics/v2/physicsMaterial.d.ts +52 -46
- package/Physics/v2/physicsMaterial.js +23 -80
- package/Physics/v2/physicsMaterial.js.map +1 -1
- package/Physics/v2/physicsShape.d.ts +27 -2
- package/Physics/v2/physicsShape.js +52 -1
- package/Physics/v2/physicsShape.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.d.ts +59 -13
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js +131 -56
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.d.ts +65 -13
- package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.js +218 -80
- package/PostProcesses/RenderPipeline/Pipelines/ssrRenderingPipeline.js.map +1 -1
- package/Rendering/depthRenderer.js +1 -1
- package/Rendering/depthRenderer.js.map +1 -1
- package/Rendering/depthRendererSceneComponent.d.ts +2 -1
- package/Rendering/depthRendererSceneComponent.js +2 -2
- package/Rendering/depthRendererSceneComponent.js.map +1 -1
- package/Rendering/geometryBufferRenderer.d.ts +8 -2
- package/Rendering/geometryBufferRenderer.js +32 -10
- package/Rendering/geometryBufferRenderer.js.map +1 -1
- package/Rendering/prePassRenderer.d.ts +18 -2
- package/Rendering/prePassRenderer.js +72 -26
- package/Rendering/prePassRenderer.js.map +1 -1
- package/Shaders/ShadersInclude/screenSpaceRayTrace.js +3 -3
- package/Shaders/ShadersInclude/screenSpaceRayTrace.js.map +1 -1
- package/Shaders/geometry.fragment.js +2 -2
- package/Shaders/geometry.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection2.fragment.js +20 -10
- package/Shaders/screenSpaceReflection2.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection2Blur.fragment.js +1 -1
- package/Shaders/screenSpaceReflection2Blur.fragment.js.map +1 -1
- package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js +9 -2
- package/Shaders/screenSpaceReflection2BlurCombiner.fragment.js.map +1 -1
- package/Shaders/sprites.fragment.js +6 -1
- package/Shaders/sprites.fragment.js.map +1 -1
- package/Shaders/ssao2.fragment.js +0 -2
- package/Shaders/ssao2.fragment.js.map +1 -1
- package/Sprites/spriteManager.d.ts +7 -0
- package/Sprites/spriteManager.js +27 -0
- package/Sprites/spriteManager.js.map +1 -1
- package/Sprites/spriteRenderer.d.ts +8 -0
- package/Sprites/spriteRenderer.js +42 -19
- package/Sprites/spriteRenderer.js.map +1 -1
- package/assetContainer.js +5 -1
- package/assetContainer.js.map +1 -1
- package/package.json +1 -1
|
@@ -209,7 +209,10 @@ export declare class VertexData {
|
|
|
209
209
|
/**
|
|
210
210
|
* @internal
|
|
211
211
|
*/
|
|
212
|
-
_mergeCoroutine(transform: Matrix | undefined, vertexDatas:
|
|
212
|
+
_mergeCoroutine(transform: Matrix | undefined, vertexDatas: {
|
|
213
|
+
vertexData: VertexData;
|
|
214
|
+
transform?: Matrix;
|
|
215
|
+
}[], use32BitsIndices: boolean | undefined, isAsync: boolean, forceCloneIndices: boolean): Coroutine<VertexData>;
|
|
213
216
|
private static _MergeElement;
|
|
214
217
|
private _validate;
|
|
215
218
|
/**
|
|
@@ -325,7 +325,11 @@ export class VertexData {
|
|
|
325
325
|
* @returns the modified VertexData
|
|
326
326
|
*/
|
|
327
327
|
merge(others, use32BitsIndices = false, forceCloneIndices = false) {
|
|
328
|
-
const vertexDatas = Array.isArray(others)
|
|
328
|
+
const vertexDatas = Array.isArray(others)
|
|
329
|
+
? others.map((other) => {
|
|
330
|
+
return { vertexData: other };
|
|
331
|
+
})
|
|
332
|
+
: [{ vertexData: others }];
|
|
329
333
|
return runCoroutineSync(this._mergeCoroutine(undefined, vertexDatas, use32BitsIndices, false, forceCloneIndices));
|
|
330
334
|
}
|
|
331
335
|
/**
|
|
@@ -334,7 +338,7 @@ export class VertexData {
|
|
|
334
338
|
*_mergeCoroutine(transform, vertexDatas, use32BitsIndices = false, isAsync, forceCloneIndices) {
|
|
335
339
|
var _a, _b, _c, _d;
|
|
336
340
|
this._validate();
|
|
337
|
-
const others = vertexDatas.map((vertexData) => vertexData
|
|
341
|
+
const others = vertexDatas.map((vertexData) => vertexData.vertexData);
|
|
338
342
|
for (const other of others) {
|
|
339
343
|
other._validate();
|
|
340
344
|
if (!this.normals !== !other.normals ||
|
|
@@ -375,7 +379,7 @@ export class VertexData {
|
|
|
375
379
|
}
|
|
376
380
|
}
|
|
377
381
|
let positionsOffset = this.positions ? this.positions.length / 3 : 0;
|
|
378
|
-
for (const
|
|
382
|
+
for (const { vertexData: other, transform } of vertexDatas) {
|
|
379
383
|
if (other.indices) {
|
|
380
384
|
for (let index = 0; index < other.indices.length; index++) {
|
|
381
385
|
indices[indicesOffset + index] = other.indices[index] + positionsOffset;
|
|
@@ -393,59 +397,59 @@ export class VertexData {
|
|
|
393
397
|
}
|
|
394
398
|
}
|
|
395
399
|
this.indices = indices;
|
|
396
|
-
this.positions = VertexData._MergeElement(VertexBuffer.PositionKind, this.positions, transform, vertexDatas.map((other) => [other
|
|
400
|
+
this.positions = VertexData._MergeElement(VertexBuffer.PositionKind, this.positions, transform, vertexDatas.map((other) => [other.vertexData.positions, other.transform]));
|
|
397
401
|
if (isAsync) {
|
|
398
402
|
yield;
|
|
399
403
|
}
|
|
400
|
-
this.normals = VertexData._MergeElement(VertexBuffer.NormalKind, this.normals, transform, vertexDatas.map((other) => [other
|
|
404
|
+
this.normals = VertexData._MergeElement(VertexBuffer.NormalKind, this.normals, transform, vertexDatas.map((other) => [other.vertexData.normals, other.transform]));
|
|
401
405
|
if (isAsync) {
|
|
402
406
|
yield;
|
|
403
407
|
}
|
|
404
|
-
this.tangents = VertexData._MergeElement(VertexBuffer.TangentKind, this.tangents, transform, vertexDatas.map((other) => [other
|
|
408
|
+
this.tangents = VertexData._MergeElement(VertexBuffer.TangentKind, this.tangents, transform, vertexDatas.map((other) => [other.vertexData.tangents, other.transform]));
|
|
405
409
|
if (isAsync) {
|
|
406
410
|
yield;
|
|
407
411
|
}
|
|
408
|
-
this.uvs = VertexData._MergeElement(VertexBuffer.UVKind, this.uvs, transform, vertexDatas.map((other) => [other
|
|
412
|
+
this.uvs = VertexData._MergeElement(VertexBuffer.UVKind, this.uvs, transform, vertexDatas.map((other) => [other.vertexData.uvs, other.transform]));
|
|
409
413
|
if (isAsync) {
|
|
410
414
|
yield;
|
|
411
415
|
}
|
|
412
|
-
this.uvs2 = VertexData._MergeElement(VertexBuffer.UV2Kind, this.uvs2, transform, vertexDatas.map((other) => [other
|
|
416
|
+
this.uvs2 = VertexData._MergeElement(VertexBuffer.UV2Kind, this.uvs2, transform, vertexDatas.map((other) => [other.vertexData.uvs2, other.transform]));
|
|
413
417
|
if (isAsync) {
|
|
414
418
|
yield;
|
|
415
419
|
}
|
|
416
|
-
this.uvs3 = VertexData._MergeElement(VertexBuffer.UV3Kind, this.uvs3, transform, vertexDatas.map((other) => [other
|
|
420
|
+
this.uvs3 = VertexData._MergeElement(VertexBuffer.UV3Kind, this.uvs3, transform, vertexDatas.map((other) => [other.vertexData.uvs3, other.transform]));
|
|
417
421
|
if (isAsync) {
|
|
418
422
|
yield;
|
|
419
423
|
}
|
|
420
|
-
this.uvs4 = VertexData._MergeElement(VertexBuffer.UV4Kind, this.uvs4, transform, vertexDatas.map((other) => [other
|
|
424
|
+
this.uvs4 = VertexData._MergeElement(VertexBuffer.UV4Kind, this.uvs4, transform, vertexDatas.map((other) => [other.vertexData.uvs4, other.transform]));
|
|
421
425
|
if (isAsync) {
|
|
422
426
|
yield;
|
|
423
427
|
}
|
|
424
|
-
this.uvs5 = VertexData._MergeElement(VertexBuffer.UV5Kind, this.uvs5, transform, vertexDatas.map((other) => [other
|
|
428
|
+
this.uvs5 = VertexData._MergeElement(VertexBuffer.UV5Kind, this.uvs5, transform, vertexDatas.map((other) => [other.vertexData.uvs5, other.transform]));
|
|
425
429
|
if (isAsync) {
|
|
426
430
|
yield;
|
|
427
431
|
}
|
|
428
|
-
this.uvs6 = VertexData._MergeElement(VertexBuffer.UV6Kind, this.uvs6, transform, vertexDatas.map((other) => [other
|
|
432
|
+
this.uvs6 = VertexData._MergeElement(VertexBuffer.UV6Kind, this.uvs6, transform, vertexDatas.map((other) => [other.vertexData.uvs6, other.transform]));
|
|
429
433
|
if (isAsync) {
|
|
430
434
|
yield;
|
|
431
435
|
}
|
|
432
|
-
this.colors = VertexData._MergeElement(VertexBuffer.ColorKind, this.colors, transform, vertexDatas.map((other) => [other
|
|
436
|
+
this.colors = VertexData._MergeElement(VertexBuffer.ColorKind, this.colors, transform, vertexDatas.map((other) => [other.vertexData.colors, other.transform]));
|
|
433
437
|
if (isAsync) {
|
|
434
438
|
yield;
|
|
435
439
|
}
|
|
436
|
-
this.matricesIndices = VertexData._MergeElement(VertexBuffer.MatricesIndicesKind, this.matricesIndices, transform, vertexDatas.map((other) => [other
|
|
440
|
+
this.matricesIndices = VertexData._MergeElement(VertexBuffer.MatricesIndicesKind, this.matricesIndices, transform, vertexDatas.map((other) => [other.vertexData.matricesIndices, other.transform]));
|
|
437
441
|
if (isAsync) {
|
|
438
442
|
yield;
|
|
439
443
|
}
|
|
440
|
-
this.matricesWeights = VertexData._MergeElement(VertexBuffer.MatricesWeightsKind, this.matricesWeights, transform, vertexDatas.map((other) => [other
|
|
444
|
+
this.matricesWeights = VertexData._MergeElement(VertexBuffer.MatricesWeightsKind, this.matricesWeights, transform, vertexDatas.map((other) => [other.vertexData.matricesWeights, other.transform]));
|
|
441
445
|
if (isAsync) {
|
|
442
446
|
yield;
|
|
443
447
|
}
|
|
444
|
-
this.matricesIndicesExtra = VertexData._MergeElement(VertexBuffer.MatricesIndicesExtraKind, this.matricesIndicesExtra, transform, vertexDatas.map((other) => [other
|
|
448
|
+
this.matricesIndicesExtra = VertexData._MergeElement(VertexBuffer.MatricesIndicesExtraKind, this.matricesIndicesExtra, transform, vertexDatas.map((other) => [other.vertexData.matricesIndicesExtra, other.transform]));
|
|
445
449
|
if (isAsync) {
|
|
446
450
|
yield;
|
|
447
451
|
}
|
|
448
|
-
this.matricesWeightsExtra = VertexData._MergeElement(VertexBuffer.MatricesWeightsExtraKind, this.matricesWeightsExtra, transform, vertexDatas.map((other) => [other
|
|
452
|
+
this.matricesWeightsExtra = VertexData._MergeElement(VertexBuffer.MatricesWeightsExtraKind, this.matricesWeightsExtra, transform, vertexDatas.map((other) => [other.vertexData.matricesWeightsExtra, other.transform]));
|
|
449
453
|
return this;
|
|
450
454
|
}
|
|
451
455
|
static _MergeElement(kind, source, transform, others) {
|