@babylonjs/node-editor 7.45.0 → 7.47.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
  },