Beispiel #1
0
        /// <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.ShaderGroupPointer     = reader.ReadUInt64();
            this.SkeletonPointer        = reader.ReadUInt64();
            this.Unknown_20h            = reader.ReadBlock <RAGE_Vector4>();
            this.Unknown_30h            = reader.ReadBlock <RAGE_Vector4>();
            this.Unknown_40h            = reader.ReadBlock <RAGE_Vector4>();
            this.DrawableModels1Pointer = reader.ReadUInt64();
            this.DrawableModels2Pointer = reader.ReadUInt64();
            this.DrawableModels3Pointer = reader.ReadUInt64();
            this.DrawableModels4Pointer = reader.ReadUInt64();
            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_Pointer    = reader.ReadUInt64();
            this.Unknown_98h            = reader.ReadUInt32();
            this.Unknown_9Ch            = reader.ReadUInt32();
            this.DrawableModelsXPointer = reader.ReadUInt64();

            // read reference data
            this.ShaderGroup = reader.ReadBlockAt <ShaderGroup_GTA5_pc>(
                this.ShaderGroupPointer // offset
                );
            this.Skeleton = reader.ReadBlockAt <Skeleton_GTA5_pc>(
                this.SkeletonPointer // offset
                );
            this.DrawableModels1 = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModels1Pointer // offset
                );
            this.DrawableModels2 = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModels2Pointer // offset
                );
            this.DrawableModels3 = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModels3Pointer // offset
                );
            this.DrawableModels4 = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModels4Pointer // offset
                );
            this.Unknown_90h_Data = reader.ReadBlockAt <Unknown_D_002>(
                this.Unknown_90h_Pointer // offset
                );
            this.DrawableModelsX = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModelsXPointer // 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.ShaderGroupPointer = reader.ReadUInt64();
            this.SkeletonPointer = reader.ReadUInt64();
            this.Unknown_20h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_30h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_40h = reader.ReadBlock<RAGE_Vector4>();
            this.DrawableModels1Pointer = reader.ReadUInt64();
            this.DrawableModels2Pointer = reader.ReadUInt64();
            this.DrawableModels3Pointer = reader.ReadUInt64();
            this.DrawableModels4Pointer = reader.ReadUInt64();
            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_Pointer = reader.ReadUInt64();
            this.Unknown_98h = reader.ReadUInt32();
            this.Unknown_9Ch = reader.ReadUInt32();
            this.DrawableModelsXPointer = reader.ReadUInt64();
            
            // read reference data
            this.ShaderGroup = reader.ReadBlockAt<ShaderGroup_GTA5_pc>(
                this.ShaderGroupPointer // offset
            );
            this.Skeleton = reader.ReadBlockAt<Skeleton_GTA5_pc>(
                this.SkeletonPointer // offset
            );
            this.DrawableModels1 = reader.ReadBlockAt<ResourcePointerList64<DrawableModel_GTA5_pc>>(
                this.DrawableModels1Pointer // offset
            );
            this.DrawableModels2 = reader.ReadBlockAt<ResourcePointerList64<DrawableModel_GTA5_pc>>(
                this.DrawableModels2Pointer // offset
            );
            this.DrawableModels3 = reader.ReadBlockAt<ResourcePointerList64<DrawableModel_GTA5_pc>>(
                this.DrawableModels3Pointer // offset
            );
            this.DrawableModels4 = reader.ReadBlockAt<ResourcePointerList64<DrawableModel_GTA5_pc>>(
                this.DrawableModels4Pointer // offset
            );
            this.Unknown_90h_Data = reader.ReadBlockAt<Unknown_D_002>(
                this.Unknown_90h_Pointer // offset
            );
            this.DrawableModelsX = reader.ReadBlockAt<ResourcePointerList64<DrawableModel_GTA5_pc>>(
                this.DrawableModelsXPointer // offset
            );            
        }