Beispiel #1
0
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.Unknown_0h_Pointer = reader.ReadUInt64();
            this.Count1 = reader.ReadUInt32();
            this.Count2 = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadUInt32();
            this.Unknown_1Ch = reader.ReadUInt32();
            this.Unknown_20h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_30h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_40h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_50h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_60h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_70h_Pointer = reader.ReadUInt64();
            this.Count3 = reader.ReadUInt16();
            this.Count4 = reader.ReadUInt16();
            this.Unknown_7Ch = reader.ReadUInt32();

            // read reference data
            this.Unknown_0h_Data = reader.ReadBlockAt<ResourceSimpleArray<Unknown_B_004>>(
                this.Unknown_0h_Pointer, // offset
                this.Count1
            );
            this.Unknown_70h_Data = reader.ReadBlockAt<ResourceSimpleArray<Unknown_B_005>>(
                this.Unknown_70h_Pointer, // offset
                this.Count3
            );
        }
Beispiel #2
0
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.Unknown_0h_Pointer  = reader.ReadUInt64();
            this.Count1              = reader.ReadUInt32();
            this.Count2              = reader.ReadUInt32();
            this.Unknown_10h         = reader.ReadUInt32();
            this.Unknown_14h         = reader.ReadUInt32();
            this.Unknown_18h         = reader.ReadUInt32();
            this.Unknown_1Ch         = reader.ReadUInt32();
            this.Unknown_20h         = reader.ReadBlock <RAGE_Vector4>();
            this.Unknown_30h         = reader.ReadBlock <RAGE_Vector4>();
            this.Unknown_40h         = reader.ReadBlock <RAGE_Vector4>();
            this.Unknown_50h         = reader.ReadBlock <RAGE_Vector4>();
            this.Unknown_60h         = reader.ReadBlock <RAGE_Vector4>();
            this.Unknown_70h_Pointer = reader.ReadUInt64();
            this.Count3              = reader.ReadUInt16();
            this.Count4              = reader.ReadUInt16();
            this.Unknown_7Ch         = reader.ReadUInt32();

            // read reference data
            this.Unknown_0h_Data = reader.ReadBlockAt <ResourceSimpleArray <Unknown_B_004> >(
                this.Unknown_0h_Pointer, // offset
                this.Count1
                );
            this.Unknown_70h_Data = reader.ReadBlockAt <ResourceSimpleArray <Unknown_B_005> >(
                this.Unknown_70h_Pointer, // offset
                this.Count3
                );
        }
Beispiel #3
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.Type                  = reader.ReadByte();
            this.Unknown_11h           = reader.ReadByte();
            this.Unknown_12h           = reader.ReadUInt16();
            this.BoundingSphereRadius  = reader.ReadSingle();
            this.Unknown_18h           = reader.ReadUInt32();
            this.Unknown_1Ch           = reader.ReadUInt32();
            this.BoundingBoxMax        = reader.ReadBlock <RAGE_Vector3>();
            this.Margin                = reader.ReadSingle();
            this.BoundingBoxMin        = reader.ReadBlock <RAGE_Vector3>();
            this.Unknown_3Ch           = reader.ReadUInt32();
            this.BoundingBoxCenter     = reader.ReadBlock <RAGE_Vector3>();
            this.MaterialIndex         = reader.ReadByte();
            this.ProceduralId          = reader.ReadByte();
            this.RoomId_And_PedDensity = reader.ReadByte();
            this.Unknown_4Fh           = reader.ReadByte();
            this.CenterGravity         = reader.ReadBlock <RAGE_Vector3>();
            this.PolyFlags             = reader.ReadByte();
            this.MaterialColorIndex    = reader.ReadByte();
            this.Unknown_5Eh           = reader.ReadUInt16();
            this.Unknown_60h           = reader.ReadSingle();
            this.Unknown_64h           = reader.ReadSingle();
            this.Unknown_68h           = reader.ReadSingle();
            this.BoundingBoxVolume     = reader.ReadSingle();
        }
        /// <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.p1 = reader.ReadUInt64();
            this.c1 = reader.ReadUInt16();
            this.c2 = reader.ReadUInt16();
            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.emb1 = reader.ReadBlock<Unknown_P_018>();
            this.emb2 = reader.ReadBlock<Unknown_P_018>();
            this.Unknown_150h = reader.ReadUInt32();
            this.Unknown_154h = reader.ReadUInt32();
            this.Unknown_158h = reader.ReadUInt32();
            this.Unknown_15Ch = reader.ReadUInt32();
            this.Unknown_160h = reader.ReadUInt32();
            this.Unknown_164h = reader.ReadUInt32();
            this.Unknown_168h = reader.ReadUInt32();
            this.Unknown_16Ch = reader.ReadUInt32();

            // read reference data
            this.p1data = reader.ReadBlockAt<ResourcePointerArray64<Unknown_P_018>>(
                this.p1, // offset
                this.c1
            );
        }
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT          = reader.ReadUInt32();
            this.Unknown_4h   = reader.ReadUInt32();
            this.Unknown_8h   = reader.ReadUInt32();
            this.Unknown_Ch   = reader.ReadUInt32();
            this.Unknown_10h  = reader.ReadUInt32();
            this.Unknown_14h  = reader.ReadUInt32();
            this.emb1         = reader.ReadBlock <Unknown_P_018>();
            this.emb2         = reader.ReadBlock <Unknown_P_018>();
            this.emb3         = reader.ReadBlock <Unknown_P_018>();
            this.emb4         = reader.ReadBlock <Unknown_P_018>();
            this.Unknown_258h = reader.ReadUInt32();
            this.Unknown_25Ch = reader.ReadUInt32();
            this.pref         = reader.ReadUInt64();
            this.refcnt1      = reader.ReadUInt16();
            this.refcnt2      = reader.ReadUInt16();
            this.Unknown_26Ch = reader.ReadUInt32();
            this.Unknown_270h = reader.ReadUInt32();
            this.Unknown_274h = reader.ReadUInt32();
            this.Unknown_278h = reader.ReadUInt32();
            this.Unknown_27Ch = reader.ReadUInt32();

            // read reference data
            this.refs = reader.ReadBlockAt <ResourcePointerArray64 <Unknown_P_018> >(
                this.pref, // offset
                this.refcnt2
                );
        }
Beispiel #6
0
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.NodesPointer      = reader.ReadUInt64();
            this.NodesCount        = reader.ReadUInt32();
            this.NodesCapacity     = reader.ReadUInt32();
            this.Unknown_10h       = reader.ReadUInt32();
            this.Unknown_14h       = reader.ReadUInt32();
            this.Unknown_18h       = reader.ReadUInt32();
            this.Unknown_1Ch       = reader.ReadUInt32();
            this.BoundingBoxMin    = reader.ReadBlock <RAGE_Vector4>();
            this.BoundingBoxMax    = reader.ReadBlock <RAGE_Vector4>();
            this.BoundingBoxCenter = reader.ReadBlock <RAGE_Vector4>();
            this.QuantumInverse    = reader.ReadBlock <RAGE_Vector4>();
            this.Quantum           = reader.ReadBlock <RAGE_Vector4>();
            this.TreesPointer      = reader.ReadUInt64();
            this.TreesCount1       = reader.ReadUInt16();
            this.TreesCount2       = reader.ReadUInt16();
            this.Unknown_7Ch       = reader.ReadUInt32();

            // read reference data
            this.Nodes = reader.ReadBlockAt <ResourceSimpleArray <BVHNode> >(
                this.NodesPointer, // offset
                this.NodesCount
                );
            this.Trees = reader.ReadBlockAt <ResourceSimpleArray <BVHTreeInfo> >(
                this.TreesPointer, // offset
                this.TreesCount1
                );
        }
Beispiel #7
0
        public uint Unknown_17Ch; // 0x00000000

        /// <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.ReadBlock <ResourcePointerList64 <Unknown_P_018> >();
            this.Unknown_20h  = reader.ReadUInt32();
            this.Unknown_24h  = reader.ReadUInt32();
            this.Unknown_28h  = reader.ReadUInt32();
            this.Unknown_2Ch  = reader.ReadUInt32();
            this.emb1         = reader.ReadBlock <Unknown_P_018>();
            this.emb2         = reader.ReadBlock <Unknown_P_018>();
            this.Unknown_150h = reader.ReadUInt32();
            this.Unknown_154h = reader.ReadUInt32();
            this.Unknown_158h = reader.ReadUInt32();
            this.Unknown_15Ch = reader.ReadUInt32();
            this.Unknown_160h = reader.ReadUInt32();
            this.Unknown_164h = reader.ReadUInt32();
            this.Unknown_168h = reader.ReadUInt32();
            this.Unknown_16Ch = reader.ReadUInt32();
            this.Unknown_170h = reader.ReadUInt32();
            this.Unknown_174h = reader.ReadUInt32();
            this.Unknown_178h = reader.ReadUInt32();
            this.Unknown_17Ch = reader.ReadUInt32();
        }
Beispiel #8
0
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT         = reader.ReadUInt32();
            this.Unknown_4h  = reader.ReadUInt32();
            this.Unknown_8h  = reader.ReadUInt32();
            this.Unknown_Ch  = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadUInt32();
            this.Unknown_1Ch = reader.ReadUInt32();
            this.Unknown_20h = reader.ReadBlock <ResourcePointerList64 <Unknown_E_001> >();
            this.Unknown_30h = reader.ReadBlock <ResourceSimpleList64 <uint_r> >();
            this.Unknown_40h = reader.ReadBlock <ResourceSimpleList64 <Unknown_E_002> >();
            this.Unknown_50h = reader.ReadBlock <ResourceSimpleList64 <uint_r> >();
            this.NamePointer = reader.ReadUInt64();
            this.Unknown_68h = reader.ReadUInt32();
            this.Unknown_6Ch = reader.ReadUInt32();
            this.Unknown_70h = reader.ReadUInt32();
            this.Unknown_74h = reader.ReadUInt32();
            this.len         = reader.ReadUInt16();
            this.Unknown_7Ah = reader.ReadUInt16();
            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();

            // read reference data
            this.Name = reader.ReadBlockAt <string_r>(
                this.NamePointer // offset
                );
        }
Beispiel #9
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.Poses                 = reader.ReadBlock <ResourceSimpleList64 <DataVec3V> >();
            this.ControllerPointer     = reader.ReadUInt64();
            this.BoundCompositePointer = reader.ReadUInt64();
            this.Unknown_30h           = reader.ReadBlock <SimpleList64 <uint> >();
            this.Unknown_40h           = reader.ReadUInt64();
            this.Unknown_48h           = reader.ReadUInt64();
            this.Unknown_50h           = reader.ReadMatrix4x4();
            this.BoneIndex             = reader.ReadBlock <SimpleList64 <uint> >();
            this.Unknown_A0h           = reader.ReadUInt64();
            this.Unknown_A8h           = reader.ReadUInt64();
            this.Unknown_B0h           = reader.ReadUInt64();
            this.Unknown_B8h           = reader.ReadUInt64();
            this.Unknown_C0h           = reader.ReadUInt32();
            this.Unknown_C4h           = reader.ReadUInt32();
            this.Unknown_C8h           = reader.ReadUInt64();

            // read reference data
            this.Controller = reader.ReadBlockAt <CharacterClothController>(
                this.ControllerPointer // offset
                );
            this.BoundComposite = reader.ReadBlockAt <BoundComposite>(
                this.BoundCompositePointer // offset
                );
        }
Beispiel #10
0
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT = reader.ReadUInt32();
            this.Unknown_4h = reader.ReadUInt32();
            this.Unknown_8h = reader.ReadUInt32();
            this.Unknown_Ch = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.emb1 = reader.ReadBlock<Unknown_P_018>();
            this.emb2 = reader.ReadBlock<Unknown_P_018>();
            this.emb3 = reader.ReadBlock<Unknown_P_018>();
            this.emb4 = reader.ReadBlock<Unknown_P_018>();
            this.Unknown_258h = reader.ReadUInt32();
            this.Unknown_25Ch = reader.ReadUInt32();
            this.pref = reader.ReadUInt64();
            this.refcnt1 = reader.ReadUInt16();
            this.refcnt2 = reader.ReadUInt16();
            this.Unknown_26Ch = reader.ReadUInt32();
            this.Unknown_270h = reader.ReadUInt32();
            this.Unknown_274h = reader.ReadUInt32();
            this.Unknown_278h = reader.ReadUInt32();
            this.Unknown_27Ch = reader.ReadUInt32();

            // read reference data
            this.refs = reader.ReadBlockAt<ResourcePointerArray64<Unknown_P_018>>(
                this.pref, // offset
                this.refcnt2
            );
        }
Beispiel #11
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.Unknown_A8h       = reader.ReadUInt64();
            this.Unknown_B0h       = reader.ReadMatrix4x4();
            this.BoundPointer      = reader.ReadUInt64();
            this.Unknown_F8h_Data  = reader.ReadBlock <SimpleList64 <ulong> >();
            this.Unknown_108h_Data = reader.ReadBlock <SimpleList64 <Matrix4x4> >();
            this.Unknown_118h      = reader.ReadUInt64();
            this.Unknown_120h      = reader.ReadUInt64();
            this.Unknown_128h      = reader.ReadUInt64();
            this.NamePointer       = reader.ReadUInt64();
            this.Unknown_138h      = reader.ReadUInt64();
            this.Unknown_140h      = reader.ReadUInt64();
            this.Unknown_148h      = reader.ReadUInt64();

            // read reference data
            this.Bound = reader.ReadBlockAt <Bound>(
                this.BoundPointer // offset
                );
            this.Name = reader.ReadBlockAt <string_r>(
                this.NamePointer // offset
                );
        }
Beispiel #12
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.p1           = reader.ReadUInt64();
            this.c1           = reader.ReadUInt16();
            this.c2           = reader.ReadUInt16();
            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.emb1         = reader.ReadBlock <Unknown_P_018>();
            this.emb2         = reader.ReadBlock <Unknown_P_018>();
            this.Unknown_150h = reader.ReadUInt32();
            this.Unknown_154h = reader.ReadUInt32();
            this.Unknown_158h = reader.ReadUInt32();
            this.Unknown_15Ch = reader.ReadUInt32();
            this.Unknown_160h = reader.ReadUInt32();
            this.Unknown_164h = reader.ReadUInt32();
            this.Unknown_168h = reader.ReadUInt32();
            this.Unknown_16Ch = reader.ReadUInt32();
            this.Unknown_170h = reader.ReadUInt32();
            this.Unknown_174h = reader.ReadUInt32();
            this.Unknown_178h = reader.ReadUInt32();
            this.Unknown_17Ch = reader.ReadUInt32();

            // read reference data
            this.p1data = reader.ReadBlockAt <ResourcePointerArray64 <Unknown_P_018> >(
                this.p1, // offset
                this.c1
                );
        }
Beispiel #13
0
        /// <summary>
        /// Reads the data block.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            int numElements1 = Convert.ToInt32(parameters[0]);
            int numElements2 = Convert.ToInt32(parameters[1]);

            Array1 = reader.ReadBlock <ResourceSimpleArray <T> >(numElements1);
            Array2 = reader.ReadBlock <ResourceSimpleArray <U> >(numElements2);
        }
Beispiel #14
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.KeyframeProps = reader.ReadBlock <ResourcePointerList64 <KeyframeProp> >();
            this.Unknown_20h   = reader.ReadUInt64();
            this.Unknown_28h   = reader.ReadUInt64();
            this.KeyframeProp0 = reader.ReadBlock <KeyframeProp>();
        }
Beispiel #15
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.p1           = reader.ReadUInt64();
            this.c1           = reader.ReadUInt16();
            this.c2           = reader.ReadUInt16();
            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.emb1         = reader.ReadBlock <Unknown_P_018>();
            this.emb2         = reader.ReadBlock <Unknown_P_018>();
            this.emb3         = reader.ReadBlock <Unknown_P_018>();
            this.emb4         = reader.ReadBlock <Unknown_P_018>();
            this.emb5         = reader.ReadBlock <Unknown_P_018>();
            this.emb6         = reader.ReadBlock <Unknown_P_018>();
            this.emb7         = reader.ReadBlock <Unknown_P_018>();
            this.emb8         = reader.ReadBlock <Unknown_P_018>();
            this.emb9         = reader.ReadBlock <Unknown_P_018>();
            this.Unknown_540h = reader.ReadUInt32();
            this.Unknown_544h = reader.ReadUInt32();
            this.Unknown_548h = reader.ReadUInt32();
            this.Unknown_54Ch = reader.ReadUInt32();

            // read reference data
            this.p1data = reader.ReadBlockAt <ResourcePointerArray64 <Unknown_P_018> >(
                this.p1, // offset
                this.c1
                );
        }
Beispiel #16
0
        public uint Unknown_3Ch; // 0x00000000

        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.Unknown_0h  = reader.ReadBlock <ResourceSimpleList64 <Unknown_P_002> >();
            this.Unknown_10h = reader.ReadBlock <ResourceSimpleList64 <Unknown_P_003> >();
            this.Unknown_20h = reader.ReadUInt32();
            this.Unknown_24h = reader.ReadUInt32();
            this.Unknown_28h = reader.ReadBlock <ResourceSimpleList64 <Unknown_P_007> >();
            this.Unknown_38h = reader.ReadUInt32();
            this.Unknown_3Ch = reader.ReadUInt32();
        }
Beispiel #17
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.ParentPointer = reader.ReadUInt64();
            this.Count         = reader.ReadUInt32();
            this.Unknown_1Ch   = reader.ReadUInt32();
            this.Hashes        = reader.ReadBlock <SimpleList64 <uint> >();
            this.Values        = reader.ReadBlock <ResourcePointerList64 <T> >();
        }
        /// <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.BoundingCenter               = reader.ReadBlock <RAGE_Vector3>();
            this.BoundingSphereRadius         = reader.ReadSingle();
            this.BoundingBoxMin               = reader.ReadBlock <RAGE_Vector4>();
            this.BoundingBoxMax               = reader.ReadBlock <RAGE_Vector4>();
            this.DrawableModelsHighPointer    = reader.ReadUInt64();
            this.DrawableModelsMediumPointer  = reader.ReadUInt64();
            this.DrawableModelsLowPointer     = reader.ReadUInt64();
            this.DrawableModelsVeryLowPointer = reader.ReadUInt64();
            this.Unknown_70h            = reader.ReadSingle();
            this.Unknown_74h            = reader.ReadSingle();
            this.Unknown_78h            = reader.ReadSingle();
            this.Unknown_7Ch            = reader.ReadSingle();
            this.Unknown_80h            = reader.ReadUInt32();
            this.Unknown_84h            = reader.ReadUInt32();
            this.Unknown_88h            = reader.ReadUInt32();
            this.Unknown_8Ch            = reader.ReadUInt32();
            this.JointsPointer          = 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.DrawableModelsHigh = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModelsHighPointer // offset
                );
            this.DrawableModelsMedium = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModelsMediumPointer // offset
                );
            this.DrawableModelsLow = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModelsLowPointer // offset
                );
            this.DrawableModelsVeryLow = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModelsVeryLowPointer // offset
                );
            this.Joints = reader.ReadBlockAt <Joints_GTA5_pc>(
                this.JointsPointer // offset
                );
            this.DrawableModelsX = reader.ReadBlockAt <ResourcePointerList64 <DrawableModel_GTA5_pc> >(
                this.DrawableModelsXPointer // offset
                );
        }
Beispiel #19
0
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT               = reader.ReadUInt32();
            this.Unknown_4h        = reader.ReadUInt32();
            this.Unknown_8h        = reader.ReadUInt32();
            this.Unknown_Ch        = reader.ReadUInt32();
            this.Unknown_10h       = reader.ReadBlock <ResourceSimpleList64 <Unknown_C_001> >();
            this.ControllerPointer = reader.ReadUInt64();
            this.BoundPointer      = reader.ReadUInt64();
            this.Unknown_30h       = reader.ReadBlock <ResourceSimpleList64 <uint_r> >();
            this.Unknown_40h       = reader.ReadUInt32();
            this.Unknown_44h       = reader.ReadUInt32();
            this.Unknown_48h       = reader.ReadUInt32();
            this.Unknown_4Ch       = reader.ReadUInt32();
            this.Unknown_50h       = reader.ReadUInt32();
            this.Unknown_54h       = reader.ReadUInt32();
            this.Unknown_58h       = reader.ReadUInt32();
            this.Unknown_5Ch       = reader.ReadUInt32();
            this.Unknown_60h       = reader.ReadUInt32();
            this.Unknown_64h       = reader.ReadUInt32();
            this.Unknown_68h       = reader.ReadUInt32();
            this.Unknown_6Ch       = reader.ReadUInt32();
            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.ReadBlock <ResourceSimpleList64 <uint_r> >();
            this.Unknown_A0h       = reader.ReadUInt32();
            this.Unknown_A4h       = reader.ReadUInt32();
            this.Unknown_A8h       = reader.ReadUInt32();
            this.Unknown_ACh       = reader.ReadUInt32();
            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();

            // read reference data
            this.Controller = reader.ReadBlockAt <CharacterClothController>(
                this.ControllerPointer // offset
                );
            this.Bound = reader.ReadBlockAt <Bound>(
                this.BoundPointer // offset
                );
        }
Beispiel #20
0
        public ulong Unknown_38h; // 0x0000000000000000

        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT         = reader.ReadUInt64();
            this.Unknown_8h  = reader.ReadUInt32();
            this.Unknown_Ch  = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadBlock <SimpleList64 <ulong> >();
            this.Unknown_28h = reader.ReadBlock <SimpleList64 <float> >();
            this.Unknown_38h = reader.ReadUInt64();
        }
Beispiel #21
0
        public uint Unknown_54h; // 0x00000000

        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.Unknown_0h  = reader.ReadBlock <string32_r>();
            this.Unknown_20h = reader.ReadUInt64();
            this.Unknown_28h = reader.ReadUInt64();
            this.Unknown_30h = reader.ReadUInt64();
            this.Unknown_38h = reader.ReadUInt64();
            this.Unknown_40h = reader.ReadBlock <SimpleList64 <uint> >();
            this.Unknown_50h = reader.ReadUInt32();
            this.Unknown_54h = reader.ReadUInt32();
        }
        /// <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.Unknown_10h       = reader.ReadUInt32();
            this.Unknown_14h       = reader.ReadUInt32();
            this.Unknown_18h       = reader.ReadUInt32();
            this.Unknown_1Ch       = reader.ReadUInt32();
            this.TextureNameHashes = reader.ReadBlock <ResourceSimpleList64 <uint_r> >();
            this.Textures          = reader.ReadBlock <ResourcePointerList64 <TextureDX11> >();
        }
Beispiel #24
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)
 {
     // read structure data
     this.VFT                    = reader.ReadUInt32();
     this.Unknown_4h             = reader.ReadUInt32();
     this.Unknown_8h             = reader.ReadUInt32();
     this.Unknown_Ch             = reader.ReadUInt32();
     this.Unknown_10h            = reader.ReadUInt32();
     this.Unknown_14h            = reader.ReadUInt32();
     this.Unknown_18h            = reader.ReadUInt32();
     this.Unknown_1Ch            = reader.ReadUInt32();
     this.ParticleRuleNameHashes = reader.ReadBlock <ResourceSimpleList64 <uint_r> >();
     this.ParticleRules          = reader.ReadBlock <ResourcePointerList64 <ParticleRule_GTA5_pc> >();
 }
Beispiel #26
0
 /// <summary>
 /// Reads the data-block from a stream.
 /// </summary>
 public override void Read(ResourceDataReader reader, params object[] parameters)
 {
     // read structure data
     this.Nodes             = reader.ReadBlock <SimpleList64_32 <BVHNode> >();
     this.Unknown_10h       = reader.ReadUInt32();
     this.Unknown_14h       = reader.ReadUInt32();
     this.Unknown_18h       = reader.ReadUInt32();
     this.Unknown_1Ch       = reader.ReadUInt32();
     this.BoundingBoxMin    = reader.ReadVector4();
     this.BoundingBoxMax    = reader.ReadVector4();
     this.BoundingBoxCenter = reader.ReadVector4();
     this.QuantumInverse    = reader.ReadVector4();
     this.Quantum           = reader.ReadVector4();
     this.Trees             = reader.ReadBlock <SimpleList64 <BVHTreeInfo> >();
 }
Beispiel #27
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.TextureDictionaryPointer = reader.ReadUInt64();

            // HACK:    read texture dictionary first!
            //          this will make sure ShaderParameter Data will point to the already read TextureDX11
            //          instead of creating duplicated Texture blocks

            // TODO:    edit ResourceDataReader block pool to handle these scenarios!
            //          see https://github.com/carmineos/gta-toolkit/issues/11

            // read reference data
            this.TextureDictionary = reader.ReadBlockAt <PgDictionary64 <TextureDX11> >(
                this.TextureDictionaryPointer // offset
                );

            this.Shaders     = reader.ReadBlock <ResourcePointerList64 <ShaderFX> >();
            this.Unknown_20h = reader.ReadUInt32();
            this.Unknown_24h = reader.ReadUInt32();
            this.Unknown_28h = reader.ReadUInt32();
            this.Unknown_2Ch = reader.ReadUInt32();
            this.Unknown_30h = reader.ReadUInt32();
            this.Unknown_34h = reader.ReadUInt32();
            this.Unknown_38h = reader.ReadUInt32();
            this.Unknown_3Ch = reader.ReadUInt32();
        }
Beispiel #28
0
        public uint Unknown_3Ch; // 0x00000000

        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.Unknown_0h  = reader.ReadUInt32();
            this.Unknown_4h  = reader.ReadUInt32();
            this.BoneId      = reader.ReadUInt32();
            this.Unknown_Ch  = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadUInt32();
            this.Unknown_1Ch = reader.ReadUInt32();
            this.Min         = reader.ReadBlock <RAGE_Vector3>();
            this.Unknown_2Ch = reader.ReadUInt32();
            this.Max         = reader.ReadBlock <RAGE_Vector3>();
            this.Unknown_3Ch = reader.ReadUInt32();
        }
Beispiel #29
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.BridgeSimGfxPointer    = reader.ReadUInt64();
            this.MorphControllerPointer = reader.ReadUInt64();
            this.VerletCloth1Pointer    = reader.ReadUInt64();
            this.VerletCloth2Pointer    = reader.ReadUInt64();
            this.VerletCloth3Pointer    = reader.ReadUInt64();
            this.Unknown_38h            = reader.ReadUInt64();
            this.Unknown_40h            = reader.ReadUInt64();
            this.Unknown_48h            = reader.ReadUInt64();
            this.Type        = reader.ReadUInt32();
            this.Unknown_54h = reader.ReadUInt32();
            this.Name        = reader.ReadBlock <string32_r>();
            this.Unknown_78h = reader.ReadUInt64();

            // read reference data
            this.BridgeSimGfx = reader.ReadBlockAt <ClothBridgeSimGfx>(
                this.BridgeSimGfxPointer // offset
                );
            this.MorphController = reader.ReadBlockAt <MorphController>(
                this.MorphControllerPointer // offset
                );
            this.VerletCloth1 = reader.ReadBlockAt <VerletCloth>(
                this.VerletCloth1Pointer // offset
                );
            this.VerletCloth2 = reader.ReadBlockAt <VerletCloth>(
                this.VerletCloth2Pointer // offset
                );
            this.VerletCloth3 = reader.ReadBlockAt <VerletCloth>(
                this.VerletCloth3Pointer // offset
                );
        }
Beispiel #30
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.Entries = reader.ReadBlock <ResourceSimpleList64 <VehicleRecordsEntry> >();
        }
Beispiel #31
0
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            base.Read(reader, parameters);

            // read structure data
            this.Unknown_08h         = reader.ReadUInt32();
            this.Unknown_0Ch         = reader.ReadUInt32();
            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.NamePointer         = reader.ReadUInt64();
            this.Unknown_30h_Pointer = reader.ReadUInt64();
            this.Unknown_38h_Pointer = reader.ReadUInt64();
            this.Unknown_40h         = reader.ReadUInt64();
            this.Unknown_48h         = reader.ReadUInt64();
            this.Unknown_50h         = reader.ReadUInt64();
            this.Unknown_58h         = reader.ReadUInt64();
            this.Unknown_60h         = reader.ReadUInt64();
            this.Unknown_68h         = reader.ReadBlock <ShaderResourceView>();
            this.Unknown_A8h         = reader.ReadUInt64();

            // read reference data
            this.Name             = reader.ReadBlockAt <string_r>(NamePointer);
            this.Unknown_30h_Data = reader.ReadBlockAt <ShaderResourceView>(Unknown_30h_Pointer);
        }
Beispiel #32
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.Geometries = reader.ReadBlock <ResourcePointerList64 <DrawableGeometry> >();
            this.GeometriesBoundsPointer = reader.ReadUInt64();
            this.ShaderMappingPointer    = reader.ReadUInt64();
            this.Unknown_28h             = reader.ReadByte();
            this.IsSkinned       = reader.ReadByte();
            this.Unknown_2Ah     = reader.ReadByte();
            this.RootBoneIndex   = reader.ReadByte();
            this.Mask            = reader.ReadByte();
            this.Unknown_2Dh     = reader.ReadByte();
            this.GeometriesCount = reader.ReadUInt16();

            // read reference data
            this.GeometriesBounds = reader.ReadBlockAt <SimpleArray <Aabb> >(
                this.GeometriesBoundsPointer, // offset
                this.GeometriesCount > 1 ? this.GeometriesCount + 1 : this.GeometriesCount
                );
            this.ShaderMapping = reader.ReadBlockAt <SimpleArray <ushort> >(
                this.ShaderMappingPointer, // offset
                this.GeometriesCount
                );
        }
        /// <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.InstanceTuningPointer = reader.ReadUInt64();
            this.DrawablePointer       = reader.ReadUInt64();
            this.Unknown_20h           = reader.ReadUInt64();
            this.ControllerPointer     = reader.ReadUInt64();
            this.Unknown_30h           = reader.ReadUInt64();
            this.Unknown_38h           = reader.ReadUInt64();
            this.Unknown_40h           = reader.ReadUInt64();
            this.Unknown_48h           = reader.ReadUInt64();
            this.Unknown_50h           = reader.ReadUInt64();
            this.Unknown_58h           = reader.ReadUInt64();
            this.UserData    = reader.ReadBlock <SimpleList64 <uint> >();
            this.Unknown_70h = reader.ReadUInt64();
            this.Unknown_78h = reader.ReadUInt32();
            this.Unknown_7Ch = reader.ReadUInt32();

            // read reference data
            this.InstanceTuning = reader.ReadBlockAt <ClothInstanceTuning>(
                this.InstanceTuningPointer // offset
                );
            this.Drawable = reader.ReadBlockAt <FragDrawable>(
                this.DrawablePointer // offset
                );
            this.Controller = reader.ReadBlockAt <ClothController>(
                this.ControllerPointer // offset
                );
        }
Beispiel #34
0
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            int cnt = Convert.ToInt32(parameters[0]);

            // read structure data
            GroupNames  = reader.ReadBlock <ResourcePointerArray64 <string32_r> >(cnt);
            Unknown_VFT = reader.ReadUInt64();
        }
Beispiel #35
0
 /// <summary>
 /// Reads the data-block from a stream.
 /// </summary>
 public override void Read(ResourceDataReader reader, params object[] parameters)
 {
     // read structure data
     this.Unknown_0h = reader.ReadUInt32();
     this.Unknown_4h = reader.ReadUInt32();
     this.cnt1 = reader.ReadUInt32();
     this.Unknown_Ch = reader.ReadUInt32();
     this.Data = reader.ReadBlock<ResourceSimpleArray<byte_r>>(
       cnt1 - 16
       );
 }
Beispiel #36
0
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.Unknown_0h = reader.ReadUInt16();

            reader.Endianess = Endianess.BigEndian;
            this.DataLength = reader.ReadUInt16();
            reader.Endianess = Endianess.LittleEndian;

            Data = reader.ReadBlock<ResourceSimpleArray<byte_r>>(DataLength);
        }
Beispiel #37
0
 /// <summary>
 /// Reads the data-block from a stream.
 /// </summary>
 public override void Read(ResourceDataReader reader, params object[] parameters)
 {
     // read structure data
     this.VFT = reader.ReadUInt32();
     this.Unknown_4h = reader.ReadUInt32();
     this.Unknown_8h = reader.ReadUInt32();
     this.Unknown_Ch = reader.ReadUInt32();
     this.cnt = reader.ReadUInt32();
     this.Unknown_14h = reader.ReadUInt32();
     this.Unknown_18h = reader.ReadUInt32();
     this.Unknown_1Ch = reader.ReadUInt32();
     this.Data = reader.ReadBlock<ResourceSimpleArray<RAGE_Matrix4>>(
       cnt
       );
 }
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT = reader.ReadUInt32();
            this.Unknown_4h = reader.ReadUInt32();
            this.Unknown_8h = reader.ReadUInt32();
            this.Unknown_Ch = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadUInt32();
            this.Unknown_1Ch = reader.ReadUInt32();
            this.NamePointer = reader.ReadUInt64();
            this.Unknown_28h = reader.ReadUInt32();
            this.Unknown_2Ch = reader.ReadUInt32();
            this.Unknown_30h = reader.ReadUInt32();
            this.Unknown_34h = reader.ReadUInt32();
            this.p3 = reader.ReadUInt64();
            this.c3a = reader.ReadUInt16();
            this.c3b = reader.ReadUInt16();
            this.Unknown_44h = reader.ReadUInt32();
            this.p4 = reader.ReadUInt64();
            this.Unknown_50h = reader.ReadUInt32();
            this.Unknown_54h = reader.ReadUInt32();
            this.Unknown_58h = reader.ReadUInt32();
            this.Unknown_5Ch = reader.ReadUInt32();
            this.Unknown_60h = reader.ReadUInt32();
            this.Unknown_64h = reader.ReadUInt32();
            this.Unknown_68h = reader.ReadUInt32();
            this.Unknown_6Ch = reader.ReadUInt32();
            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 = reader.ReadUInt32();
            this.Unknown_ACh = reader.ReadUInt32();
            this.Unknown_B0h = reader.ReadUInt32();
            this.Unknown_B4h = reader.ReadUInt32();
            this.Unknown_B8h = reader.ReadUInt32();
            this.Unknown_BCh = reader.ReadUInt32();
            this.emb1 = reader.ReadBlock<Unknown_P_018>();
            this.emb2 = reader.ReadBlock<Unknown_P_018>();
            this.emb3 = reader.ReadBlock<Unknown_P_018>();
            this.emb4 = reader.ReadBlock<Unknown_P_018>();
            this.emb5 = reader.ReadBlock<Unknown_P_018>();
            this.pref = reader.ReadUInt64();
            this.refcnt1 = reader.ReadUInt16();
            this.refcnt2 = reader.ReadUInt16();
            this.Unknown_39Ch = reader.ReadUInt32();
            this.Unknown_3A0h = reader.ReadUInt32();
            this.Unknown_3A4h = reader.ReadUInt32();
            this.Unknown_3A8h = reader.ReadUInt32();
            this.Unknown_3ACh = reader.ReadUInt32();
            this.Unknown_3B0h = reader.ReadUInt32();
            this.Unknown_3B4h = reader.ReadUInt32();
            this.Unknown_3B8h = reader.ReadUInt32();
            this.Unknown_3BCh = reader.ReadUInt32();

            // read reference data
            this.Name = reader.ReadBlockAt<string_r>(
                this.NamePointer // offset
            );
            this.p3data = reader.ReadBlockAt<ResourcePointerArray64<Unknown_P_008>>(
                this.p3, // offset
                this.c3b
            );
            this.p4data = reader.ReadBlockAt<Unknown_P_005>(
                this.p4 // offset
            );
            this.refs = reader.ReadBlockAt<ResourcePointerArray64<Unknown_P_018>>(
                this.pref, // offset
                this.refcnt2
            );
        }
        public uint Unknown_ACh; // 0x00000000

        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.Unknown_0h = reader.ReadUInt32();
            this.Unknown_4h = reader.ReadUInt32();
            this.Unknown_8h = reader.ReadUInt32();
            this.Unknown_Ch = reader.ReadUInt32();
            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.Unknown_30h = reader.ReadUInt32();
            this.Unknown_34h = reader.ReadUInt32();
            this.Unknown_38h = reader.ReadUInt32();
            this.Unknown_3Ch = reader.ReadUInt32();
            this.Unknown_40h = reader.ReadUInt32();
            this.Unknown_44h = reader.ReadUInt32();
            this.Unknown_48h = reader.ReadUInt32();
            this.Unknown_4Ch = reader.ReadUInt32();
            this.Unknown_50h = reader.ReadUInt32();
            this.Unknown_54h = reader.ReadUInt32();
            this.Unknown_58h = reader.ReadUInt32();
            this.Unknown_5Ch = reader.ReadUInt32();
            this.Unknown_60h = reader.ReadUInt32();
            this.Unknown_64h = reader.ReadUInt32();
            this.Unknown_68h = reader.ReadUInt32();
            this.Unknown_6Ch = reader.ReadUInt32();
            this.Unknown_70h = reader.ReadUInt32();
            this.Unknown_74h = reader.ReadUInt32();
            this.Unknown_78h = reader.ReadUInt32();
            this.Unknown_7Ch = reader.ReadUInt32();
            this.Name = reader.ReadBlock<fragNameStruct_GTA5_pc>();
            this.Unknown_A0h = reader.ReadUInt32();
            this.Unknown_A4h = reader.ReadUInt32();
            this.Unknown_A8h = reader.ReadUInt32();
            this.Unknown_ACh = reader.ReadUInt32();
        }
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT = reader.ReadUInt32();
            this.Unknown_4h = reader.ReadUInt32();
            this.Unknown_8h = reader.ReadUInt32();
            this.Unknown_Ch = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadUInt32();
            this.Unknown_1Ch = reader.ReadUInt32();
            this.NamePointer = reader.ReadUInt64();
            this.Unknown_28h = reader.ReadUInt32();
            this.Unknown_2Ch = reader.ReadUInt32();
            this.Unknown_30h = reader.ReadUInt32();
            this.Unknown_34h = reader.ReadUInt32();
            this.p2 = reader.ReadUInt64();
            this.Unknown_40h = reader.ReadUInt32();
            this.Unknown_44h = reader.ReadUInt32();
            this.p3 = reader.ReadUInt64();
            this.Unknown_50h = reader.ReadUInt32();
            this.Unknown_54h = reader.ReadUInt32();
            this.p4 = reader.ReadUInt64();
            this.Unknown_60h = reader.ReadUInt32();
            this.Unknown_64h = reader.ReadUInt32();
            this.Unknown_68h = reader.ReadUInt32();
            this.Unknown_6Ch = reader.ReadUInt32();
            this.Unknown_70h = reader.ReadUInt32();
            this.Unknown_74h = reader.ReadUInt32();
            this.emb1 = reader.ReadBlock<Unknown_P_018>();
            this.emb2 = reader.ReadBlock<Unknown_P_018>();
            this.emb3 = reader.ReadBlock<Unknown_P_018>();
            this.emb4 = reader.ReadBlock<Unknown_P_018>();
            this.emb5 = reader.ReadBlock<Unknown_P_018>();
            this.emb6 = reader.ReadBlock<Unknown_P_018>();
            this.emb7 = reader.ReadBlock<Unknown_P_018>();
            this.emb8 = reader.ReadBlock<Unknown_P_018>();
            this.emb9 = reader.ReadBlock<Unknown_P_018>();
            this.emb10 = reader.ReadBlock<Unknown_P_018>();
            this.pref = reader.ReadUInt64();
            this.refcnt1 = reader.ReadUInt16();
            this.refcnt2 = reader.ReadUInt16();
            this.Unknown_624h = reader.ReadUInt32();
            this.Unknown_628h = reader.ReadUInt32();
            this.Unknown_62Ch = reader.ReadUInt32();

            // read reference data
            this.Name = reader.ReadBlockAt<string_r>(
                this.NamePointer // offset
            );
            this.p2data = reader.ReadBlockAt<Unknown_P_004>(
                this.p2 // offset
            );
            this.p3data = reader.ReadBlockAt<Unknown_P_004>(
                this.p3 // offset
            );
            this.p4data = reader.ReadBlockAt<Unknown_P_004>(
                this.p4 // offset
            );
            this.refs = reader.ReadBlockAt<ResourcePointerArray64<Unknown_P_018>>(
                this.pref, // offset
                this.refcnt2
            );
        }
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT = reader.ReadUInt32();
            this.Unknown_4h = reader.ReadUInt32();
            this.Unknown_8h = reader.ReadUInt32();
            this.Unknown_Ch = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadUInt32();
            this.Unknown_1Ch = reader.ReadUInt32();
            this.emb1 = reader.ReadBlock<Unknown_P_020>();
            this.emb2 = reader.ReadBlock<Unknown_P_020>();
            this.Unknown_100h = reader.ReadUInt32();
            this.Unknown_104h = reader.ReadUInt32();
            this.Unknown_108h = reader.ReadUInt32();
            this.Unknown_10Ch = reader.ReadUInt32();
            this.Unknown_110h = reader.ReadUInt32();
            this.Unknown_114h = reader.ReadUInt32();
            this.Unknown_118h = reader.ReadUInt32();
            this.Unknown_11Ch = reader.ReadUInt32();
            this.NamePointer = reader.ReadUInt64();
            this.p4 = reader.ReadUInt64();
            this.c1 = reader.ReadUInt16();
            this.c2 = reader.ReadUInt16();
            this.Unknown_134h = reader.ReadUInt32();
            this.p5 = reader.ReadUInt64();
            this.c3 = reader.ReadUInt16();
            this.c4 = reader.ReadUInt16();
            this.Unknown_144h = reader.ReadUInt32();
            this.p6 = reader.ReadUInt64();
            this.c5 = reader.ReadUInt16();
            this.c6 = reader.ReadUInt16();
            this.Unknown_154h = reader.ReadUInt32();
            this.p7 = reader.ReadUInt64();
            this.c7a = reader.ReadUInt16();
            this.c7b = reader.ReadUInt16();
            this.Unknown_164h = reader.ReadUInt32();
            this.p8 = reader.ReadUInt64();
            this.c8 = reader.ReadUInt16();
            this.c9 = reader.ReadUInt16();
            this.Unknown_174h = reader.ReadUInt32();
            this.Unknown_178h = reader.ReadUInt32();
            this.Unknown_17Ch = reader.ReadUInt32();
            this.Unknown_180h = reader.ReadUInt32();
            this.Unknown_184h = reader.ReadUInt32();
            this.pxx = reader.ReadUInt64();
            this.cxx1 = reader.ReadUInt16();
            this.cxx2 = reader.ReadUInt16();
            this.Unknown_194h = reader.ReadUInt32();
            this.Unknown_198h = reader.ReadUInt32();
            this.Unknown_19Ch = reader.ReadUInt32();
            this.Unknown_1A0h = reader.ReadUInt32();
            this.Unknown_1A4h = reader.ReadUInt32();
            this.Unknown_1A8h = reader.ReadUInt32();
            this.Unknown_1ACh = reader.ReadUInt32();
            this.VFTx3 = reader.ReadUInt32();
            this.Unknown_1B4h = reader.ReadUInt32();
            this.p9 = reader.ReadUInt64();
            this.p10 = reader.ReadUInt64();
            this.Unknown_1C8h = reader.ReadUInt32();
            this.Unknown_1CCh = reader.ReadUInt32();
            this.Unknown_1D0h = reader.ReadUInt32();
            this.Unknown_1D4h = reader.ReadUInt32();
            this.VFTx4 = reader.ReadUInt32();
            this.Unknown_1DCh = reader.ReadUInt32();
            this.Unknown_1E0h = reader.ReadUInt32();
            this.Unknown_1E4h = reader.ReadUInt32();
            this.Unknown_1E8h = reader.ReadUInt32();
            this.Unknown_1ECh = reader.ReadUInt32();
            this.p11 = reader.ReadUInt64();
            this.c11a = reader.ReadUInt16();
            this.c11b = reader.ReadUInt16();
            this.Unknown_1FCh = reader.ReadUInt32();
            this.Unknown_200h = reader.ReadUInt32();
            this.Unknown_204h = reader.ReadUInt32();
            this.Unknown_208h = reader.ReadUInt32();
            this.Unknown_20Ch = reader.ReadUInt32();
            this.p12 = reader.ReadUInt64();
            this.c12a = reader.ReadUInt16();
            this.c12b = reader.ReadUInt16();
            this.Unknown_21Ch = reader.ReadUInt32();
            this.Unknown_220h = reader.ReadUInt32();
            this.Unknown_224h = reader.ReadUInt32();
            this.Unknown_228h = reader.ReadUInt32();
            this.Unknown_22Ch = reader.ReadUInt32();
            this.Unknown_230h = reader.ReadUInt32();
            this.Unknown_234h = reader.ReadUInt32();
            this.Unknown_238h = reader.ReadUInt32();
            this.Unknown_23Ch = reader.ReadUInt32();

            // read reference data
            this.Name = reader.ReadBlockAt<string_r>(
                this.NamePointer // offset
            );
            this.p4data = reader.ReadBlockAt<ResourcePointerArray64<Behaviour_GTA5_pc>>(
                this.p4, // offset
                this.c1
            );
            this.p5data = reader.ReadBlockAt<ResourcePointerArray64<Behaviour_GTA5_pc>>(
                this.p5, // offset
                this.c3
            );
            this.p6data = reader.ReadBlockAt<ResourcePointerArray64<Behaviour_GTA5_pc>>(
                this.p6, // offset
                this.c5
            );
            this.p7data = reader.ReadBlockAt<ResourcePointerArray64<Behaviour_GTA5_pc>>(
                this.p7, // offset
                this.c7a
            );
            this.p8data = reader.ReadBlockAt<ResourcePointerArray64<Behaviour_GTA5_pc>>(
                this.p8, // offset
                this.c8
            );
            this.pxxdata = reader.ReadBlockAt<ResourceSimpleArray<Unknown_P_032>>(
                this.pxx, // offset
                this.cxx1
            );
            this.p9data = reader.ReadBlockAt<string_r>(
                this.p9 // offset
            );
            this.p10data = reader.ReadBlockAt<string_r>(
                this.p10 // offset
            );
            this.p11data = reader.ReadBlockAt<ResourcePointerArray64<Unknown_P_007>>(
                this.p11, // offset
                this.c11a
            );
            this.p12data = reader.ReadBlockAt<ResourceSimpleArray<Unknown_P_022>>(
                this.p12, // offset
                this.c12a
            );
        }
Beispiel #42
0
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            int cnt = Convert.ToInt32(parameters[0]);

            Parameters = new List<ShaderParameter_GTA5_pc>();
            for (int i = 0; i < cnt; i++)
            {
                Parameters.Add(reader.ReadBlock<ShaderParameter_GTA5_pc>());
            }

            int offset = 0;
            for (int i = 0; i < cnt; i++)
            {
                var p = Parameters[i];

                // read reference data
                switch (p.DataType)
                {
                    case 0:
                        offset += 0;
                        p.Data = reader.ReadBlockAt<TextureBase_GTA5_pc>(
                            p.DataPointer // offset
                        );
                        break;
                    case 1:
                        offset += 16;
                        p.Data = reader.ReadBlockAt<RAGE_Vector4>(
                            p.DataPointer // offset
                        );
                        break;
                    //case 2:
                    //    offset += 32;
                    //    p.Data = reader.ReadBlockAt<ResourceSimpleArray<RAGE_Vector4>>(
                    //         p.DataPointer, // offset
                    //         2
                    //     );
                    //    break;
                    //case 4:
                    //    offset += 64;
                    //    p.Data = reader.ReadBlockAt<ResourceSimpleArray<RAGE_Vector4>>(
                    //        p.DataPointer, // offset
                    //        4
                    //    );
                    //    break;

                    default:
                        offset += 16 * p.DataType;
                        p.Data = reader.ReadBlockAt<ResourceSimpleArray<RAGE_Vector4>>(
                             p.DataPointer, // offset
                              p.DataType
                         );
                        break;
                }
            }

            reader.Position += offset;
            Hashes = new List<uint>();
            for (int i = 0; i < cnt; i++)
            {
                Hashes.Add(reader.ReadUInt32());
            }

        }
Beispiel #43
0
 /// <summary>
 /// Reads the data-block from a stream.
 /// </summary>
 public override void Read(ResourceDataReader reader, params object[] parameters)
 {
     // read structure data
     this.AABB_Max = reader.ReadBlock<RAGE_Vector4>();
     this.AABB_Min = reader.ReadBlock<RAGE_Vector4>();
 }
        /// <summary>
        /// Reads the data-block from a stream.
        /// </summary>
        public override void Read(ResourceDataReader reader, params object[] parameters)
        {
            // read structure data
            this.VFT = reader.ReadUInt32();
            this.Unknown_4h = reader.ReadUInt32();
            this.Unknown_8h = reader.ReadUInt32();
            this.Unknown_Ch = reader.ReadUInt32();
            this.Unknown_10h = reader.ReadUInt32();
            this.Unknown_14h = reader.ReadUInt32();
            this.Unknown_18h = reader.ReadUInt32();
            this.Unknown_1Ch = reader.ReadUInt32();
            this.Unknown_20h_Pointer = reader.ReadUInt64();
            this.Unknown_28h_Pointer = reader.ReadUInt64();
            this.Unknown_30h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_40h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_50h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_60h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_70h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_80h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_90h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_A0h = reader.ReadBlock<RAGE_Vector4>();
            this.Unknown_B0h = reader.ReadBlock<RAGE_Vector4>();
            this.GroupNamesPointer = reader.ReadUInt64();
            this.GroupsPointer = reader.ReadUInt64();
            this.ChildrenPointer = reader.ReadUInt64();
            this.Archetype1Pointer = reader.ReadUInt64();
            this.Archetype2Pointer = reader.ReadUInt64();
            this.BoundPointer = reader.ReadUInt64();
            this.Unknown_F0h_Pointer = reader.ReadUInt64();
            this.Unknown_F8h_Pointer = reader.ReadUInt64();
            this.Unknown_100h_Pointer = reader.ReadUInt64();
            this.Unknown_108h_Pointer = reader.ReadUInt64();
            this.Unknown_110h_Pointer = reader.ReadUInt64();
            this.Count1 = reader.ReadByte();
            this.Count2 = reader.ReadByte();
            this.GroupsCount = reader.ReadByte();
            this.Unknown_11Bh = reader.ReadByte();
            this.Unknown_11Ch = reader.ReadByte();
            this.ChildrenCount = reader.ReadByte();
            this.Count3 = reader.ReadByte();
            this.Unknown_11Fh = reader.ReadByte();
            this.Unknown_120h = reader.ReadUInt32();
            this.Unknown_124h = reader.ReadUInt32();
            this.Unknown_128h = reader.ReadUInt32();
            this.Unknown_12Ch = reader.ReadUInt32();

            // read reference data
            this.Unknown_20h_Data = reader.ReadBlockAt<Unknown_F_030>(
                this.Unknown_20h_Pointer // offset
            );
            this.Unknown_28h_Data = reader.ReadBlockAt<ResourceSimpleArray<uint_r>>(
                this.Unknown_28h_Pointer, // offset
                this.ChildrenCount
            );
            this.GroupNames = reader.ReadBlockAt<ResourcePointerArray64<fragNameStruct_GTA5_pc>>(
                this.GroupNamesPointer, // offset
                this.GroupsCount
            );
            this.Groups = reader.ReadBlockAt<ResourcePointerArray64<FragTypeGroup_GTA5_pc>>(
                this.GroupsPointer, // offset
                this.GroupsCount
            );
            this.Children = reader.ReadBlockAt<ResourcePointerArray64<FragTypeChild_GTA5_pc>>(
                this.ChildrenPointer, // offset
                this.ChildrenCount
            );
            this.Archetype1 = reader.ReadBlockAt<Archetype_GTA5_pc>(
                this.Archetype1Pointer // offset
            );
            this.Archetype2 = reader.ReadBlockAt<Archetype_GTA5_pc>(
                this.Archetype2Pointer // offset
            );
            this.Bound = reader.ReadBlockAt<Bound_GTA5_pc>(
                this.BoundPointer // offset
            );
            this.Unknown_F0h_Data = reader.ReadBlockAt<ResourceSimpleArray<RAGE_Vector4>>(
                this.Unknown_F0h_Pointer, // offset
                this.ChildrenCount
            );
            this.Unknown_F8h_Data = reader.ReadBlockAt<ResourceSimpleArray<RAGE_Vector4>>(
                this.Unknown_F8h_Pointer, // offset
                this.ChildrenCount
            );
            this.Unknown_100h_Data = reader.ReadBlockAt<Unknown_F_002>(
                this.Unknown_100h_Pointer // offset
            );
            this.Unknown_108h_Data = reader.ReadBlockAt<ResourceSimpleArray<byte_r>>(
                this.Unknown_108h_Pointer, // offset
                this.Count1
            );
            this.Unknown_110h_Data = reader.ReadBlockAt<ResourceSimpleArray<byte_r>>(
                this.Unknown_110h_Pointer, // offset
                this.Count2
            );
        }