@babylonjs/core 5.14.1 → 5.16.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.
Files changed (118) hide show
  1. package/Audio/sound.js +2 -2
  2. package/Audio/sound.js.map +1 -1
  3. package/Cameras/Inputs/BaseCameraMouseWheelInput.d.ts +1 -1
  4. package/Cameras/Inputs/BaseCameraMouseWheelInput.js +8 -2
  5. package/Cameras/Inputs/BaseCameraMouseWheelInput.js.map +1 -1
  6. package/Cameras/Inputs/arcRotateCameraMouseWheelInput.d.ts +0 -1
  7. package/Cameras/Inputs/arcRotateCameraMouseWheelInput.js +7 -2
  8. package/Cameras/Inputs/arcRotateCameraMouseWheelInput.js.map +1 -1
  9. package/Cameras/Inputs/followCameraMouseWheelInput.d.ts +0 -1
  10. package/Cameras/Inputs/followCameraMouseWheelInput.js +7 -2
  11. package/Cameras/Inputs/followCameraMouseWheelInput.js.map +1 -1
  12. package/Cameras/arcRotateCamera.js +8 -2
  13. package/Cameras/arcRotateCamera.js.map +1 -1
  14. package/Cameras/camera.d.ts +15 -5
  15. package/Cameras/camera.js +81 -10
  16. package/Cameras/camera.js.map +1 -1
  17. package/Cameras/targetCamera.js +5 -0
  18. package/Cameras/targetCamera.js.map +1 -1
  19. package/DeviceInput/InputDevices/deviceSourceManager.js +4 -0
  20. package/DeviceInput/InputDevices/deviceSourceManager.js.map +1 -1
  21. package/DeviceInput/InputDevices/internalDeviceSourceManager.d.ts +2 -1
  22. package/DeviceInput/InputDevices/internalDeviceSourceManager.js.map +1 -1
  23. package/DeviceInput/InputDevices/webDeviceInputSystem.js +2 -4
  24. package/DeviceInput/InputDevices/webDeviceInputSystem.js.map +1 -1
  25. package/Engines/Extensions/engine.cubeTexture.js +3 -3
  26. package/Engines/Extensions/engine.cubeTexture.js.map +1 -1
  27. package/Engines/Extensions/engine.rawTexture.js +3 -3
  28. package/Engines/Extensions/engine.rawTexture.js.map +1 -1
  29. package/Engines/Native/nativeInterfaces.d.ts +1 -0
  30. package/Engines/Native/nativeInterfaces.js.map +1 -1
  31. package/Engines/WebGPU/Extensions/engine.rawTexture.js +3 -3
  32. package/Engines/WebGPU/Extensions/engine.rawTexture.js.map +1 -1
  33. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js +6 -6
  34. package/Engines/WebGPU/webgpuShaderProcessorsGLSL.js.map +1 -1
  35. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js +4 -4
  36. package/Engines/WebGPU/webgpuShaderProcessorsWGSL.js.map +1 -1
  37. package/Engines/nativeEngine.d.ts +1 -0
  38. package/Engines/nativeEngine.js +18 -4
  39. package/Engines/nativeEngine.js.map +1 -1
  40. package/Engines/thinEngine.d.ts +17 -3
  41. package/Engines/thinEngine.js +43 -11
  42. package/Engines/thinEngine.js.map +1 -1
  43. package/Engines/webgpuEngine.js +1 -1
  44. package/Engines/webgpuEngine.js.map +1 -1
  45. package/Inputs/scene.inputManager.js +5 -1
  46. package/Inputs/scene.inputManager.js.map +1 -1
  47. package/Legacy/legacy.js +10 -6
  48. package/Legacy/legacy.js.map +1 -1
  49. package/Loading/sceneLoader.js +9 -9
  50. package/Loading/sceneLoader.js.map +1 -1
  51. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js +2 -1
  52. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.js.map +1 -1
  53. package/Materials/Node/Blocks/elbowBlock.js +5 -3
  54. package/Materials/Node/Blocks/elbowBlock.js.map +1 -1
  55. package/Materials/PBR/pbrBaseMaterial.js +4 -4
  56. package/Materials/PBR/pbrBaseMaterial.js.map +1 -1
  57. package/Materials/PBR/pbrClearCoatConfiguration.d.ts +1 -1
  58. package/Materials/PBR/pbrClearCoatConfiguration.js +1 -1
  59. package/Materials/PBR/pbrClearCoatConfiguration.js.map +1 -1
  60. package/Materials/PBR/pbrIridescenceConfiguration.d.ts +1 -1
  61. package/Materials/PBR/pbrIridescenceConfiguration.js +1 -1
  62. package/Materials/PBR/pbrIridescenceConfiguration.js.map +1 -1
  63. package/Materials/PBR/pbrSheenConfiguration.d.ts +1 -1
  64. package/Materials/PBR/pbrSheenConfiguration.js +1 -1
  65. package/Materials/PBR/pbrSheenConfiguration.js.map +1 -1
  66. package/Materials/PBR/pbrSubSurfaceConfiguration.d.ts +1 -1
  67. package/Materials/PBR/pbrSubSurfaceConfiguration.js +1 -1
  68. package/Materials/PBR/pbrSubSurfaceConfiguration.js.map +1 -1
  69. package/Materials/Textures/Loaders/basisTextureLoader.js +6 -1
  70. package/Materials/Textures/Loaders/basisTextureLoader.js.map +1 -1
  71. package/Materials/Textures/baseTexture.d.ts +1 -1
  72. package/Materials/Textures/baseTexture.js +2 -2
  73. package/Materials/Textures/baseTexture.js.map +1 -1
  74. package/Materials/Textures/videoTexture.js +4 -1
  75. package/Materials/Textures/videoTexture.js.map +1 -1
  76. package/Materials/imageProcessingConfiguration.js.map +1 -1
  77. package/Materials/materialHelper.d.ts +1 -1
  78. package/Materials/materialHelper.js +6 -6
  79. package/Materials/materialHelper.js.map +1 -1
  80. package/Maths/math.color.d.ts +15 -3
  81. package/Maths/math.color.js +26 -3
  82. package/Maths/math.color.js.map +1 -1
  83. package/Meshes/Builders/discBuilder.d.ts +26 -0
  84. package/Meshes/Builders/discBuilder.js +1 -1
  85. package/Meshes/Builders/discBuilder.js.map +1 -1
  86. package/Meshes/geometry.js +2 -2
  87. package/Meshes/geometry.js.map +1 -1
  88. package/Meshes/mesh.d.ts +1 -1
  89. package/Meshes/mesh.js +8 -7
  90. package/Meshes/mesh.js.map +1 -1
  91. package/Meshes/transformNode.d.ts +3 -3
  92. package/Meshes/transformNode.js +2 -2
  93. package/Meshes/transformNode.js.map +1 -1
  94. package/Misc/basis.d.ts +8 -0
  95. package/Misc/basis.js +74 -32
  96. package/Misc/basis.js.map +1 -1
  97. package/Misc/screenshotTools.js +3 -0
  98. package/Misc/screenshotTools.js.map +1 -1
  99. package/Particles/particleHelper.js +4 -4
  100. package/Particles/particleHelper.js.map +1 -1
  101. package/PostProcesses/volumetricLightScatteringPostProcess.d.ts +0 -2
  102. package/PostProcesses/volumetricLightScatteringPostProcess.js +22 -15
  103. package/PostProcesses/volumetricLightScatteringPostProcess.js.map +1 -1
  104. package/Rendering/geometryBufferRenderer.js +3 -2
  105. package/Rendering/geometryBufferRenderer.js.map +1 -1
  106. package/Shaders/ShadersInclude/helperFunctions.js +1 -1
  107. package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
  108. package/Shaders/geometry.fragment.js +1 -1
  109. package/Shaders/geometry.fragment.js.map +1 -1
  110. package/XR/webXREnterExitUI.js +1 -1
  111. package/XR/webXREnterExitUI.js.map +1 -1
  112. package/assetContainer.d.ts +1 -1
  113. package/assetContainer.js +11 -11
  114. package/assetContainer.js.map +1 -1
  115. package/package.json +1 -1
  116. package/scene.d.ts +6 -6
  117. package/scene.js +8 -6
  118. package/scene.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"elbowBlock.js","sourceRoot":"","sources":["../../../../../../../lts/core/generated/Materials/Node/Blocks/elbowBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAgC,8BAAiB;IAC7C;;;OAGG;IACH,oBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAMhD;QAJG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;IAC7D,CAAC;IAED;;;OAGG;IACI,iCAAY,GAAnB;QACI,OAAO,YAAY,CAAC;IACxB,CAAC;IAKD,sBAAW,6BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,KAAK,CAAC,WAAW,EAAE;gBACnB,IAAM,KAAK,GAAG,KAAK,CAAC,cAAe,CAAC,UAAU,CAAC;gBAC/C,8CAA8C;gBAC9C,IAAI,KAAK,CAAC,OAAO,EAAE;oBACf,OAAO,wBAAwB,CAAC,MAAM,CAAC;iBAC1C;aACJ;YAED,OAAO,IAAI,CAAC,OAAO,CAAC;QACxB,CAAC;aAED,UAAkB,KAA+B;YAC7C,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE;gBAC9B,OAAO;aACV;YACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC;;;OAPA;IASS,gCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,aAAM,KAAK,CAAC,sBAAsB,UAAO,CAAC;QAE1G,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,iBAAC;AAAD,CAAC,AArED,CAAgC,iBAAiB,GAqEhD;;AAED,aAAa,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from \"../nodeMaterialBlock\";\r\nimport { NodeMaterialBlockConnectionPointTypes } from \"../Enums/nodeMaterialBlockConnectionPointTypes\";\r\nimport type { NodeMaterialBuildState } from \"../nodeMaterialBuildState\";\r\nimport type { NodeMaterialConnectionPoint } from \"../nodeMaterialBlockConnectionPoint\";\r\nimport { NodeMaterialBlockTargets } from \"../Enums/nodeMaterialBlockTargets\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * Block used as a pass through\r\n */\r\nexport class ElbowBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ElbowBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ElbowBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n /**\r\n * Gets or sets the target of the block\r\n */\r\n public get target() {\r\n const input = this._inputs[0];\r\n if (input.isConnected) {\r\n const block = input.connectedPoint!.ownerBlock;\r\n // Return vertex if connected to an input node\r\n if (block.isInput) {\r\n return NodeMaterialBlockTargets.Vertex;\r\n }\r\n }\r\n\r\n return this._target;\r\n }\r\n\r\n public set target(value: NodeMaterialBlockTargets) {\r\n if ((this._target & value) !== 0) {\r\n return;\r\n }\r\n this._target = value;\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n const output = this._outputs[0];\r\n const input = this._inputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = ${input.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ElbowBlock\", ElbowBlock);\r\n"]}
1
+ {"version":3,"file":"elbowBlock.js","sourceRoot":"","sources":["../../../../../../../lts/core/generated/Materials/Node/Blocks/elbowBlock.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gDAAgD,CAAC;AAGvG,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD;;GAEG;AACH;IAAgC,8BAAiB;IAC7C;;;OAGG;IACH,oBAAmB,IAAY;QAA/B,YACI,kBAAM,IAAI,EAAE,wBAAwB,CAAC,OAAO,CAAC,SAMhD;QAJG,KAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qCAAqC,CAAC,UAAU,CAAC,CAAC;QAC9E,KAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,qCAAqC,CAAC,YAAY,CAAC,CAAC;QAElF,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,qBAAqB,GAAG,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;;IAC7D,CAAC;IAED;;;OAGG;IACI,iCAAY,GAAnB;QACI,OAAO,YAAY,CAAC;IACxB,CAAC;IAKD,sBAAW,6BAAK;QAHhB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;;;OAAA;IAKD,sBAAW,8BAAM;QAHjB;;WAEG;aACH;YACI,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,KAAK,CAAC,WAAW,EAAE;gBACnB,IAAM,KAAK,GAAG,KAAK,CAAC,cAAe,CAAC,UAAU,CAAC;gBAC/C,IAAI,KAAK,CAAC,MAAM,KAAK,wBAAwB,CAAC,iBAAiB,EAAE;oBAC7D,OAAO,KAAK,CAAC,MAAM,CAAC;iBACvB;gBAED,IAAI,KAAK,CAAC,cAAe,CAAC,MAAM,KAAK,wBAAwB,CAAC,iBAAiB,EAAE;oBAC7E,OAAO,KAAK,CAAC,cAAe,CAAC,MAAM,CAAC;iBACvC;aACJ;YAED,OAAO,IAAI,CAAC,OAAO,CAAC;QACxB,CAAC;aAED,UAAkB,KAA+B;YAC7C,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE;gBAC9B,OAAO;aACV;YACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC;;;OAPA;IASS,gCAAW,GAArB,UAAsB,KAA6B;QAC/C,iBAAM,WAAW,YAAC,KAAK,CAAC,CAAC;QAEzB,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE9B,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,aAAM,KAAK,CAAC,sBAAsB,UAAO,CAAC;QAE1G,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,iBAAC;AAAD,CAAC,AAxED,CAAgC,iBAAiB,GAwEhD;;AAED,aAAa,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC","sourcesContent":["import { NodeMaterialBlock } from \"../nodeMaterialBlock\";\r\nimport { NodeMaterialBlockConnectionPointTypes } from \"../Enums/nodeMaterialBlockConnectionPointTypes\";\r\nimport type { NodeMaterialBuildState } from \"../nodeMaterialBuildState\";\r\nimport type { NodeMaterialConnectionPoint } from \"../nodeMaterialBlockConnectionPoint\";\r\nimport { NodeMaterialBlockTargets } from \"../Enums/nodeMaterialBlockTargets\";\r\nimport { RegisterClass } from \"../../../Misc/typeStore\";\r\n/**\r\n * Block used as a pass through\r\n */\r\nexport class ElbowBlock extends NodeMaterialBlock {\r\n /**\r\n * Creates a new ElbowBlock\r\n * @param name defines the block name\r\n */\r\n public constructor(name: string) {\r\n super(name, NodeMaterialBlockTargets.Neutral);\r\n\r\n this.registerInput(\"input\", NodeMaterialBlockConnectionPointTypes.AutoDetect);\r\n this.registerOutput(\"output\", NodeMaterialBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this._outputs[0]._typeConnectionSource = this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public getClassName() {\r\n return \"ElbowBlock\";\r\n }\r\n\r\n /**\r\n * Gets the input component\r\n */\r\n public get input(): NodeMaterialConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeMaterialConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n /**\r\n * Gets or sets the target of the block\r\n */\r\n public get target() {\r\n const input = this._inputs[0];\r\n if (input.isConnected) {\r\n const block = input.connectedPoint!.ownerBlock;\r\n if (block.target !== NodeMaterialBlockTargets.VertexAndFragment) {\r\n return block.target;\r\n }\r\n\r\n if (input.connectedPoint!.target !== NodeMaterialBlockTargets.VertexAndFragment) {\r\n return input.connectedPoint!.target;\r\n }\r\n }\r\n\r\n return this._target;\r\n }\r\n\r\n public set target(value: NodeMaterialBlockTargets) {\r\n if ((this._target & value) !== 0) {\r\n return;\r\n }\r\n this._target = value;\r\n }\r\n\r\n protected _buildBlock(state: NodeMaterialBuildState) {\r\n super._buildBlock(state);\r\n\r\n const output = this._outputs[0];\r\n const input = this._inputs[0];\r\n\r\n state.compilationString += this._declareOutput(output, state) + ` = ${input.associatedVariableName};\\r\\n`;\r\n\r\n return this;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.ElbowBlock\", ElbowBlock);\r\n"]}
@@ -1244,7 +1244,7 @@ var PBRBaseMaterial = /** @class */ (function (_super) {
1244
1244
  if (defines._areTexturesDirty) {
1245
1245
  defines._needUVs = false;
1246
1246
  if (scene.texturesEnabled) {
1247
- if (scene.getEngine().getCaps().textureLOD) {
1247
+ if (engine.getCaps().textureLOD) {
1248
1248
  defines.LODBASEDMICROSFURACE = true;
1249
1249
  }
1250
1250
  if (this._albedoTexture && MaterialFlags.DiffuseTextureEnabled) {
@@ -1340,7 +1340,7 @@ var PBRBaseMaterial = /** @class */ (function (_super) {
1340
1340
  else if (reflectionTexture.isCube) {
1341
1341
  defines.USESPHERICALFROMREFLECTIONMAP = true;
1342
1342
  defines.USEIRRADIANCEMAP = false;
1343
- if (this._forceIrradianceInFragment || this.realTimeFiltering || scene.getEngine().getCaps().maxVaryingVectors <= 8) {
1343
+ if (this._forceIrradianceInFragment || this.realTimeFiltering || engine.getCaps().maxVaryingVectors <= 8) {
1344
1344
  defines.USESPHERICALINVERTEX = false;
1345
1345
  }
1346
1346
  else {
@@ -1443,7 +1443,7 @@ var PBRBaseMaterial = /** @class */ (function (_super) {
1443
1443
  defines.REFLECTIVITY = false;
1444
1444
  defines.MICROSURFACEMAP = false;
1445
1445
  }
1446
- if (scene.getEngine().getCaps().standardDerivatives && this._bumpTexture && MaterialFlags.BumpTextureEnabled && !this._disableBumpMap) {
1446
+ if (engine.getCaps().standardDerivatives && this._bumpTexture && MaterialFlags.BumpTextureEnabled && !this._disableBumpMap) {
1447
1447
  MaterialHelper.PrepareDefinesForMergedUV(this._bumpTexture, defines, "BUMP");
1448
1448
  if (this._useParallax && this._albedoTexture && MaterialFlags.DiffuseTextureEnabled) {
1449
1449
  defines.PARALLAX = true;
@@ -1495,7 +1495,7 @@ var PBRBaseMaterial = /** @class */ (function (_super) {
1495
1495
  else {
1496
1496
  defines.TWOSIDEDLIGHTING = false;
1497
1497
  }
1498
- defines.SPECULARAA = scene.getEngine().getCaps().standardDerivatives && this._enableSpecularAntiAliasing;
1498
+ defines.SPECULARAA = engine.getCaps().standardDerivatives && this._enableSpecularAntiAliasing;
1499
1499
  }
1500
1500
  if (defines._areTexturesDirty || defines._areMiscDirty) {
1501
1501
  defines.ALPHATESTVALUE = "".concat(this._alphaCutOff).concat(this._alphaCutOff % 1 === 0 ? "." : "");