Bläddra i källkod

Update icon and colors for PBR blocks

Popov72 4 år sedan
förälder
incheckning
161a748a25

+ 24 - 0
nodeEditor/src/diagram/display/pbrDisplayManager.ts

@@ -0,0 +1,24 @@
+import { IDisplayManager } from './displayManager';
+import { NodeMaterialBlock } from 'babylonjs/Materials/Node/nodeMaterialBlock';
+
+export class PBRDisplayManager implements IDisplayManager {
+    public getHeaderClass(block: NodeMaterialBlock) {
+        return "";
+    }
+
+    public shouldDisplayPortLabels(block: NodeMaterialBlock): boolean {
+        return true;
+    }
+
+    public getHeaderText(block: NodeMaterialBlock): string {
+        return block.name;
+    }
+
+    public getBackgroundColor(block: NodeMaterialBlock): string {
+        return "#6174FA";
+    }
+
+    public updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void {
+        contentArea.classList.add("pbr-block");
+    }
+}

+ 1 - 1
nodeEditor/src/diagram/display/textureDisplayManager.ts

@@ -24,7 +24,7 @@ export class TextureDisplayManager implements IDisplayManager {
     }
 
     public getBackgroundColor(block: NodeMaterialBlock): string {
-        return "#323232";
+        return block.getClassName() === "RefractionBlock" || block.getClassName() === "ReflectionBlock" ? "#6174FA" : "#323232";
     }
 
     public updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void {

+ 6 - 0
nodeEditor/src/diagram/displayLedger.ts

@@ -6,6 +6,7 @@ import { RemapDisplayManager } from './display/remapDisplayManager';
 import { TrigonometryDisplayManager } from './display/trigonometryDisplayManager';
 import { TextureDisplayManager } from './display/textureDisplayManager';
 import { DiscardDisplayManager } from './display/discardDisplayManager';
+import { PBRDisplayManager } from './display/pbrDisplayManager';
 
 export class DisplayLedger {
     public static RegisteredControls: {[key: string] : any} = {};
@@ -25,3 +26,8 @@ DisplayLedger.RegisteredControls["RefractionBlock"] = TextureDisplayManager;
 DisplayLedger.RegisteredControls["CurrentScreenBlock"] = TextureDisplayManager;
 DisplayLedger.RegisteredControls["ParticleTextureBlock"] = TextureDisplayManager;
 DisplayLedger.RegisteredControls["DiscardBlock"] = DiscardDisplayManager;
+DisplayLedger.RegisteredControls["PBRMetallicRoughnessBlock"] = PBRDisplayManager;
+DisplayLedger.RegisteredControls["AnisotropyBlock"] = PBRDisplayManager;
+DisplayLedger.RegisteredControls["ClearCoatBlock"] = PBRDisplayManager;
+DisplayLedger.RegisteredControls["SheenBlock"] = PBRDisplayManager;
+DisplayLedger.RegisteredControls["SubSurfaceBlock"] = PBRDisplayManager;

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 1 - 1
nodeEditor/src/diagram/nodePort.ts