/// <summary> /// Reads the data-block from a stream. /// </summary> public override void Read(ResourceDataReader reader, params object[] parameters) { base.Read(reader, parameters); // read structure data this.Unknown_10h = reader.ReadUInt32(); this.Unknown_14h = reader.ReadUInt32(); this.Unknown_18h = reader.ReadUInt32(); this.Unknown_1Ch = reader.ReadUInt32(); this.Unknown_20h = reader.ReadUInt32(); this.Unknown_24h = reader.ReadUInt32(); this.Unknown_28h = reader.ReadUInt32(); this.Unknown_2Ch = reader.ReadUInt32(); this.DrawablePointer = reader.ReadUInt64(); this.Unknown_28h_Pointer = reader.ReadUInt64(); this.Unknown_30h_Pointer = reader.ReadUInt64(); this.Count0 = reader.ReadUInt32(); this.Unknown_4Ch = reader.ReadUInt32(); this.Unknown_50h = reader.ReadUInt32(); this.Unknown_54h = reader.ReadUInt32(); this.NamePointer = reader.ReadUInt64(); this.Clothes = reader.ReadBlock <ResourcePointerList64 <EnvironmentCloth> >(); this.Unknown_70h = reader.ReadUInt32(); this.Unknown_74h = reader.ReadUInt32(); this.Unknown_78h = reader.ReadUInt32(); this.Unknown_7Ch = reader.ReadUInt32(); this.Unknown_80h = reader.ReadUInt32(); this.Unknown_84h = reader.ReadUInt32(); this.Unknown_88h = reader.ReadUInt32(); this.Unknown_8Ch = reader.ReadUInt32(); this.Unknown_90h = reader.ReadUInt32(); this.Unknown_94h = reader.ReadUInt32(); this.Unknown_98h = reader.ReadUInt32(); this.Unknown_9Ch = reader.ReadUInt32(); this.Unknown_A0h = reader.ReadUInt32(); this.Unknown_A4h = reader.ReadUInt32(); this.Unknown_A8h_Pointer = reader.ReadUInt64(); this.Unknown_B0h = reader.ReadUInt32(); this.Unknown_B4h = reader.ReadUInt32(); this.Unknown_B8h = reader.ReadUInt32(); this.Unknown_BCh = reader.ReadUInt32(); this.Unknown_C0h = reader.ReadUInt32(); this.Unknown_C4h = reader.ReadUInt32(); this.Unknown_C8h = reader.ReadUInt32(); this.Unknown_CCh = reader.ReadUInt32(); this.Unknown_D0h = reader.ReadUInt32(); this.Unknown_D4h = reader.ReadUInt32(); this.Unknown_D8h = reader.ReadByte(); this.Count3 = reader.ReadByte(); this.Unknown_DAh = reader.ReadUInt16(); this.Unknown_DCh = reader.ReadUInt32(); this.Unknown_E0h_Pointer = reader.ReadUInt64(); this.Unknown_E8h = reader.ReadUInt32(); this.Unknown_ECh = reader.ReadUInt32(); this.PhysicsLODGroupPointer = reader.ReadUInt64(); this.Unknown_F8h_Pointer = reader.ReadUInt64(); this.Unknown_100h = reader.ReadUInt32(); this.Unknown_104h = reader.ReadUInt32(); this.Unknown_108h = reader.ReadUInt32(); this.Unknown_10Ch = reader.ReadUInt32(); this.LightAttributes = reader.ReadBlock <ResourceSimpleList64 <LightAttributes> >(); this.Unknown_120h_Pointer = reader.ReadUInt64(); this.Unknown_128h = reader.ReadUInt32(); this.Unknown_12Ch = reader.ReadUInt32(); // read reference data this.Drawable = reader.ReadBlockAt <FragDrawable>( this.DrawablePointer // offset ); this.Unknown_28h_Data = reader.ReadBlockAt <ResourcePointerArray64 <FragDrawable> >( this.Unknown_28h_Pointer, // offset this.Count0 ); this.Unknown_30h_Data = reader.ReadBlockAt <ResourcePointerArray64 <string_r> >( this.Unknown_30h_Pointer, // offset this.Count0 ); this.Name = reader.ReadBlockAt <string_r>( this.NamePointer // offset ); this.Unknown_A8h_Data = reader.ReadBlockAt <Unknown_F_003>( this.Unknown_A8h_Pointer // offset ); this.Unknown_E0h_Data = reader.ReadBlockAt <ResourcePointerArray64 <Unknown_F_004> >( this.Unknown_E0h_Pointer, // offset this.Count3 ); this.PhysicsLODGroup = reader.ReadBlockAt <FragPhysicsLODGroup>( this.PhysicsLODGroupPointer // offset ); this.Unknown_F8h_Data = reader.ReadBlockAt <FragDrawable>( this.Unknown_F8h_Pointer // offset ); this.Unknown_120h_Data = reader.ReadBlockAt <Unknown_F_002>( this.Unknown_120h_Pointer // offset ); }
/// <summary> /// Reads the data-block from a stream. /// </summary> public override void Read(ResourceDataReader reader, params object[] parameters) { base.Read(reader, parameters); // read structure data this.Unknown_10h = reader.ReadUInt64(); this.Unknown_18h = reader.ReadUInt64(); this.BoundingSphereCenter = reader.ReadVector3(); this.BoundingSphereRadius = reader.ReadSingle(); this.PrimaryDrawablePointer = reader.ReadUInt64(); this.DrawablesPointer = reader.ReadUInt64(); this.DrawablesNamesPointer = reader.ReadUInt64(); this.DrawablesCount = reader.ReadUInt32(); this.Unknown_4Ch = reader.ReadUInt32(); this.Unknown_50h = reader.ReadUInt64(); this.NamePointer = reader.ReadUInt64(); this.Clothes = reader.ReadBlock <ResourcePointerList64 <EnvironmentCloth> >(); this.Unknown_70h = reader.ReadUInt64(); this.Unknown_78h = reader.ReadUInt64(); this.Unknown_80h = reader.ReadUInt64(); this.Unknown_88h = reader.ReadUInt64(); this.Unknown_90h = reader.ReadUInt64(); this.Unknown_98h = reader.ReadUInt64(); this.Unknown_A0h = reader.ReadUInt64(); this.MatrixSetPointer = reader.ReadUInt64(); this.Unknown_B0h = reader.ReadUInt32(); this.Unknown_B4h = reader.ReadUInt32(); this.Unknown_B8h = reader.ReadUInt32(); this.Unknown_BCh = reader.ReadUInt32(); this.Unknown_C0h = reader.ReadUInt32(); this.Unknown_C4h = reader.ReadUInt32(); this.Unknown_C8h = reader.ReadUInt32(); this.Unknown_CCh = reader.ReadUInt32(); this.GravityMultiplier = reader.ReadSingle(); this.BuoyancyMultiplier = reader.ReadSingle(); this.Unknown_D8h = reader.ReadByte(); this.GlassPaneModelInfosCount = reader.ReadByte(); this.Unknown_DAh = reader.ReadUInt16(); this.Unknown_DCh = reader.ReadUInt32(); this.GlassPaneModelInfosPointer = reader.ReadUInt64(); this.Unknown_E8h = reader.ReadUInt64(); this.PhysicsLODGroupPointer = reader.ReadUInt64(); this.ClothDrawablePointer = reader.ReadUInt64(); this.Unknown_100h = reader.ReadUInt64(); this.Unknown_108h = reader.ReadUInt64(); this.LightAttributes = reader.ReadBlock <ResourceSimpleList64 <LightAttributes> >(); this.VehicleGlassWindowDataPointer = reader.ReadUInt64(); this.Unknown_128h = reader.ReadUInt64(); // read reference data this.PrimaryDrawable = reader.ReadBlockAt <FragDrawable>( this.PrimaryDrawablePointer // offset ); this.Drawables = reader.ReadBlockAt <ResourcePointerArray64 <FragDrawable> >( this.DrawablesPointer, // offset this.DrawablesCount ); this.DrawablesNames = reader.ReadBlockAt <ResourcePointerArray64 <string_r> >( this.DrawablesNamesPointer, // offset this.DrawablesCount ); this.Name = reader.ReadBlockAt <string_r>( this.NamePointer // offset ); this.MatrixSet = reader.ReadBlockAt <MatrixSet>( this.MatrixSetPointer // offset ); this.GlassPaneModelInfos = reader.ReadBlockAt <ResourcePointerArray64 <GlassPaneModelInfo> >( this.GlassPaneModelInfosPointer, // offset this.GlassPaneModelInfosCount ); this.PhysicsLODGroup = reader.ReadBlockAt <FragPhysicsLODGroup>( this.PhysicsLODGroupPointer // offset ); this.ClothDrawable = reader.ReadBlockAt <FragDrawable>( this.ClothDrawablePointer // offset ); this.VehicleGlassWindowData = reader.ReadBlockAt <VehicleGlassWindowData>( this.VehicleGlassWindowDataPointer // offset ); }