Bladeren bron

attach condition for create one time

NasimiAsl 8 jaren geleden
bovenliggende
commit
429b4142c2
1 gewijzigde bestanden met toevoegingen van 7 en 1 verwijderingen
  1. 7 1
      materialsLibrary/src/custom/babylon.customMaterial.ts

+ 7 - 1
materialsLibrary/src/custom/babylon.customMaterial.ts

@@ -556,6 +556,8 @@ vColor=color;\n\
          public static ShaderIndexer = 1;
          public CustomParts :  ShaderSpecialParts;
          public ShaderVersion : CustomShaderStructure ;
+         public IsCreatedShader : bool;
+         public CreatedShaderName : string;
          _customUniform : string[];
          _newUniforms : string[];
          _newUniformInstances : any[];
@@ -597,7 +599,8 @@ vColor=color;\n\
          }
          public Builder(shaderName: string, uniforms: string[], uniformBuffers: string[], samplers: string[], defines: StandardMaterialDefines) : string {
             
-           
+            if(this.IsCreatedShader) return this.CreatedShaderName;
+              this.IsCreatedShader  = false;
             CustomMaterial.ShaderIndexer++;
             var name = name+"custom_"+CustomMaterial.ShaderIndexer;
 
@@ -626,6 +629,9 @@ vColor=color;\n\
             .replace('#[Fragment_Custom_Alpha]',(this.CustomParts.Fragment_Custom_Alpha ? this.CustomParts.Fragment_Custom_Alpha : ""))
             .replace('#[Fragment_Before_FragColor]',(this.CustomParts.Fragment_Before_FragColor ? this.CustomParts.Fragment_Before_FragColor : "")) ;
  
+             this.IsCreatedShader  = true;
+              this.CreatedShaderName = name;
+           
              return name ;
          }