Exemple #1
0
 /// <summary>
 /// Read a single field from JMP.
 /// </summary>
 /// <param name="br">Binary Reader to use.</param>
 public JField(DhBinaryReader br)
 {
     Hash    = br.ReadU32();
     Bitmask = br.ReadU32();
     Offset  = br.ReadU16();
     Shift   = br.ReadS8();
     Type    = (JFieldType)br.ReadU8();
     Name    = JMPUtils.HashToName(Hash);
 }
Exemple #2
0
 public MDLVertex(DhBinaryReader br, MDLHeader header, bool useNbt)
 {
     MatrixIndex     = br.ReadS8();
     Tex0MatrixIndex = br.ReadS8();
     Tex1MatrixIndex = br.ReadS8();
     PositionIndex   = br.ReadU16();
     if (header.NormalCount > 0)
     {
         NormalIndex = br.ReadU16();
     }
     if (useNbt)
     {
         //TangentIndex = br.ReadU16();
         //BiTangentIndex = br.ReadU16();
     }
     if (header.ColorCount > 0)
     {
         ColorIndex = br.ReadU16();
     }
     if (header.TextureCoordinateCount > 0)
     {
         TexCoordIndex = br.ReadU16();
     }
 }
Exemple #3
0
        /// <summary>
        /// Read a single field from JMP.
        /// </summary>
        /// <param name="br">Binary Reader to use.</param>
        public JField(DhBinaryReader br)
        {
            // Read field's hash.
            Hash = br.ReadU32();

            // Read field's bitmask.
            Bitmask = br.ReadU32();

            // Read field's offset.
            Offset = br.ReadU16();

            // Read field's shift.
            Shift = br.ReadS8();

            // Read field's type.
            Type = (JFieldType)br.ReadU8();

            // Resolve field's hash to get field name.
            Name = JMPUtils.HashToName(Hash);
        }