浏览代码

Make sure the metallic/roughness defines are set

Popov72 5 年之前
父节点
当前提交
f5cc26de81
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      src/Materials/Node/Blocks/Fragment/PBR/pbrMetallicRoughnessBlock.ts

+ 4 - 0
src/Materials/Node/Blocks/Fragment/PBR/pbrMetallicRoughnessBlock.ts

@@ -257,8 +257,12 @@ export class PBRMetallicRoughnessBlock extends NodeMaterialBlock {
         aoBlock?.prepareDefines(mesh, nodeMaterial, defines);
         aoBlock?.prepareDefines(mesh, nodeMaterial, defines);
 
 
         // Reflectivity
         // Reflectivity
+        const metalRoughTextBlock = this.metalRoughTexture.connectedPoint?.ownerBlock as Nullable<MetallicRoughnessTextureBlock>;
+
         defines.setValue("REFLECTIVITY", this.metalRoughTexture.isConnected);
         defines.setValue("REFLECTIVITY", this.metalRoughTexture.isConnected);
 
 
+        metalRoughTextBlock?.prepareDefines(mesh, nodeMaterial, defines);
+
         if (!defines._areLightsDirty) {
         if (!defines._areLightsDirty) {
             return;
             return;
         }
         }