ncannasse před 7 roky
rodič
revize
34c53a2722
1 změnil soubory, kde provedl 19 přidání a 2 odebrání
  1. 19 2
      h3d/scene/pbr/LightProbeBaker.hx

+ 19 - 2
h3d/scene/pbr/LightProbeBaker.hx

@@ -2,7 +2,7 @@ package h3d.scene.pbr;
 
 import h3d.scene.pbr.Renderer;
 
-class LightProbeBaker{
+class LightProbeBaker {
 
 	public var useGPU = false;
 	public var environment : h3d.scene.pbr.Environment;
@@ -126,8 +126,25 @@ class LightProbeBaker{
 	}
 
 	function setupEnvMap(resolution : Int){
-		if(envMap == null || resolution != envMap.width)
+		if(envMap == null || resolution != envMap.width ) {
+			if( envMap != null ) envMap.dispose();
 			envMap = new h3d.mat.Texture(resolution, resolution, [Cube, Target], RGBA32F);
+		}
+	}
+
+	public function dispose() {
+		if( envMap != null ) {
+			envMap.dispose();
+			envMap = null;
+		}
+		output0.dispose();
+		output1.dispose();
+		output2.dispose();
+		output3.dispose();
+		output4.dispose();
+		output5.dispose();
+		output6.dispose();
+		output7.dispose();
 	}
 
 	function setupShaderOutput(order : Int){