public bool IsBlank(AFrameMaterial mtl) { var standard = mtl.Shader as StandardAFrameShader; var flat = mtl.Shader as FlatAFrameShader; var checks = new List <bool>(); if (standard != null) { checks.Add(standard.Color != StandardAFrameShader.DefaultColor); checks.Add(standard.Src != ""); } if (flat != null) { checks.Add(standard.Color != FlatAFrameShader.DefaultColor); checks.Add(standard.Src != ""); } foreach (var x in checks) { if (x == true) { return(false); } } return(true); }
public static void ToFile(AFrameMaterial mtl, string name, string filename) { var exporter = new MtlExporter(); using (StreamWriter sw = new StreamWriter(filename)) { var txt = exporter.MaterialToString(mtl, name); sw.Write(txt); } }
public string MaterialToString(AFrameMaterial mtl, string name) { var sb = new StringBuilder(); sb.AppendFormat("newmtl {0}", name).AppendLine(); var standand = mtl.Shader as StandardAFrameShader; var flat = mtl.Shader as FlatAFrameShader; if (standand != null) { ForStandard(mtl, standand, sb); } else if (flat != null) { ForFlat(mtl, flat, sb); } return(sb.ToString()); }
void ForFlat(AFrameMaterial mtl, FlatAFrameShader shader, StringBuilder sb) { WriteColor(shader.Color, sb); WriteTexture(shader.Src, sb); }
void ForStandard(AFrameMaterial mtl, StandardAFrameShader shader, StringBuilder sb) { WriteColor(shader.Color, sb); WriteTexture(shader.Src, sb); }