Browse Source

Babylon Entities PBR Material Fixes

MackeyK24 8 years ago
parent
commit
210ba0bb42
1 changed files with 20 additions and 8 deletions
  1. 20 8
      Exporters/3ds Max/BabylonExport.Entities/BabylonPBRMaterial.cs

+ 20 - 8
Exporters/3ds Max/BabylonExport.Entities/BabylonPBRMaterial.cs

@@ -125,6 +125,12 @@ namespace BabylonExport.Entities
         public float? metallic { get; set; }
         public float? metallic { get; set; }
 
 
         [DataMember]
         [DataMember]
+        public bool useMicroSurfaceFromReflectivityMapAplha { get; set; }
+
+        [DataMember]
+        public bool linkRefractionWithTransparency { get; set; }
+
+        [DataMember]
         public bool useRoughnessFromMetallicTextureAlpha { get; set; }
         public bool useRoughnessFromMetallicTextureAlpha { get; set; }
 
 
         [DataMember]
         [DataMember]
@@ -170,28 +176,34 @@ namespace BabylonExport.Entities
             specularIntensity = 1.0f;
             specularIntensity = 1.0f;
             cameraExposure = 1.0f;
             cameraExposure = 1.0f;
             cameraContrast = 1.0f;
             cameraContrast = 1.0f;
+            indexOfRefraction = 0.66f;
+            useRadianceOverAlpha = true;
+            useSpecularOverAlpha = true;
             useEmissiveAsIllumination = false;
             useEmissiveAsIllumination = false;
 
 
             // Default Null Metallic Workflow
             // Default Null Metallic Workflow
             metallic = null;
             metallic = null;
             roughness = null;
             roughness = null;
-            useRoughnessFromMetallicTextureAlpha = false;
+            useRoughnessFromMetallicTextureAlpha = true;
             useRoughnessFromMetallicTextureGreen = false;
             useRoughnessFromMetallicTextureGreen = false;
 
 
+            microSurface = 0.9f;
+            useMicroSurfaceFromReflectivityMapAplha = false;
+
             overloadedShadowIntensity = 1.0f;
             overloadedShadowIntensity = 1.0f;
             overloadedShadeIntensity = 1.0f;
             overloadedShadeIntensity = 1.0f;
 
 
             ambient = new[] { 0f, 0f, 0f };
             ambient = new[] { 0f, 0f, 0f };
-            albedo = new[] { 0f, 0f, 0f };
-            reflectivity = new[] { 0f, 0f, 0f };
-            reflection = new[] { 0f, 0f, 0f };
+            albedo = new[] { 1f, 1f, 1f };
+            reflectivity = new[] { 1f, 1f, 1f };
+            reflection = new[] { 0.5f, 0.5f, 0.5f };
             emissive = new[] { 0f, 0f, 0f };
             emissive = new[] { 0f, 0f, 0f };
 
 
             overloadedAmbient = new[] { 0f, 0f, 0f };
             overloadedAmbient = new[] { 0f, 0f, 0f };
-            overloadedAlbedo = new[] { 0f, 0f, 0f };
-            overloadedReflectivity = new[] { 0f, 0f, 0f };
-            overloadedEmissive = new[] { 0f, 0f, 0f };
-            overloadedReflection = new[] { 0f, 0f, 0f };
+            overloadedAlbedo = new[] { 1f, 1f, 1f };
+            overloadedReflectivity = new[] { 0.3f, 0.3f, 0.3f };
+            overloadedEmissive = new[] {1f, 1f, 1f };
+            overloadedReflection = new[] { 1f, 1f, 1f };
         }
         }
     }
     }
 }
 }