public override void Open(HSDReader Reader) { uint DataOffset = Reader.ReadUInt32(); base.Open(Reader); Data = Reader.ReadBuffer(DataOffset, TPL.TextureByteSize((TPL_TextureFormat)Format, Width, Height)); }
public override void Open(HSDReader Reader) { uint DataOffset = Reader.ReadUInt32(); Format = (GXTlutFmt)Reader.ReadUInt32(); GXTlut = Reader.ReadUInt32(); ColorCount = Reader.ReadUInt16(); Reader.ReadUInt16(); Data = Reader.ReadBuffer(DataOffset, TPL.PaletteByteSize((TPL_PaletteFormat)Format, ColorCount)); }
public override void Open(HSDReader Reader) { uint DataOffset = Reader.ReadUInt32(); Width = Reader.ReadUInt16(); Height = Reader.ReadUInt16(); Format = (GXTexFmt)Reader.ReadUInt32(); Mipmap = Reader.ReadUInt32(); MinLOD = Reader.ReadSingle(); MaxLOD = Reader.ReadSingle(); Data = Reader.ReadBuffer(DataOffset, TPL.TextureByteSize((TPL_TextureFormat)Format, Width, Height)); }
public override void Open(HSDReader Reader) { uint NameOffset = Reader.ReadUInt32(); uint NextOff = Reader.ReadUInt32(); uint VertexAttributeArray = Reader.ReadUInt32(); Flags = (POBJ_FLAG)Reader.ReadUInt16(); int DisplayListSize = Reader.ReadUInt16() * 32; uint DisplayListOffset = Reader.ReadUInt32(); uint WeightListOffset = Reader.ReadUInt32(); if (NextOff > 0) { Next = Reader.ReadObject <HSD_POBJ>(NextOff); } // Display List if (DisplayListOffset > 0) { DisplayListBuffer = Reader.ReadBuffer(DisplayListOffset, DisplayListSize); } if (VertexAttributeArray > 0) { VertexAttributes = Reader.ReadObject <HSD_AttributeGroup>(VertexAttributeArray); } //Skinning if (WeightListOffset > 0) { if (Flags.HasFlag(POBJ_FLAG.ENVELOPE)) { // offsets to array of bone-weight combinations BindGroups = Reader.ReadObject <HSD_PointerArray <HSD_JOBJWeight> >(WeightListOffset); } else if (Flags.HasFlag(POBJ_FLAG.SHAPEANIM)) { throw new Exception("Shape Anim not supported");//?? } else if (Flags.HasFlag(POBJ_FLAG.SKIN)) { // Single bind to given bone SingleBind = Reader.ReadObject <HSD_JOBJ>(WeightListOffset); } } }
public override void Open(HSDReader Reader) { base.Open(Reader); Data = Reader.ReadBuffer(Offset, (int)DataLength); }
public override void Open(HSDReader Reader) { base.Open(Reader); Track.Data = Reader.ReadBuffer(Track.DataOffset, DataSize); }