@babylonjs/core 5.50.0 → 5.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/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/DeviceInput/webDeviceInputSystem.js +2 -2
- package/DeviceInput/webDeviceInputSystem.js.map +1 -1
- package/Engines/engine.d.ts +2 -2
- 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/Background/backgroundMaterial.js +1 -4
- package/Materials/Background/backgroundMaterial.js.map +1 -1
- package/Materials/Node/nodeMaterial.js +1 -4
- package/Materials/Node/nodeMaterial.js.map +1 -1
- package/Materials/PBR/pbrBaseMaterial.d.ts +2 -2
- package/Materials/PBR/pbrBaseMaterial.js +5 -7
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Materials/material.d.ts +1 -0
- package/Materials/material.js +14 -0
- package/Materials/material.js.map +1 -1
- package/Materials/standardMaterial.js +2 -4
- package/Materials/standardMaterial.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/khronosTextureContainer.js +4 -0
- package/Misc/khronosTextureContainer.js.map +1 -1
- package/Misc/observable.js +10 -4
- package/Misc/observable.js.map +1 -1
- package/Misc/sceneRecorder.js +3 -0
- package/Misc/sceneRecorder.js.map +1 -1
- package/Morph/morphTargetManager.js +7 -1
- package/Morph/morphTargetManager.js.map +1 -1
- package/Physics/v2/physicsBody.d.ts +2 -1
- package/Physics/v2/physicsBody.js.map +1 -1
- package/PostProcesses/RenderPipeline/Pipelines/ssao2RenderingPipeline.js +3 -5
- 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/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/XR/native/nativeXRFrame.d.ts +1 -1
- package/XR/native/nativeXRFrame.js.map +1 -1
- package/assetContainer.js +4 -0
- package/assetContainer.js.map +1 -1
- package/package.json +1 -1
- package/scene.d.ts +4 -0
- package/scene.js +6 -0
- package/scene.js.map +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) {
|