// Token: 0x060000E3 RID: 227 RVA: 0x0000B2C4 File Offset: 0x000094C4 public static void Write(BinaryWriter writer, ACCMaterialEx mate) { writer.Write(FileConst.HEAD_MATE); writer.Write(1000); writer.Write(mate.name1); writer.Write(mate.name2); string name = mate.type.name; writer.Write(name); string mateName = ShaderType.GetMateName(name); writer.Write(mateName); foreach (ShaderPropTex shaderPropTex in mate.type.texProps) { if (shaderPropTex.key == PropKey._RenderTex) { writer.Write("null"); } else { writer.Write("tex2d"); ACCTextureEx acctextureEx = mate.texDic[shaderPropTex.key]; writer.Write(acctextureEx.editname); writer.Write(acctextureEx.txtpath); ACCMaterialEx.OUT_UTIL.Write(writer, acctextureEx.texOffset); ACCMaterialEx.OUT_UTIL.Write(writer, acctextureEx.texScale); } } for (int j = 0; j < mate.editColors.Length; j++) { ShaderPropColor shaderPropColor = mate.type.colProps[j]; EditColor editColor = mate.editColors[j]; writer.Write(shaderPropColor.type.ToString()); writer.Write(shaderPropColor.keyName); ACCMaterialEx.OUT_UTIL.Write(writer, editColor.val); } for (int k = 0; k < mate.editVals.Length; k++) { ShaderPropFloat shaderPropFloat = mate.type.fProps[k]; EditValue editValue = mate.editVals[k]; writer.Write(shaderPropFloat.type.ToString()); writer.Write(shaderPropFloat.keyName); writer.Write(editValue.val); } }
private static ACCMaterialEx Load(BinaryReader reader) { int version = reader.ReadInt32(); string name1 = reader.ReadString(); string name2 = reader.ReadString(); string shaderName1 = reader.ReadString(); var shaderType = ShaderType.Resolve(shaderName1); var created = new ACCMaterialEx(shaderType); created.name1 = name1; created.name2 = name2; //created.shader = created.type; //created.type1 = ShaderMapper.resolve(shaderName1); //created.shader = created.type1.shader; string shaderName2 = reader.ReadString(); while (true) { string type = reader.ReadString(); if (type == "end") { break; } string propName = reader.ReadString(); switch (type) { case "tex": string sub = reader.ReadString(); switch (sub) { case "tex2d": var tex = new ACCTextureEx(propName); tex.editname = reader.ReadString(); tex.txtpath = reader.ReadString(); tex.texOffset = new Vector2(reader.ReadSingle(), reader.ReadSingle()); tex.texScale = new Vector2(reader.ReadSingle(), reader.ReadSingle()); created.texDic[tex.propKey] = tex; break; case "null": break; case "texRT": reader.ReadString(); reader.ReadString(); break; } break; case "col": case "vec": var c = new Color(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle()); created.SetColor(propName, c); break; case "f": float f = reader.ReadSingle(); created.SetFloat(propName, f); break; } } return(created); }
// Token: 0x060000E1 RID: 225 RVA: 0x0000B0A4 File Offset: 0x000092A4 private static ACCMaterialEx Load(BinaryReader reader) { reader.ReadInt32(); string text = reader.ReadString(); string text2 = reader.ReadString(); string name = reader.ReadString(); ShaderType type = ShaderType.Resolve(name); ACCMaterialEx accmaterialEx = new ACCMaterialEx(type) { name1 = text, name2 = text2 }; reader.ReadString(); for (;;) { string text3 = reader.ReadString(); if (text3 == "end") { break; } string propName = reader.ReadString(); string a; if ((a = text3) != null) { if (!(a == "tex")) { if (!(a == "col") && !(a == "vec")) { if (a == "f") { float f = reader.ReadSingle(); accmaterialEx.SetFloat(propName, f); } } else { Color c = new Color(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle()); accmaterialEx.SetColor(propName, c); } } else { string text4 = reader.ReadString(); string a2; if ((a2 = text4) != null) { if (!(a2 == "tex2d")) { if (!(a2 == "null")) { if (a2 == "texRT") { reader.ReadString(); reader.ReadString(); } } } else { ACCTextureEx acctextureEx = new ACCTextureEx(propName); acctextureEx.editname = reader.ReadString(); acctextureEx.txtpath = reader.ReadString(); acctextureEx.texOffset.x = reader.ReadSingle(); acctextureEx.texOffset.y = reader.ReadSingle(); acctextureEx.texScale.x = reader.ReadSingle(); acctextureEx.texScale.y = reader.ReadSingle(); accmaterialEx.texDic[acctextureEx.propKey] = acctextureEx; } } } } } return(accmaterialEx); }
private static ACCMaterialEx Load(BinaryReader reader) { int version = reader.ReadInt32(); string name1 = reader.ReadString(); string name2 = reader.ReadString(); string shaderName1 = reader.ReadString(); var shaderType = ShaderType.Resolve(shaderName1); var created = new ACCMaterialEx(shaderType); created.name1 = name1; created.name2 = name2; //created.shader = created.type; //created.type1 = ShaderMapper.resolve(shaderName1); //created.shader = created.type1.shader; string shaderName2 = reader.ReadString(); while(true) { string type = reader.ReadString(); if (type == "end") break; string propName = reader.ReadString(); switch (type) { case "tex": string sub = reader.ReadString(); switch (sub) { case "tex2d": var tex = new ACCTextureEx(propName); tex.editname = reader.ReadString(); tex.txtpath = reader.ReadString(); tex.texOffset = new Vector2(reader.ReadSingle(), reader.ReadSingle()); tex.texScale = new Vector2(reader.ReadSingle(), reader.ReadSingle()); created.texDic[tex.propKey] = tex; break; case "null": break; case "texRT": reader.ReadString(); reader.ReadString(); break; } break; case "col": case "vec": var c = new Color(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle()); created.SetColor(propName, c); break; case "f": float f = reader.ReadSingle(); created.SetFloat(propName, f); break; } } return created; }