static void ReadMOMT(BinaryReader br, WMORoot wmo) { wmo.Materials = new Material[wmo.Header.TextureCount]; for (int i = 0; i < wmo.Materials.Length; i++) { var mt = new Material { Flags = (MaterialFlags)br.ReadUInt32(), Int_1 = br.ReadUInt32(), BlendMode = br.ReadInt32(), TextureNameStart = br.ReadInt32(), SidnColor = br.ReadColor4(), FrameSidnColor = br.ReadColor4(), TextureNameEnd = br.ReadInt32(), DiffColor = br.ReadColor4(), GroundType = br.ReadInt32(), Float_1 = br.ReadSingle(), Float_2 = br.ReadSingle(), Int_2 = br.ReadInt32(), Int_3 = br.ReadInt32(), Int_4 = br.ReadInt32() }; // these 2 are set in RAM in the client to the associated HTEXTUREs br.ReadUInt32(); // 0x38 br.ReadUInt32(); // 0x3C wmo.Materials[i] = mt; //if (mt.Flags != 0) //Console.WriteLine(); } }
static void ReadMOMT(BinaryReader br, WMORoot wmo) { wmo.Materials = new Material[wmo.Header.TextureCount]; for (int i = 0; i < wmo.Materials.Length; i++) { var mt = new Material { Flags = (MaterialFlags)br.ReadUInt32(), Int_1 = br.ReadUInt32(), BlendMode = br.ReadInt32(), TextureNameStart = br.ReadInt32(), SidnColor = br.ReadColor4(), FrameSidnColor = br.ReadColor4(), TextureNameEnd = br.ReadInt32(), DiffColor = br.ReadColor4(), GroundType = br.ReadInt32(), Float_1 = br.ReadSingle(), Float_2 = br.ReadSingle(), Int_2 = br.ReadInt32(), Int_3 = br.ReadInt32(), Int_4 = br.ReadInt32() }; // these 2 are set in RAM in the client to the associated HTEXTUREs br.ReadUInt32();// 0x38 br.ReadUInt32();// 0x3C wmo.Materials[i] = mt; //if (mt.Flags != 0) //Console.WriteLine(); } }