@babylonjs/node-editor 7.45.0 → 7.47.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.
@@ -137,6 +137,7 @@ import { Nullable } from "@babylonjs/core/types";
137
137
  import { LockObject } from "@babylonjs/node-editor/tabs/propertyGrids/lockObject";
138
138
  import { StateManager } from "@babylonjs/node-editor/nodeGraphSystem/stateManager";
139
139
  import { FilesInput } from "@babylonjs/core/Misc/filesInput";
140
+ import { Texture } from "@babylonjs/core/Materials/Textures/texture";
140
141
  export class GlobalState {
141
142
  hostElement: HTMLElement;
142
143
  hostDocument: Document;
@@ -180,6 +181,9 @@ export class GlobalState {
180
181
  pointerOverCanvas: boolean;
181
182
  filesInput: FilesInput;
182
183
  onRefreshPreviewMeshControlComponentRequiredObservable: Observable<void>;
184
+ previewTexture: Nullable<Texture>;
185
+ onPreviewSceneAfterRenderObservable: Observable<void>;
186
+ onPreviewUpdatedObservable: Observable<NodeMaterial>;
183
187
  /** Gets the mode */
184
188
  get mode(): NodeMaterialModes;
185
189
  /** Sets the mode */
@@ -314,8 +318,9 @@ import { LoopBlock } from "@babylonjs/core/Materials/Node/Blocks/loopBlock";
314
318
  import { StorageReadBlock } from "@babylonjs/core/Materials/Node/Blocks/storageReadBlock";
315
319
  import { StorageWriteBlock } from "@babylonjs/core/Materials/Node/Blocks/storageWriteBlock";
316
320
  import { MatrixSplitterBlock } from "@babylonjs/core/Materials/Node/Blocks/matrixSplitterBlock";
321
+ import { NodeMaterialDebugBlock } from "@babylonjs/core/Materials/Node/Blocks/debugBlock";
317
322
  export class BlockTools {
318
- static GetBlockFromString(data: string, scene: Scene, nodeMaterial: NodeMaterial): MatrixSplitterBlock | StorageWriteBlock | StorageReadBlock | LoopBlock | ColorConverterBlock | NodeMaterialTeleportInBlock | NodeMaterialTeleportOutBlock | HeightToNormalBlock | ElbowBlock | TwirlBlock | VoronoiNoiseBlock | ScreenSpaceBlock | CloudBlock | MatrixBuilderBlock | DesaturateBlock | RefractBlock | ReflectBlock | DerivativeBlock | Rotate2dBlock | NormalBlendBlock | WorleyNoise3DBlock | SimplexPerlin3DBlock | BonesBlock | InstancesBlock | MorphTargetsBlock | DiscardBlock | PrePassTextureBlock | ImageProcessingBlock | ColorMergerBlock | VectorMergerBlock | ColorSplitterBlock | VectorSplitterBlock | TextureBlock | ReflectionTextureBlock | LightBlock | FogBlock | VertexOutputBlock | FragmentOutputBlock | PrePassOutputBlock | AddBlock | ClampBlock | ScaleBlock | CrossBlock | DotBlock | PowBlock | MultiplyBlock | TransformBlock | TrigonometryBlock | RemapBlock | NormalizeBlock | FresnelBlock | LerpBlock | NLerpBlock | DivideBlock | SubtractBlock | ModBlock | StepBlock | SmoothStepBlock | OneMinusBlock | ReciprocalBlock | ViewDirectionBlock | LightInformationBlock | MaxBlock | MinBlock | LengthBlock | DistanceBlock | NegateBlock | PerturbNormalBlock | TBNBlock | RandomNumberBlock | ReplaceColorBlock | PosterizeBlock | ArcTan2Block | GradientBlock | FrontFacingBlock | MeshAttributeExistsBlock | WaveBlock | InputBlock | PBRMetallicRoughnessBlock | SheenBlock | AnisotropyBlock | ReflectionBlock | ClearCoatBlock | RefractionBlock | SubSurfaceBlock | CurrentScreenBlock | ParticleTextureBlock | ParticleRampGradientBlock | ParticleBlendMultiplyBlock | FragCoordBlock | ScreenSizeBlock | SceneDepthBlock | ConditionalBlock | ImageSourceBlock | ClipPlanesBlock | FragDepthBlock | ShadowMapBlock | TriPlanarBlock | MatrixTransposeBlock | MatrixDeterminantBlock | CurveBlock | GaussianSplattingBlock | GaussianBlock | SplatReaderBlock | null;
323
+ static GetBlockFromString(data: string, scene: Scene, nodeMaterial: NodeMaterial): NodeMaterialDebugBlock | MatrixSplitterBlock | StorageWriteBlock | StorageReadBlock | LoopBlock | ColorConverterBlock | NodeMaterialTeleportInBlock | NodeMaterialTeleportOutBlock | HeightToNormalBlock | ElbowBlock | TwirlBlock | VoronoiNoiseBlock | ScreenSpaceBlock | CloudBlock | MatrixBuilderBlock | DesaturateBlock | RefractBlock | ReflectBlock | DerivativeBlock | Rotate2dBlock | NormalBlendBlock | WorleyNoise3DBlock | SimplexPerlin3DBlock | BonesBlock | InstancesBlock | MorphTargetsBlock | DiscardBlock | PrePassTextureBlock | ImageProcessingBlock | ColorMergerBlock | VectorMergerBlock | ColorSplitterBlock | VectorSplitterBlock | TextureBlock | ReflectionTextureBlock | LightBlock | FogBlock | VertexOutputBlock | FragmentOutputBlock | PrePassOutputBlock | AddBlock | ClampBlock | ScaleBlock | CrossBlock | DotBlock | PowBlock | MultiplyBlock | TransformBlock | TrigonometryBlock | RemapBlock | NormalizeBlock | FresnelBlock | LerpBlock | NLerpBlock | DivideBlock | SubtractBlock | ModBlock | StepBlock | SmoothStepBlock | OneMinusBlock | ReciprocalBlock | ViewDirectionBlock | LightInformationBlock | MaxBlock | MinBlock | LengthBlock | DistanceBlock | NegateBlock | PerturbNormalBlock | TBNBlock | RandomNumberBlock | ReplaceColorBlock | PosterizeBlock | ArcTan2Block | GradientBlock | FrontFacingBlock | MeshAttributeExistsBlock | WaveBlock | InputBlock | PBRMetallicRoughnessBlock | SheenBlock | AnisotropyBlock | ReflectionBlock | ClearCoatBlock | RefractionBlock | SubSurfaceBlock | CurrentScreenBlock | ParticleTextureBlock | ParticleRampGradientBlock | ParticleBlendMultiplyBlock | FragCoordBlock | ScreenSizeBlock | SceneDepthBlock | ConditionalBlock | ImageSourceBlock | ClipPlanesBlock | FragDepthBlock | ShadowMapBlock | TriPlanarBlock | MatrixTransposeBlock | MatrixDeterminantBlock | CurveBlock | GaussianSplattingBlock | GaussianBlock | SplatReaderBlock | null;
319
324
  static GetColorFromConnectionNodeType(type: NodeMaterialBlockConnectionPointTypes): string;
320
325
  static GetConnectionNodeTypeFromString(type: string): NodeMaterialBlockConnectionPointTypes.Float | NodeMaterialBlockConnectionPointTypes.Vector2 | NodeMaterialBlockConnectionPointTypes.Vector3 | NodeMaterialBlockConnectionPointTypes.Vector4 | NodeMaterialBlockConnectionPointTypes.Color3 | NodeMaterialBlockConnectionPointTypes.Color4 | NodeMaterialBlockConnectionPointTypes.Matrix | NodeMaterialBlockConnectionPointTypes.AutoDetect;
321
326
  static GetStringFromConnectionNodeType(type: NodeMaterialBlockConnectionPointTypes): "" | "Float" | "Vector2" | "Vector3" | "Vector4" | "Matrix" | "Color3" | "Color4";
@@ -485,6 +490,9 @@ export class BlockNodeData implements INodeData {
485
490
  prepareHeaderIcon(iconDiv: HTMLDivElement, img: HTMLImageElement): void;
486
491
  get invisibleEndpoints(): NodeMaterialTeleportOutBlock[] | null;
487
492
  constructor(data: NodeMaterialBlock, nodeContainer: INodeContainer);
493
+ get canBeActivated(): boolean;
494
+ get isActive(): any;
495
+ setIsActive(value: boolean): void;
488
496
  }
489
497
 
490
498
  }
@@ -917,6 +925,24 @@ export class DiscardDisplayManager implements IDisplayManager {
917
925
  updatePreviewContent(nodeData: INodeData, contentArea: HTMLDivElement): void;
918
926
  }
919
927
 
928
+ }
929
+ declare module "@babylonjs/node-editor/graphSystem/display/debugDisplayManager" {
930
+ import { IDisplayManager, VisualContentDescription } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/displayManager";
931
+ import { INodeData } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/nodeData";
932
+ import { Nullable } from "@babylonjs/core/types";
933
+ import { StateManager } from "@babylonjs/node-editor/nodeGraphSystem/stateManager";
934
+ export class DebugDisplayManager implements IDisplayManager {
935
+ private _previewCanvas;
936
+ private _previewImage;
937
+ getHeaderClass(): string;
938
+ shouldDisplayPortLabels(): boolean;
939
+ getHeaderText(nodeData: INodeData): string;
940
+ getBackgroundColor(): string;
941
+ onSelectionChanged?(data: INodeData, selectedData: Nullable<INodeData>, manager: StateManager): void;
942
+ updatePreviewContent(nodeData: INodeData, contentArea: HTMLDivElement): void;
943
+ updateFullVisualContent(data: INodeData, visualContent: VisualContentDescription): void;
944
+ }
945
+
920
946
  }
921
947
  declare module "@babylonjs/node-editor/graphSystem/display/curveDisplayManager" {
922
948
  import { IDisplayManager } from "@babylonjs/node-editor/nodeGraphSystem/interfaces/displayManager";
@@ -1960,6 +1986,8 @@ export class StateManager {
1960
1986
  data: INodeData;
1961
1987
  name: string;
1962
1988
  }>;
1989
+ private _isRebuildQueued;
1990
+ queueRebuildCommand(): void;
1963
1991
  }
1964
1992
 
1965
1993
  }
@@ -2664,6 +2692,9 @@ export interface INodeData {
2664
2692
  outputs: IPortData[];
2665
2693
  invisibleEndpoints?: Nullable<any[]>;
2666
2694
  isConnectedToOutput?: () => boolean;
2695
+ isActive?: boolean;
2696
+ setIsActive?: (value: boolean) => void;
2697
+ canBeActivated?: boolean;
2667
2698
  }
2668
2699
 
2669
2700
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/node-editor",
3
- "version": "7.45.0",
3
+ "version": "7.47.0",
4
4
  "main": "dist/babylon.nodeEditor.max.js",
5
5
  "module": "dist/babylon.nodeEditor.max.js",
6
6
  "esnext": "dist/babylon.nodeEditor.max.js",
@@ -23,7 +23,7 @@
23
23
  "@types/react-dom": ">=16.0.9"
24
24
  },
25
25
  "devDependencies": {
26
- "@babylonjs/core": "^7.45.0",
26
+ "@babylonjs/core": "^7.47.0",
27
27
  "react": "^17.0.2",
28
28
  "react-dom": "^17.0.2"
29
29
  },