internal void UnParse(Stream s) { long start = s.Position; BinaryWriter w = new BinaryWriter(s); w.Write((uint)FOURCC("MTRL")); w.Write(mtrlUnknown1); w.Write(mtrlUnknown2); w.Write(mtrlUnknown3); if (sdList == null) { sdList = new ShaderDataList(handler); } sdList.UnParse(s, start); }
internal void UnParse(Stream s) { long start = s.Position; BinaryWriter w = new BinaryWriter(s); w.Write((uint)FOURCC("MTNF")); w.Write(mtnfUnknown1); long dlPos = s.Position; w.Write((uint)0);//data length if (sdList == null) { sdList = new ShaderDataList(handler, _ParentTGIBlocks, _RCOLTag); } sdList.UnParse(s, start); long dlEnd = s.Position; s.Position = dlPos; w.Write((uint)(dlEnd - sdList.dataPos)); s.Position = dlEnd; }