@babylonjs/core 7.0.0 → 7.2.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/animationGroup.d.ts +1 -1
- package/Animations/animationGroup.js +1 -1
- package/Animations/animationGroup.js.map +1 -1
- package/Animations/runtimeAnimation.js +10 -3
- package/Animations/runtimeAnimation.js.map +1 -1
- package/Compute/computeEffect.d.ts +3 -4
- package/Compute/computeEffect.js +40 -33
- package/Compute/computeEffect.js.map +1 -1
- package/Compute/computeShader.d.ts +2 -2
- package/Compute/computeShader.js.map +1 -1
- package/Engines/Extensions/engine.computeShader.d.ts +27 -3
- package/Engines/Extensions/engine.computeShader.js +1 -1
- package/Engines/Extensions/engine.computeShader.js.map +1 -1
- package/Engines/Extensions/engine.multiRender.js +1 -1
- package/Engines/Extensions/engine.multiRender.js.map +1 -1
- package/Engines/Extensions/engine.renderTarget.js +12 -2
- package/Engines/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +1 -2
- package/Engines/WebGL/webGLRenderTargetWrapper.js +2 -3
- package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.computeShader.js +22 -0
- package/Engines/WebGPU/Extensions/engine.computeShader.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.multiRender.js +1 -1
- package/Engines/WebGPU/Extensions/engine.multiRender.js.map +1 -1
- package/Engines/WebGPU/Extensions/engine.renderTarget.js +3 -1
- package/Engines/WebGPU/Extensions/engine.renderTarget.js.map +1 -1
- package/Engines/WebGPU/webgpuClearQuad.d.ts +2 -2
- package/Engines/WebGPU/webgpuClearQuad.js +8 -3
- package/Engines/WebGPU/webgpuClearQuad.js.map +1 -1
- package/Engines/WebGPU/webgpuComputePipelineContext.js +4 -2
- package/Engines/WebGPU/webgpuComputePipelineContext.js.map +1 -1
- package/Engines/WebGPU/webgpuHardwareTexture.js +1 -0
- package/Engines/WebGPU/webgpuHardwareTexture.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessor.js +15 -0
- package/Engines/WebGPU/webgpuShaderProcessor.js.map +1 -1
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.d.ts +1 -0
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +10 -2
- package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
- package/Engines/WebGPU/webgpuTextureManager.d.ts +1 -1
- package/Engines/WebGPU/webgpuTextureManager.js +7 -7
- package/Engines/WebGPU/webgpuTextureManager.js.map +1 -1
- package/Engines/nativeEngine.d.ts +1 -0
- package/Engines/nativeEngine.js.map +1 -1
- package/Engines/nullEngine.d.ts +1 -0
- package/Engines/nullEngine.js.map +1 -1
- package/Engines/renderTargetWrapper.d.ts +14 -2
- package/Engines/renderTargetWrapper.js +23 -3
- package/Engines/renderTargetWrapper.js.map +1 -1
- package/Engines/thinEngine.d.ts +3 -7
- package/Engines/thinEngine.js +23 -9
- package/Engines/thinEngine.js.map +1 -1
- package/Engines/webgpuEngine.d.ts +2 -2
- package/Engines/webgpuEngine.js +19 -9
- package/Engines/webgpuEngine.js.map +1 -1
- package/Gizmos/axisScaleGizmo.js +6 -1
- package/Gizmos/axisScaleGizmo.js.map +1 -1
- package/Gizmos/boundingBoxGizmo.d.ts +2 -2
- package/Gizmos/boundingBoxGizmo.js +27 -17
- package/Gizmos/boundingBoxGizmo.js.map +1 -1
- package/Gizmos/scaleGizmo.d.ts +6 -0
- package/Gizmos/scaleGizmo.js +10 -2
- package/Gizmos/scaleGizmo.js.map +1 -1
- package/Lights/Shadows/cascadedShadowGenerator.js +1 -1
- package/Lights/Shadows/cascadedShadowGenerator.js.map +1 -1
- package/Lights/Shadows/shadowGenerator.js +17 -2
- package/Lights/Shadows/shadowGenerator.js.map +1 -1
- package/Materials/Node/Blocks/Dual/textureBlock.js +5 -0
- package/Materials/Node/Blocks/Dual/textureBlock.js.map +1 -1
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +2 -0
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
- package/Materials/Node/Blocks/addBlock.d.ts +2 -15
- package/Materials/Node/Blocks/addBlock.js +4 -32
- package/Materials/Node/Blocks/addBlock.js.map +1 -1
- package/Materials/Node/Blocks/baseMathBlock.d.ts +26 -0
- package/Materials/Node/Blocks/baseMathBlock.js +84 -0
- package/Materials/Node/Blocks/baseMathBlock.js.map +1 -0
- package/Materials/Node/Blocks/divideBlock.d.ts +2 -15
- package/Materials/Node/Blocks/divideBlock.js +4 -32
- package/Materials/Node/Blocks/divideBlock.js.map +1 -1
- package/Materials/Node/Blocks/multiplyBlock.d.ts +2 -15
- package/Materials/Node/Blocks/multiplyBlock.js +4 -32
- package/Materials/Node/Blocks/multiplyBlock.js.map +1 -1
- package/Materials/Node/Blocks/subtractBlock.d.ts +2 -15
- package/Materials/Node/Blocks/subtractBlock.js +4 -32
- package/Materials/Node/Blocks/subtractBlock.js.map +1 -1
- package/Materials/Node/nodeMaterialBlockConnectionPoint.d.ts +4 -0
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js +7 -0
- package/Materials/Node/nodeMaterialBlockConnectionPoint.js.map +1 -1
- package/Materials/PBR/pbrBaseMaterial.js +1 -5
- package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
- package/Materials/PBR/pbrClearCoatConfiguration.d.ts +0 -1
- package/Materials/PBR/pbrClearCoatConfiguration.js +3 -12
- package/Materials/PBR/pbrClearCoatConfiguration.js.map +1 -1
- package/Materials/PBR/pbrIridescenceConfiguration.d.ts +1 -4
- package/Materials/PBR/pbrIridescenceConfiguration.js +5 -15
- package/Materials/PBR/pbrIridescenceConfiguration.js.map +1 -1
- package/Materials/PBR/pbrSheenConfiguration.d.ts +0 -1
- package/Materials/PBR/pbrSheenConfiguration.js +3 -12
- package/Materials/PBR/pbrSheenConfiguration.js.map +1 -1
- package/Materials/PBR/pbrSubSurfaceConfiguration.js +5 -17
- package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
- package/Materials/Textures/baseTexture.d.ts +0 -6
- package/Materials/Textures/baseTexture.js +0 -8
- package/Materials/Textures/baseTexture.js.map +1 -1
- package/Materials/Textures/renderTargetTexture.d.ts +8 -24
- package/Materials/Textures/renderTargetTexture.js +13 -8
- package/Materials/Textures/renderTargetTexture.js.map +1 -1
- package/Materials/Textures/texture.d.ts +5 -8
- package/Materials/Textures/texture.js +10 -20
- package/Materials/Textures/texture.js.map +1 -1
- package/Materials/Textures/textureCreationOptions.d.ts +1 -0
- package/Materials/Textures/textureCreationOptions.js.map +1 -1
- package/Materials/Textures/thinTexture.js +1 -1
- package/Materials/Textures/thinTexture.js.map +1 -1
- package/Materials/effect.d.ts +3 -3
- package/Materials/effect.js.map +1 -1
- package/Materials/shaderMaterial.d.ts +3 -3
- package/Materials/shaderMaterial.js.map +1 -1
- package/Maths/math.vector.d.ts +12 -0
- package/Maths/math.vector.js +17 -2
- package/Maths/math.vector.js.map +1 -1
- package/Maths/tensor.d.ts +13 -11
- package/Maths/tensor.js.map +1 -1
- package/Meshes/Builders/greasedLineBuilder.js +14 -0
- package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
- package/Meshes/Builders/ribbonBuilder.js +32 -28
- package/Meshes/Builders/ribbonBuilder.js.map +1 -1
- package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +18 -6
- package/Meshes/GreasedLine/greasedLineBaseMesh.js +17 -1
- package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -1
- package/Meshes/GreasedLine/greasedLineMesh.d.ts +0 -2
- package/Meshes/GreasedLine/greasedLineMesh.js +84 -77
- package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -1
- package/Meshes/GreasedLine/greasedLineRibbonMesh.js +19 -4
- package/Meshes/GreasedLine/greasedLineRibbonMesh.js.map +1 -1
- package/Meshes/Node/Blocks/mathBlock.d.ts +6 -0
- package/Meshes/Node/Blocks/mathBlock.js +95 -23
- package/Meshes/Node/Blocks/mathBlock.js.map +1 -1
- package/Meshes/Node/nodeGeometryBlockConnectionPoint.d.ts +4 -0
- package/Meshes/Node/nodeGeometryBlockConnectionPoint.js +7 -0
- package/Meshes/Node/nodeGeometryBlockConnectionPoint.js.map +1 -1
- package/Misc/greasedLineTools.d.ts +6 -0
- package/Misc/greasedLineTools.js +21 -0
- package/Misc/greasedLineTools.js.map +1 -1
- package/Rendering/depthPeelingRenderer.js +1 -1
- package/Rendering/depthPeelingRenderer.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderer.js +1 -1
- package/Rendering/fluidRenderer/fluidRenderer.js.map +1 -1
- package/Rendering/reflectiveShadowMap.js +1 -1
- package/Rendering/reflectiveShadowMap.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockClearcoat.js +0 -4
- package/Shaders/ShadersInclude/pbrBlockClearcoat.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockIridescence.js +0 -3
- package/Shaders/ShadersInclude/pbrBlockIridescence.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockSheen.js +1 -5
- package/Shaders/ShadersInclude/pbrBlockSheen.js.map +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js +1 -1
- package/Shaders/ShadersInclude/pbrBlockSubSurface.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDebug.js +2 -0
- package/Shaders/ShadersInclude/pbrDebug.js.map +1 -1
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js +2 -2
- package/Shaders/ShadersInclude/pbrFragmentSamplersDeclaration.js.map +1 -1
- package/Shaders/greasedLine.vertex.js +3 -3
- package/Shaders/greasedLine.vertex.js.map +1 -1
- package/Shaders/pbr.fragment.js +4 -4
- package/Shaders/pbr.fragment.js.map +1 -1
- package/ShadersWGSL/clearQuad.fragment.js +11 -0
- package/ShadersWGSL/clearQuad.fragment.js.map +1 -0
- package/ShadersWGSL/clearQuad.vertex.js +22 -0
- package/ShadersWGSL/clearQuad.vertex.js.map +1 -0
- package/XR/features/WebXRHandTracking.d.ts +5 -0
- package/XR/features/WebXRHandTracking.js +6 -0
- package/XR/features/WebXRHandTracking.js.map +1 -1
- package/node.js +1 -6
- package/node.js.map +1 -1
- package/package.json +1 -1
- package/Shaders/clearQuad.fragment.js +0 -10
- package/Shaders/clearQuad.fragment.js.map +0 -1
- package/Shaders/clearQuad.vertex.js +0 -19
- package/Shaders/clearQuad.vertex.js.map +0 -1
- /package/{Shaders → ShadersWGSL}/clearQuad.fragment.d.ts +0 -0
- /package/{Shaders → ShadersWGSL}/clearQuad.vertex.d.ts +0 -0
|
@@ -546,10 +546,10 @@ export declare class WebGPUEngine extends Engine {
|
|
|
546
546
|
* @param shaderLanguage the language the shader is written in (default: GLSL)
|
|
547
547
|
* @returns the new Effect
|
|
548
548
|
*/
|
|
549
|
-
createEffect(baseName: IShaderPath & {
|
|
549
|
+
createEffect(baseName: string | (IShaderPath & {
|
|
550
550
|
vertexToken?: string;
|
|
551
551
|
fragmentToken?: string;
|
|
552
|
-
}, attributesNamesOrOptions: string[] | IEffectCreationOptions, uniformsNamesOrEngine: string[] | Engine, samplers?: string[], defines?: string, fallbacks?: EffectFallbacks, onCompiled?: Nullable<(effect: Effect) => void>, onError?: Nullable<(effect: Effect, errors: string) => void>, indexParameters?: any, shaderLanguage?: ShaderLanguage): Effect;
|
|
552
|
+
}), attributesNamesOrOptions: string[] | IEffectCreationOptions, uniformsNamesOrEngine: string[] | Engine, samplers?: string[], defines?: string, fallbacks?: EffectFallbacks, onCompiled?: Nullable<(effect: Effect) => void>, onError?: Nullable<(effect: Effect, errors: string) => void>, indexParameters?: any, shaderLanguage?: ShaderLanguage): Effect;
|
|
553
553
|
private _compileRawShaderToSpirV;
|
|
554
554
|
private _compileShaderToSpirV;
|
|
555
555
|
private _getWGSLShader;
|
package/Engines/webgpuEngine.js
CHANGED
|
@@ -1668,12 +1668,13 @@ export class WebGPUEngine extends Engine {
|
|
|
1668
1668
|
const texture = new InternalTexture(this, source);
|
|
1669
1669
|
const width = size.width || size;
|
|
1670
1670
|
const height = size.height || size;
|
|
1671
|
+
const depth = size.depth || 0;
|
|
1671
1672
|
const layers = size.layers || 0;
|
|
1672
1673
|
texture.baseWidth = width;
|
|
1673
1674
|
texture.baseHeight = height;
|
|
1674
1675
|
texture.width = width;
|
|
1675
1676
|
texture.height = height;
|
|
1676
|
-
texture.depth = layers;
|
|
1677
|
+
texture.depth = depth || layers;
|
|
1677
1678
|
texture.isReady = true;
|
|
1678
1679
|
texture.samples = fullOptions.samples;
|
|
1679
1680
|
texture.generateMipMaps = fullOptions.generateMipMaps ? true : false;
|
|
@@ -1681,6 +1682,7 @@ export class WebGPUEngine extends Engine {
|
|
|
1681
1682
|
texture.type = fullOptions.type;
|
|
1682
1683
|
texture.format = fullOptions.format;
|
|
1683
1684
|
texture.is2DArray = layers > 0;
|
|
1685
|
+
texture.is3D = depth > 0;
|
|
1684
1686
|
texture._cachedWrapU = 0;
|
|
1685
1687
|
texture._cachedWrapV = 0;
|
|
1686
1688
|
texture._useSRGBBuffer = fullOptions.useSRGBBuffer;
|
|
@@ -1994,7 +1996,7 @@ export class WebGPUEngine extends Engine {
|
|
|
1994
1996
|
this._textureHelper.generateCubeMipmaps(gpuHardwareTexture, format, mipmapCount, commandEncoder);
|
|
1995
1997
|
}
|
|
1996
1998
|
else {
|
|
1997
|
-
this._textureHelper.generateMipmaps(gpuHardwareTexture, format, mipmapCount, 0, commandEncoder);
|
|
1999
|
+
this._textureHelper.generateMipmaps(gpuHardwareTexture, format, mipmapCount, 0, texture.is3D, commandEncoder);
|
|
1998
2000
|
}
|
|
1999
2001
|
}
|
|
2000
2002
|
/**
|
|
@@ -2223,11 +2225,13 @@ export class WebGPUEngine extends Engine {
|
|
|
2223
2225
|
const faceIndex = rtWrapper.faceIndices?.[i] ?? 0;
|
|
2224
2226
|
const viewDescriptor = {
|
|
2225
2227
|
...this._rttRenderPassWrapper.colorAttachmentViewDescriptor,
|
|
2228
|
+
dimension: mrtTexture.is3D ? WebGPUConstants.TextureViewDimension.E3d : WebGPUConstants.TextureViewDimension.E2d,
|
|
2226
2229
|
format: gpuMRTWrapper.format,
|
|
2227
|
-
baseArrayLayer: mrtTexture.isCube ? layerIndex * 6 + faceIndex : layerIndex,
|
|
2230
|
+
baseArrayLayer: mrtTexture.isCube ? layerIndex * 6 + faceIndex : mrtTexture.is3D ? 0 : layerIndex,
|
|
2228
2231
|
};
|
|
2229
2232
|
const msaaViewDescriptor = {
|
|
2230
2233
|
...this._rttRenderPassWrapper.colorAttachmentViewDescriptor,
|
|
2234
|
+
dimension: mrtTexture.is3D ? WebGPUConstants.TextureViewDimension.E3d : WebGPUConstants.TextureViewDimension.E2d,
|
|
2231
2235
|
format: gpuMRTWrapper.format,
|
|
2232
2236
|
baseArrayLayer: 0,
|
|
2233
2237
|
};
|
|
@@ -2237,6 +2241,7 @@ export class WebGPUEngine extends Engine {
|
|
|
2237
2241
|
colorAttachments.push({
|
|
2238
2242
|
view: colorMSAATextureView ? colorMSAATextureView : colorTextureView,
|
|
2239
2243
|
resolveTarget: gpuMSAATexture ? colorTextureView : undefined,
|
|
2244
|
+
depthSlice: mrtTexture.is3D ? layerIndex : undefined,
|
|
2240
2245
|
clearValue: index !== 0 && mustClearColor ? (isRTInteger ? clearColorForIntegerRT : clearColor) : undefined,
|
|
2241
2246
|
loadOp: index !== 0 && mustClearColor ? WebGPUConstants.LoadOp.Clear : WebGPUConstants.LoadOp.Load,
|
|
2242
2247
|
storeOp: WebGPUConstants.StoreOp.Store,
|
|
@@ -2252,6 +2257,11 @@ export class WebGPUEngine extends Engine {
|
|
|
2252
2257
|
if (internalTexture) {
|
|
2253
2258
|
const gpuWrapper = internalTexture._hardwareTexture;
|
|
2254
2259
|
const gpuTexture = gpuWrapper.underlyingResource;
|
|
2260
|
+
let depthSlice = undefined;
|
|
2261
|
+
if (rtWrapper.is3D) {
|
|
2262
|
+
depthSlice = this._rttRenderPassWrapper.colorAttachmentViewDescriptor.baseArrayLayer;
|
|
2263
|
+
this._rttRenderPassWrapper.colorAttachmentViewDescriptor.baseArrayLayer = 0;
|
|
2264
|
+
}
|
|
2255
2265
|
const gpuMSAATexture = gpuWrapper.getMSAATexture();
|
|
2256
2266
|
const colorTextureView = gpuTexture.createView(this._rttRenderPassWrapper.colorAttachmentViewDescriptor);
|
|
2257
2267
|
const colorMSAATextureView = gpuMSAATexture?.createView(this._rttRenderPassWrapper.colorAttachmentViewDescriptor);
|
|
@@ -2259,6 +2269,7 @@ export class WebGPUEngine extends Engine {
|
|
|
2259
2269
|
colorAttachments.push({
|
|
2260
2270
|
view: colorMSAATextureView ? colorMSAATextureView : colorTextureView,
|
|
2261
2271
|
resolveTarget: gpuMSAATexture ? colorTextureView : undefined,
|
|
2272
|
+
depthSlice,
|
|
2262
2273
|
clearValue: mustClearColor ? (isRTInteger ? clearColorForIntegerRT : clearColor) : undefined,
|
|
2263
2274
|
loadOp: mustClearColor ? WebGPUConstants.LoadOp.Clear : WebGPUConstants.LoadOp.Load,
|
|
2264
2275
|
storeOp: WebGPUConstants.StoreOp.Store,
|
|
@@ -2430,15 +2441,14 @@ export class WebGPUEngine extends Engine {
|
|
|
2430
2441
|
this._endCurrentRenderPass();
|
|
2431
2442
|
}
|
|
2432
2443
|
this._currentRenderTarget = texture;
|
|
2444
|
+
const depthStencilTexture = this._currentRenderTarget._depthStencilTexture;
|
|
2433
2445
|
this._rttRenderPassWrapper.colorAttachmentGPUTextures[0] = hardwareTexture;
|
|
2434
|
-
this._rttRenderPassWrapper.depthTextureFormat =
|
|
2435
|
-
? WebGPUTextureHelper.GetWebGPUTextureFormat(-1, this._currentRenderTarget._depthStencilTexture.format)
|
|
2436
|
-
: undefined;
|
|
2446
|
+
this._rttRenderPassWrapper.depthTextureFormat = depthStencilTexture ? WebGPUTextureHelper.GetWebGPUTextureFormat(-1, depthStencilTexture.format) : undefined;
|
|
2437
2447
|
this._setDepthTextureFormat(this._rttRenderPassWrapper);
|
|
2438
2448
|
this._setColorFormat(this._rttRenderPassWrapper);
|
|
2439
2449
|
this._rttRenderPassWrapper.colorAttachmentViewDescriptor = {
|
|
2440
2450
|
format: this._colorFormat,
|
|
2441
|
-
dimension: WebGPUConstants.TextureViewDimension.E2d,
|
|
2451
|
+
dimension: texture.is3D ? WebGPUConstants.TextureViewDimension.E3d : WebGPUConstants.TextureViewDimension.E2d,
|
|
2442
2452
|
mipLevelCount: 1,
|
|
2443
2453
|
baseArrayLayer: texture.isCube ? layer * 6 + faceIndex : layer,
|
|
2444
2454
|
baseMipLevel: lodLevel,
|
|
@@ -2447,9 +2457,9 @@ export class WebGPUEngine extends Engine {
|
|
|
2447
2457
|
};
|
|
2448
2458
|
this._rttRenderPassWrapper.depthAttachmentViewDescriptor = {
|
|
2449
2459
|
format: this._depthTextureFormat,
|
|
2450
|
-
dimension: WebGPUConstants.TextureViewDimension.E2d,
|
|
2460
|
+
dimension: depthStencilTexture && depthStencilTexture.is3D ? WebGPUConstants.TextureViewDimension.E3d : WebGPUConstants.TextureViewDimension.E2d,
|
|
2451
2461
|
mipLevelCount: 1,
|
|
2452
|
-
baseArrayLayer:
|
|
2462
|
+
baseArrayLayer: depthStencilTexture ? (depthStencilTexture.isCube ? layer * 6 + faceIndex : layer) : 0,
|
|
2453
2463
|
baseMipLevel: 0,
|
|
2454
2464
|
arrayLayerCount: 1,
|
|
2455
2465
|
aspect: WebGPUConstants.TextureAspect.All,
|