@babylonjs/core 7.32.4 → 7.33.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 (126) hide show
  1. package/Decorators/nodeDecorator.d.ts +4 -0
  2. package/Decorators/nodeDecorator.js.map +1 -1
  3. package/Engines/abstractEngine.js +2 -2
  4. package/Engines/abstractEngine.js.map +1 -1
  5. package/FrameGraph/Node/nodeRenderGraph.js.map +1 -1
  6. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js +1 -0
  7. package/Materials/Node/Blocks/Dual/sceneDepthBlock.js.map +1 -1
  8. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.d.ts +16 -0
  9. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js +40 -7
  10. package/Materials/Node/Blocks/Fragment/fragmentOutputBlock.js.map +1 -1
  11. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js +4 -4
  12. package/Materials/Node/Blocks/Fragment/perturbNormalBlock.js.map +1 -1
  13. package/Materials/Node/Blocks/PBR/clearCoatBlock.js +1 -1
  14. package/Materials/Node/Blocks/PBR/clearCoatBlock.js.map +1 -1
  15. package/Materials/Node/Blocks/PBR/reflectionBlock.js +2 -2
  16. package/Materials/Node/Blocks/PBR/reflectionBlock.js.map +1 -1
  17. package/Materials/Node/Blocks/PBR/refractionBlock.js +3 -3
  18. package/Materials/Node/Blocks/PBR/refractionBlock.js.map +1 -1
  19. package/Materials/Node/Blocks/PBR/sheenBlock.js +2 -2
  20. package/Materials/Node/Blocks/PBR/sheenBlock.js.map +1 -1
  21. package/Materials/Node/Blocks/clampBlock.js +2 -2
  22. package/Materials/Node/Blocks/clampBlock.js.map +1 -1
  23. package/Materials/Node/Blocks/cloudBlock.js +1 -1
  24. package/Materials/Node/Blocks/cloudBlock.js.map +1 -1
  25. package/Materials/Node/Blocks/conditionalBlock.js +19 -0
  26. package/Materials/Node/Blocks/conditionalBlock.js.map +1 -1
  27. package/Materials/Node/Blocks/curveBlock.js +37 -0
  28. package/Materials/Node/Blocks/curveBlock.js.map +1 -1
  29. package/Materials/Node/Blocks/loopBlock.js +1 -1
  30. package/Materials/Node/Blocks/loopBlock.js.map +1 -1
  31. package/Materials/Node/Blocks/meshAttributeExistsBlock.js +1 -0
  32. package/Materials/Node/Blocks/meshAttributeExistsBlock.js.map +1 -1
  33. package/Materials/Node/Blocks/transformBlock.d.ts +6 -0
  34. package/Materials/Node/Blocks/transformBlock.js +16 -1
  35. package/Materials/Node/Blocks/transformBlock.js.map +1 -1
  36. package/Materials/Node/Blocks/triPlanarBlock.js +1 -1
  37. package/Materials/Node/Blocks/triPlanarBlock.js.map +1 -1
  38. package/Materials/Node/Blocks/trigonometryBlock.js +29 -0
  39. package/Materials/Node/Blocks/trigonometryBlock.js.map +1 -1
  40. package/Materials/Node/Blocks/waveBlock.js +13 -0
  41. package/Materials/Node/Blocks/waveBlock.js.map +1 -1
  42. package/Materials/Node/Blocks/worleyNoise3DBlock.js +1 -1
  43. package/Materials/Node/Blocks/worleyNoise3DBlock.js.map +1 -1
  44. package/Materials/Node/nodeMaterial.js.map +1 -1
  45. package/Materials/effectRenderer.d.ts +1 -1
  46. package/Materials/effectRenderer.js +2 -2
  47. package/Materials/effectRenderer.js.map +1 -1
  48. package/Meshes/Node/Blocks/Instances/instantiateBaseBlock.js +1 -1
  49. package/Meshes/Node/Blocks/Instances/instantiateBaseBlock.js.map +1 -1
  50. package/Meshes/Node/Blocks/Set/aggregatorBlock.js +1 -0
  51. package/Meshes/Node/Blocks/Set/aggregatorBlock.js.map +1 -1
  52. package/Meshes/Node/Blocks/Set/latticeBlock.js +4 -4
  53. package/Meshes/Node/Blocks/Set/latticeBlock.js.map +1 -1
  54. package/Meshes/Node/Blocks/Set/setColorsBlock.js +1 -1
  55. package/Meshes/Node/Blocks/Set/setColorsBlock.js.map +1 -1
  56. package/Meshes/Node/Blocks/Set/setMaterialIDBlock.js +1 -1
  57. package/Meshes/Node/Blocks/Set/setMaterialIDBlock.js.map +1 -1
  58. package/Meshes/Node/Blocks/Set/setNormalsBlock.js +1 -1
  59. package/Meshes/Node/Blocks/Set/setNormalsBlock.js.map +1 -1
  60. package/Meshes/Node/Blocks/Set/setPositionsBlock.js +1 -1
  61. package/Meshes/Node/Blocks/Set/setPositionsBlock.js.map +1 -1
  62. package/Meshes/Node/Blocks/Set/setTangentsBlock.js +1 -1
  63. package/Meshes/Node/Blocks/Set/setTangentsBlock.js.map +1 -1
  64. package/Meshes/Node/Blocks/Set/setUVsBlock.js +2 -1
  65. package/Meshes/Node/Blocks/Set/setUVsBlock.js.map +1 -1
  66. package/Meshes/Node/Blocks/Sources/boxBlock.js +1 -1
  67. package/Meshes/Node/Blocks/Sources/boxBlock.js.map +1 -1
  68. package/Meshes/Node/Blocks/Sources/capsuleBlock.js +1 -1
  69. package/Meshes/Node/Blocks/Sources/capsuleBlock.js.map +1 -1
  70. package/Meshes/Node/Blocks/Sources/cylinderBlock.js +1 -1
  71. package/Meshes/Node/Blocks/Sources/cylinderBlock.js.map +1 -1
  72. package/Meshes/Node/Blocks/Sources/discBlock.js +1 -1
  73. package/Meshes/Node/Blocks/Sources/discBlock.js.map +1 -1
  74. package/Meshes/Node/Blocks/Sources/gridBlock.js +1 -1
  75. package/Meshes/Node/Blocks/Sources/gridBlock.js.map +1 -1
  76. package/Meshes/Node/Blocks/Sources/icoSphereBlock.js +1 -1
  77. package/Meshes/Node/Blocks/Sources/icoSphereBlock.js.map +1 -1
  78. package/Meshes/Node/Blocks/Sources/meshBlock.js +1 -1
  79. package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -1
  80. package/Meshes/Node/Blocks/Sources/planeBlock.js +1 -1
  81. package/Meshes/Node/Blocks/Sources/planeBlock.js.map +1 -1
  82. package/Meshes/Node/Blocks/Sources/sphereBlock.js +1 -1
  83. package/Meshes/Node/Blocks/Sources/sphereBlock.js.map +1 -1
  84. package/Meshes/Node/Blocks/Sources/torusBlock.js +1 -1
  85. package/Meshes/Node/Blocks/Sources/torusBlock.js.map +1 -1
  86. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js +1 -1
  87. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js.map +1 -1
  88. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js +1 -1
  89. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js.map +1 -1
  90. package/Meshes/Node/Blocks/booleanGeometryBlock.d.ts +5 -0
  91. package/Meshes/Node/Blocks/booleanGeometryBlock.js +43 -13
  92. package/Meshes/Node/Blocks/booleanGeometryBlock.js.map +1 -1
  93. package/Meshes/Node/Blocks/cleanGeometryBlock.js +1 -1
  94. package/Meshes/Node/Blocks/cleanGeometryBlock.js.map +1 -1
  95. package/Meshes/Node/Blocks/conditionBlock.js +1 -0
  96. package/Meshes/Node/Blocks/conditionBlock.js.map +1 -1
  97. package/Meshes/Node/Blocks/geometryClampBlock.js +2 -2
  98. package/Meshes/Node/Blocks/geometryClampBlock.js.map +1 -1
  99. package/Meshes/Node/Blocks/geometryCollectionBlock.js +1 -1
  100. package/Meshes/Node/Blocks/geometryCollectionBlock.js.map +1 -1
  101. package/Meshes/Node/Blocks/geometryCurveBlock.js +1 -0
  102. package/Meshes/Node/Blocks/geometryCurveBlock.js.map +1 -1
  103. package/Meshes/Node/Blocks/geometryOptimizeBlock.js +3 -3
  104. package/Meshes/Node/Blocks/geometryOptimizeBlock.js.map +1 -1
  105. package/Meshes/Node/Blocks/geometryTransformBlock.js +1 -1
  106. package/Meshes/Node/Blocks/geometryTransformBlock.js.map +1 -1
  107. package/Meshes/Node/Blocks/geometryTrigonometryBlock.js +1 -0
  108. package/Meshes/Node/Blocks/geometryTrigonometryBlock.js.map +1 -1
  109. package/Meshes/Node/Blocks/mappingBlock.js +1 -0
  110. package/Meshes/Node/Blocks/mappingBlock.js.map +1 -1
  111. package/Meshes/Node/Blocks/mathBlock.js +1 -0
  112. package/Meshes/Node/Blocks/mathBlock.js.map +1 -1
  113. package/Meshes/Node/Blocks/mergeGeometryBlock.js +1 -1
  114. package/Meshes/Node/Blocks/mergeGeometryBlock.js.map +1 -1
  115. package/Meshes/Node/Blocks/randomBlock.js +1 -0
  116. package/Meshes/Node/Blocks/randomBlock.js.map +1 -1
  117. package/Meshes/Node/nodeGeometry.js.map +1 -1
  118. package/Rendering/IBLShadows/iblShadowsAccumulationPass.js +1 -1
  119. package/Rendering/IBLShadows/iblShadowsAccumulationPass.js.map +1 -1
  120. package/Rendering/IBLShadows/iblShadowsRenderPipeline.d.ts +12 -12
  121. package/Rendering/IBLShadows/iblShadowsRenderPipeline.js.map +1 -1
  122. package/Shaders/iblShadowAccumulation.fragment.js +2 -1
  123. package/Shaders/iblShadowAccumulation.fragment.js.map +1 -1
  124. package/ShadersWGSL/iblShadowAccumulation.fragment.js +2 -1
  125. package/ShadersWGSL/iblShadowAccumulation.fragment.js.map +1 -1
  126. package/package.json +1 -1
@@ -36,6 +36,10 @@ export interface IEditablePropertyListOption {
36
36
  * Interface that defines the options available for an editable property
37
37
  */
38
38
  export interface IEditablePropertyOption {
39
+ /**
40
+ * Define if the property is displayed inside the source block or in a separate property tab
41
+ */
42
+ embedded?: boolean;
39
43
  /** min value */
40
44
  min?: number;
41
45
  /** max value */
@@ -1 +1 @@
1
- {"version":3,"file":"nodeDecorator.js","sourceRoot":"","sources":["../../../../dev/core/src/Decorators/nodeDecorator.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,CAAN,IAAkB,sBAmBjB;AAnBD,WAAkB,sBAAsB;IACpC,4BAA4B;IAC5B,yEAAO,CAAA;IACP,0BAA0B;IAC1B,qEAAK,CAAA;IACL,wBAAwB;IACxB,iEAAG,CAAA;IACH,4BAA4B;IAC5B,yEAAO,CAAA;IACP,mCAAmC;IACnC,mEAAI,CAAA;IACJ,2BAA2B;IAC3B,uEAAM,CAAA;IACN,mFAAmF;IACnF,mFAAY,CAAA;IACZ,oFAAoF;IACpF,qFAAa,CAAA;IACb,kFAAkF;IAClF,iFAAW,CAAA;AACf,CAAC,EAnBiB,sBAAsB,KAAtB,sBAAsB,QAmBvC;AAqDD;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAClC,WAAmB,EACnB,qDAAqE,EACrE,YAAoB,YAAY,EAChC,OAAiC;IAEjC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,EAAE;QACxC,IAAI,SAAS,GAAqC,MAAM,CAAC,UAAU,CAAC;QACpE,IAAI,CAAC,SAAS,EAAE;YACZ,SAAS,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;SACjC;QACD,SAAS,CAAC,IAAI,CAAC;YACX,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,WAAW;YACxB,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,OAAO,IAAI,EAAE;SACzB,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC","sourcesContent":["import type { Nullable } from \"../types\";\r\nimport type { Scene } from \"../scene\";\r\n\r\n/**\r\n * Enum defining the type of properties that can be edited in the property pages in the node editor\r\n */\r\nexport const enum PropertyTypeForEdition {\r\n /** property is a boolean */\r\n Boolean,\r\n /** property is a float */\r\n Float,\r\n /** property is a int */\r\n Int,\r\n /** property is a Vector2 */\r\n Vector2,\r\n /** property is a list of values */\r\n List,\r\n /** property is a Color4 */\r\n Color4,\r\n /** property (int) should be edited as a combo box with a list of sampling modes */\r\n SamplingMode,\r\n /** property (int) should be edited as a combo box with a list of texture formats */\r\n TextureFormat,\r\n /** property (int) should be edited as a combo box with a list of texture types */\r\n TextureType,\r\n}\r\n\r\n/**\r\n * Interface that defines an option in a variable of type list\r\n */\r\nexport interface IEditablePropertyListOption {\r\n /** label of the option */\r\n label: string;\r\n /** value of the option */\r\n value: number;\r\n}\r\n\r\n/**\r\n * Interface that defines the options available for an editable property\r\n */\r\nexport interface IEditablePropertyOption {\r\n /** min value */\r\n min?: number;\r\n /** max value */\r\n max?: number;\r\n /** notifiers: indicates which actions to take when the property is changed */\r\n notifiers?: {\r\n /** the entity should be rebuilt */\r\n rebuild?: boolean;\r\n /** the preview should be updated */\r\n update?: boolean;\r\n /** the onPreviewCommandActivated observer of the preview manager should be triggered */\r\n activatePreviewCommand?: boolean;\r\n /** a callback to trigger */\r\n callback?: (scene: Nullable<Scene>, block: any) => boolean | undefined | void;\r\n /** a callback to validate the property. Returns true if the property is ok, else false. If false, the rebuild/update/callback events won't be called */\r\n onValidation?: (block: any, propertyName: string) => boolean;\r\n };\r\n /** list of the options for a variable of type list */\r\n options?: IEditablePropertyListOption[];\r\n}\r\n\r\n/**\r\n * Interface that describes an editable property\r\n */\r\nexport interface IPropertyDescriptionForEdition {\r\n /** name of the property */\r\n propertyName: string;\r\n /** display name of the property */\r\n displayName: string;\r\n /** type of the property */\r\n type: PropertyTypeForEdition;\r\n /** group of the property - all properties with the same group value will be displayed in a specific section */\r\n groupName: string;\r\n /** options for the property */\r\n options: IEditablePropertyOption;\r\n}\r\n\r\n/**\r\n * Decorator that flags a property in a node block as being editable\r\n * @param displayName the display name of the property\r\n * @param propertyType the type of the property\r\n * @param groupName the group name of the property\r\n * @param options the options of the property\r\n * @returns the decorator\r\n */\r\nexport function editableInPropertyPage(\r\n displayName: string,\r\n propertyType: PropertyTypeForEdition = PropertyTypeForEdition.Boolean,\r\n groupName: string = \"PROPERTIES\",\r\n options?: IEditablePropertyOption\r\n) {\r\n return (target: any, propertyKey: string) => {\r\n let propStore: IPropertyDescriptionForEdition[] = target._propStore;\r\n if (!propStore) {\r\n propStore = [];\r\n target._propStore = propStore;\r\n }\r\n propStore.push({\r\n propertyName: propertyKey,\r\n displayName: displayName,\r\n type: propertyType,\r\n groupName: groupName,\r\n options: options ?? {},\r\n });\r\n };\r\n}\r\n"]}
1
+ {"version":3,"file":"nodeDecorator.js","sourceRoot":"","sources":["../../../../dev/core/src/Decorators/nodeDecorator.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,CAAN,IAAkB,sBAmBjB;AAnBD,WAAkB,sBAAsB;IACpC,4BAA4B;IAC5B,yEAAO,CAAA;IACP,0BAA0B;IAC1B,qEAAK,CAAA;IACL,wBAAwB;IACxB,iEAAG,CAAA;IACH,4BAA4B;IAC5B,yEAAO,CAAA;IACP,mCAAmC;IACnC,mEAAI,CAAA;IACJ,2BAA2B;IAC3B,uEAAM,CAAA;IACN,mFAAmF;IACnF,mFAAY,CAAA;IACZ,oFAAoF;IACpF,qFAAa,CAAA;IACb,kFAAkF;IAClF,iFAAW,CAAA;AACf,CAAC,EAnBiB,sBAAsB,KAAtB,sBAAsB,QAmBvC;AAyDD;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAClC,WAAmB,EACnB,qDAAqE,EACrE,YAAoB,YAAY,EAChC,OAAiC;IAEjC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,EAAE;QACxC,IAAI,SAAS,GAAqC,MAAM,CAAC,UAAU,CAAC;QACpE,IAAI,CAAC,SAAS,EAAE;YACZ,SAAS,GAAG,EAAE,CAAC;YACf,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;SACjC;QACD,SAAS,CAAC,IAAI,CAAC;YACX,YAAY,EAAE,WAAW;YACzB,WAAW,EAAE,WAAW;YACxB,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,OAAO,IAAI,EAAE;SACzB,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC","sourcesContent":["import type { Nullable } from \"../types\";\r\nimport type { Scene } from \"../scene\";\r\n\r\n/**\r\n * Enum defining the type of properties that can be edited in the property pages in the node editor\r\n */\r\nexport const enum PropertyTypeForEdition {\r\n /** property is a boolean */\r\n Boolean,\r\n /** property is a float */\r\n Float,\r\n /** property is a int */\r\n Int,\r\n /** property is a Vector2 */\r\n Vector2,\r\n /** property is a list of values */\r\n List,\r\n /** property is a Color4 */\r\n Color4,\r\n /** property (int) should be edited as a combo box with a list of sampling modes */\r\n SamplingMode,\r\n /** property (int) should be edited as a combo box with a list of texture formats */\r\n TextureFormat,\r\n /** property (int) should be edited as a combo box with a list of texture types */\r\n TextureType,\r\n}\r\n\r\n/**\r\n * Interface that defines an option in a variable of type list\r\n */\r\nexport interface IEditablePropertyListOption {\r\n /** label of the option */\r\n label: string;\r\n /** value of the option */\r\n value: number;\r\n}\r\n\r\n/**\r\n * Interface that defines the options available for an editable property\r\n */\r\nexport interface IEditablePropertyOption {\r\n /**\r\n * Define if the property is displayed inside the source block or in a separate property tab\r\n */\r\n embedded?: boolean;\r\n /** min value */\r\n min?: number;\r\n /** max value */\r\n max?: number;\r\n /** notifiers: indicates which actions to take when the property is changed */\r\n notifiers?: {\r\n /** the entity should be rebuilt */\r\n rebuild?: boolean;\r\n /** the preview should be updated */\r\n update?: boolean;\r\n /** the onPreviewCommandActivated observer of the preview manager should be triggered */\r\n activatePreviewCommand?: boolean;\r\n /** a callback to trigger */\r\n callback?: (scene: Nullable<Scene>, block: any) => boolean | undefined | void;\r\n /** a callback to validate the property. Returns true if the property is ok, else false. If false, the rebuild/update/callback events won't be called */\r\n onValidation?: (block: any, propertyName: string) => boolean;\r\n };\r\n /** list of the options for a variable of type list */\r\n options?: IEditablePropertyListOption[];\r\n}\r\n\r\n/**\r\n * Interface that describes an editable property\r\n */\r\nexport interface IPropertyDescriptionForEdition {\r\n /** name of the property */\r\n propertyName: string;\r\n /** display name of the property */\r\n displayName: string;\r\n /** type of the property */\r\n type: PropertyTypeForEdition;\r\n /** group of the property - all properties with the same group value will be displayed in a specific section */\r\n groupName: string;\r\n /** options for the property */\r\n options: IEditablePropertyOption;\r\n}\r\n\r\n/**\r\n * Decorator that flags a property in a node block as being editable\r\n * @param displayName the display name of the property\r\n * @param propertyType the type of the property\r\n * @param groupName the group name of the property\r\n * @param options the options of the property\r\n * @returns the decorator\r\n */\r\nexport function editableInPropertyPage(\r\n displayName: string,\r\n propertyType: PropertyTypeForEdition = PropertyTypeForEdition.Boolean,\r\n groupName: string = \"PROPERTIES\",\r\n options?: IEditablePropertyOption\r\n) {\r\n return (target: any, propertyKey: string) => {\r\n let propStore: IPropertyDescriptionForEdition[] = target._propStore;\r\n if (!propStore) {\r\n propStore = [];\r\n target._propStore = propStore;\r\n }\r\n propStore.push({\r\n propertyName: propertyKey,\r\n displayName: displayName,\r\n type: propertyType,\r\n groupName: groupName,\r\n options: options ?? {},\r\n });\r\n };\r\n}\r\n"]}
@@ -741,13 +741,13 @@ export class AbstractEngine {
741
741
  */
742
742
  // Not mixed with Version for tooling purpose.
743
743
  static get NpmPackage() {
744
- return "babylonjs@7.32.4";
744
+ return "babylonjs@7.33.0";
745
745
  }
746
746
  /**
747
747
  * Returns the current version of the framework
748
748
  */
749
749
  static get Version() {
750
- return "7.32.4";
750
+ return "7.33.0";
751
751
  }
752
752
  /**
753
753
  * Gets the HTML canvas attached with the current webGL context