浏览代码

pbr deserialize textures

sebavan 6 年之前
父节点
当前提交
7859d30a8c

+ 4 - 2
src/Materials/PBR/pbrAnisotropicConfiguration.ts

@@ -263,8 +263,10 @@ export class PBRAnisotropicConfiguration {
     /**
      * Parses a anisotropy Configuration from a serialized object.
      * @param source - Serialized object.
+     * @param scene Defines the scene we are parsing for
+     * @param rootUrl Defines the rootUrl to load from
      */
-    public parse(source: any): void {
-        SerializationHelper.Parse(() => this, source, null);
+    public parse(source: any, scene: Scene, rootUrl: string): void {
+        SerializationHelper.Parse(() => this, source, scene, rootUrl);
     }
 }

+ 6 - 3
src/Materials/PBR/pbrBRDFConfiguration.ts

@@ -1,4 +1,5 @@
 import { SerializationHelper, serialize, expandToProperty } from "../../Misc/decorators";
+import { Scene } from '../../scene';
 
 /**
  * @hidden
@@ -120,10 +121,12 @@ export class PBRBRDFConfiguration {
     }
 
     /**
-     * Parses a BRDF Configuration from a serialized object.
+     * Parses a anisotropy Configuration from a serialized object.
      * @param source - Serialized object.
+     * @param scene Defines the scene we are parsing for
+     * @param rootUrl Defines the rootUrl to load from
      */
-    public parse(source: any): void {
-        SerializationHelper.Parse(() => this, source, null);
+    public parse(source: any, scene: Scene, rootUrl: string): void {
+        SerializationHelper.Parse(() => this, source, scene, rootUrl);
     }
 }

+ 5 - 3
src/Materials/PBR/pbrClearCoatConfiguration.ts

@@ -456,10 +456,12 @@ export class PBRClearCoatConfiguration {
     }
 
     /**
-     * Parses a Clear Coat Configuration from a serialized object.
+     * Parses a anisotropy Configuration from a serialized object.
      * @param source - Serialized object.
+     * @param scene Defines the scene we are parsing for
+     * @param rootUrl Defines the rootUrl to load from
      */
-    public parse(source: any): void {
-        SerializationHelper.Parse(() => this, source, null);
+    public parse(source: any, scene: Scene, rootUrl: string): void {
+        SerializationHelper.Parse(() => this, source, scene, rootUrl);
     }
 }

+ 5 - 5
src/Materials/PBR/pbrMaterial.ts

@@ -753,19 +753,19 @@ export class PBRMaterial extends PBRBaseMaterial {
     public static Parse(source: any, scene: Scene, rootUrl: string): PBRMaterial {
         const material = SerializationHelper.Parse(() => new PBRMaterial(source.name, scene), source, scene, rootUrl);
         if (source.clearCoat) {
-            material.clearCoat.parse(source.clearCoat);
+            material.clearCoat.parse(source.clearCoat, scene, rootUrl);
         }
         if (source.anisotropy) {
-            material.anisotropy.parse(source.anisotropy);
+            material.anisotropy.parse(source.anisotropy, scene, rootUrl);
         }
         if (source.brdf) {
-            material.brdf.parse(source.brdf);
+            material.brdf.parse(source.brdf, scene, rootUrl);
         }
         if (source.sheen) {
-            material.sheen.parse(source.sheen);
+            material.sheen.parse(source.sheen, scene, rootUrl);
         }
         if (source.subSurface) {
-            material.subSurface.parse(source.subSurface);
+            material.subSurface.parse(source.subSurface, scene, rootUrl);
         }
         return material;
     }

+ 5 - 5
src/Materials/PBR/pbrMetallicRoughnessMaterial.ts

@@ -119,19 +119,19 @@ export class PBRMetallicRoughnessMaterial extends PBRBaseSimpleMaterial {
     public static Parse(source: any, scene: Scene, rootUrl: string): PBRMetallicRoughnessMaterial {
         const material = SerializationHelper.Parse(() => new PBRMetallicRoughnessMaterial(source.name, scene), source, scene, rootUrl);
         if (source.clearCoat) {
-            material.clearCoat.parse(source.clearCoat);
+            material.clearCoat.parse(source.clearCoat, scene, rootUrl);
         }
         if (source.anisotropy) {
-            material.anisotropy.parse(source.anisotropy);
+            material.anisotropy.parse(source.anisotropy, scene, rootUrl);
         }
         if (source.brdf) {
-            material.brdf.parse(source.brdf);
+            material.brdf.parse(source.brdf, scene, rootUrl);
         }
         if (source.sheen) {
-            material.sheen.parse(source.sheen);
+            material.sheen.parse(source.sheen, scene, rootUrl);
         }
         if (source.subSurface) {
-            material.subSurface.parse(source.subSurface);
+            material.subSurface.parse(source.subSurface, scene, rootUrl);
         }
         return material;
     }

+ 5 - 3
src/Materials/PBR/pbrSheenConfiguration.ts

@@ -267,10 +267,12 @@ export class PBRSheenConfiguration {
     }
 
     /**
-     * Parses a Sheen Configuration from a serialized object.
+     * Parses a anisotropy Configuration from a serialized object.
      * @param source - Serialized object.
+     * @param scene Defines the scene we are parsing for
+     * @param rootUrl Defines the rootUrl to load from
      */
-    public parse(source: any): void {
-        SerializationHelper.Parse(() => this, source, null);
+    public parse(source: any, scene: Scene, rootUrl: string): void {
+        SerializationHelper.Parse(() => this, source, scene, rootUrl);
     }
 }

+ 5 - 5
src/Materials/PBR/pbrSpecularGlossinessMaterial.ts

@@ -109,19 +109,19 @@ export class PBRSpecularGlossinessMaterial extends PBRBaseSimpleMaterial {
     public static Parse(source: any, scene: Scene, rootUrl: string): PBRSpecularGlossinessMaterial {
         const material = SerializationHelper.Parse(() => new PBRSpecularGlossinessMaterial(source.name, scene), source, scene, rootUrl);
         if (source.clearCoat) {
-            material.clearCoat.parse(source.clearCoat);
+            material.clearCoat.parse(source.clearCoat, scene, rootUrl);
         }
         if (source.anisotropy) {
-            material.anisotropy.parse(source.anisotropy);
+            material.anisotropy.parse(source.anisotropy, scene, rootUrl);
         }
         if (source.brdf) {
-            material.brdf.parse(source.brdf);
+            material.brdf.parse(source.brdf, scene, rootUrl);
         }
         if (source.sheen) {
-            material.sheen.parse(source.sheen);
+            material.sheen.parse(source.sheen, scene, rootUrl);
         }
         if (source.subSurface) {
-            material.subSurface.parse(source.subSurface);
+            material.subSurface.parse(source.subSurface, scene, rootUrl);
         }
         return material;
     }

+ 5 - 3
src/Materials/PBR/pbrSubSurfaceConfiguration.ts

@@ -545,10 +545,12 @@ export class PBRSubSurfaceConfiguration {
     }
 
     /**
-     * Parses a Sub Surface Configuration from a serialized object.
+     * Parses a anisotropy Configuration from a serialized object.
      * @param source - Serialized object.
+     * @param scene Defines the scene we are parsing for
+     * @param rootUrl Defines the rootUrl to load from
      */
-    public parse(source: any): void {
-        SerializationHelper.Parse(() => this, source, null);
+    public parse(source: any, scene: Scene, rootUrl: string): void {
+        SerializationHelper.Parse(() => this, source, scene, rootUrl);
     }
 }