Ejemplo n.º 1
0
 public override void ToStreamEx(Stream s, PmxElementFormat f = null)
 {
     base.ToStreamEx(s, f);
     PmxStreamHelper.WriteElement_Int32(s, Index, f.BoneSize);
     V3_BytesConvert.ToStream(s, Translation);
     V4_BytesConvert.ToStream(s, new Vector4(Rotaion.X, Rotaion.Y, Rotaion.Z, Rotaion.W));
 }
Ejemplo n.º 2
0
        // Token: 0x06000188 RID: 392 RVA: 0x0000FA90 File Offset: 0x0000DC90
        public void ToStreamEx(Stream s, PmxElementFormat f)
        {
            PmxStreamHelper.WriteString(s, this.Name, f);
            PmxStreamHelper.WriteString(s, this.NameE, f);
            bool flag = this.Kind != PmxJoint.JointKind.Sp6DOF && f.Ver < 2.1f;

            if (flag)
            {
                s.WriteByte(0);
            }
            else
            {
                s.WriteByte((byte)this.Kind);
            }
            PmxStreamHelper.WriteElement_Int32(s, this.BodyA, f.BodySize, true);
            PmxStreamHelper.WriteElement_Int32(s, this.BodyB, f.BodySize, true);
            V3_BytesConvert.ToStream(s, this.Position);
            V3_BytesConvert.ToStream(s, this.Rotation);
            V3_BytesConvert.ToStream(s, this.Limit_MoveLow);
            V3_BytesConvert.ToStream(s, this.Limit_MoveHigh);
            V3_BytesConvert.ToStream(s, this.Limit_AngleLow);
            V3_BytesConvert.ToStream(s, this.Limit_AngleHigh);
            V3_BytesConvert.ToStream(s, this.SpConst_Move);
            V3_BytesConvert.ToStream(s, this.SpConst_Rotate);
        }
Ejemplo n.º 3
0
        // Token: 0x060001AB RID: 427 RVA: 0x000102D8 File Offset: 0x0000E4D8
        public void ToStreamEx_TexTable(Stream s, PmxTextureTable tx, PmxElementFormat f)
        {
            PmxStreamHelper.WriteString(s, this.Name, f);
            PmxStreamHelper.WriteString(s, this.NameE, f);
            V4_BytesConvert.ToStream(s, V4_BytesConvert.ColorToVector4(this.Diffuse));
            V3_BytesConvert.ToStream(s, V3_BytesConvert.ColorToVector3(this.Specular));
            PmxStreamHelper.WriteElement_Float(s, this.Power);
            V3_BytesConvert.ToStream(s, V3_BytesConvert.ColorToVector3(this.Ambient));
            s.WriteByte((byte)this.Flags);
            V4_BytesConvert.ToStream(s, V4_BytesConvert.ColorToVector4(this.EdgeColor));
            PmxStreamHelper.WriteElement_Float(s, this.EdgeSize);
            PmxStreamHelper.WriteElement_Int32(s, tx.GetIndex(this.Tex), f.TexSize, true);
            PmxStreamHelper.WriteElement_Int32(s, tx.GetIndex(this.Sphere), f.TexSize, true);
            s.WriteByte((byte)this.SphereMode);
            int  toonIndex = SystemToon.GetToonIndex(this.Toon);
            bool flag      = toonIndex < 0;

            if (flag)
            {
                s.WriteByte(0);
                PmxStreamHelper.WriteElement_Int32(s, tx.GetIndex(this.Toon), f.TexSize, true);
            }
            else
            {
                s.WriteByte(1);
                s.WriteByte((byte)toonIndex);
            }
            PmxStreamHelper.WriteString(s, this.Memo, f);
            PmxStreamHelper.WriteElement_Int32(s, this.FaceCount, 4, true);
        }
        public void ToStreamEx_TexTable(Stream s, PmxTextureTable tx, PmxElementFormat f = null)
        {
            PmxStreamHelper.WriteString(s, Name, f);
            PmxStreamHelper.WriteString(s, NameE, f);
            V4_BytesConvert.ToStream(s, Diffuse);
            V3_BytesConvert.ToStream(s, Specular);
            PmxStreamHelper.WriteElement_Float(s, Power);
            V3_BytesConvert.ToStream(s, Ambient);
            s.WriteByte((byte)Flags);
            V4_BytesConvert.ToStream(s, EdgeColor);
            PmxStreamHelper.WriteElement_Float(s, EdgeSize);
            PmxStreamHelper.WriteElement_Int32(s, tx.GetIndex(Tex), f.TexSize);
            PmxStreamHelper.WriteElement_Int32(s, tx.GetIndex(Sphere), f.TexSize);
            s.WriteByte((byte)SphereMode);
            int toonIndex = SystemToon.GetToonIndex(Toon);

            if (toonIndex < 0)
            {
                s.WriteByte(0);
                PmxStreamHelper.WriteElement_Int32(s, tx.GetIndex(Toon), f.TexSize);
            }
            else
            {
                s.WriteByte(1);
                s.WriteByte((byte)toonIndex);
            }
            PmxStreamHelper.WriteString(s, Memo, f);
            PmxStreamHelper.WriteElement_Int32(s, FaceCount);
            if (f.WithID)
            {
                PmxStreamHelper.WriteElement_UInt(s, base.UID);
                PmxStreamHelper.WriteElement_UInt(s, base.CID);
            }
        }
Ejemplo n.º 5
0
 // Token: 0x06000173 RID: 371 RVA: 0x0000F649 File Offset: 0x0000D849
 public override void FromStreamEx(Stream s, PmxElementFormat size)
 {
     this.Index    = PmxStreamHelper.ReadElement_Int32(s, size.BodySize, true);
     this.Local    = (s.ReadByte() != 0);
     this.Velocity = V3_BytesConvert.FromStream(s);
     this.Torque   = V3_BytesConvert.FromStream(s);
 }
Ejemplo n.º 6
0
 // Token: 0x06000174 RID: 372 RVA: 0x0000F688 File Offset: 0x0000D888
 public override void ToStreamEx(Stream s, PmxElementFormat size)
 {
     PmxStreamHelper.WriteElement_Int32(s, this.Index, size.BodySize, true);
     s.WriteByte(this.Local ? 1 : 0);
     V3_BytesConvert.ToStream(s, this.Velocity);
     V3_BytesConvert.ToStream(s, this.Torque);
 }
Ejemplo n.º 7
0
        public void FromStreamEx(Stream s, PmxElementFormat f = null)
        {
            Name  = PmxStreamHelper.ReadString(s, f);
            NameE = PmxStreamHelper.ReadString(s, f);
            Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
            Group = PmxStreamHelper.ReadElement_Int32(s, 1);
            ushort bits = (ushort)PmxStreamHelper.ReadElement_Int32(s, 2, signed: false);

            PassGroup.FromFlagBits(bits);
            BoxType  = (BoxKind)s.ReadByte();
            BoxSize  = V3_BytesConvert.FromStream(s);
            Position = V3_BytesConvert.FromStream(s);
            Rotation = V3_BytesConvert.FromStream(s);
            Mass     = PmxStreamHelper.ReadElement_Float(s);
            Vector4 vector = V4_BytesConvert.FromStream(s);

            PositionDamping = vector.X;
            RotationDamping = vector.Y;
            Restitution     = vector.Z;
            Friction        = vector.W;
            Mode            = (ModeType)s.ReadByte();
            if (f.WithID)
            {
                base.UID = PmxStreamHelper.ReadElement_UInt(s);
                base.CID = PmxStreamHelper.ReadElement_UInt(s);
            }
        }
Ejemplo n.º 8
0
 public void ToStreamEx(Stream s, PmxElementFormat f = null)
 {
     PmxStreamHelper.WriteString(s, Name, f);
     PmxStreamHelper.WriteString(s, NameE, f);
     if (Kind != 0 && f.Ver < 2.1f)
     {
         s.WriteByte(0);
     }
     else
     {
         s.WriteByte((byte)Kind);
     }
     PmxStreamHelper.WriteElement_Int32(s, BodyA, f.BodySize);
     PmxStreamHelper.WriteElement_Int32(s, BodyB, f.BodySize);
     V3_BytesConvert.ToStream(s, Position);
     V3_BytesConvert.ToStream(s, Rotation);
     V3_BytesConvert.ToStream(s, Limit_MoveLow);
     V3_BytesConvert.ToStream(s, Limit_MoveHigh);
     V3_BytesConvert.ToStream(s, Limit_AngleLow);
     V3_BytesConvert.ToStream(s, Limit_AngleHigh);
     V3_BytesConvert.ToStream(s, SpConst_Move);
     V3_BytesConvert.ToStream(s, SpConst_Rotate);
     if (f.WithID)
     {
         PmxStreamHelper.WriteElement_UInt(s, base.UID);
         PmxStreamHelper.WriteElement_UInt(s, base.CID);
     }
 }
Ejemplo n.º 9
0
        public void FromStreamEx(Stream s, PmxElementFormat f = null)
        {
            Position = V3_BytesConvert.FromStream(s);
            Normal   = V3_BytesConvert.FromStream(s);
            UV       = V2_BytesConvert.FromStream(s);
            for (int i = 0; i < f.UVACount; i++)
            {
                Vector4 vector = V4_BytesConvert.FromStream(s);
                if (0 <= i && i < UVA.Length)
                {
                    UVA[i] = vector;
                }
            }
            Deform = (DeformType)s.ReadByte();
            SDEF   = false;
            switch (Deform)
            {
            case DeformType.BDEF1:
                Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[0].Value = 1f;
                break;

            case DeformType.BDEF2:
                Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[1].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[0].Value = PmxStreamHelper.ReadElement_Float(s);
                Weight[1].Value = 1f - Weight[0].Value;
                break;

            case DeformType.BDEF4:
            case DeformType.QDEF:
                Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[1].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[2].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[3].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[0].Value = PmxStreamHelper.ReadElement_Float(s);
                Weight[1].Value = PmxStreamHelper.ReadElement_Float(s);
                Weight[2].Value = PmxStreamHelper.ReadElement_Float(s);
                Weight[3].Value = PmxStreamHelper.ReadElement_Float(s);
                break;

            case DeformType.SDEF:
                Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[1].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
                Weight[0].Value = PmxStreamHelper.ReadElement_Float(s);
                Weight[1].Value = 1f - Weight[0].Value;
                C0 = V3_BytesConvert.FromStream(s);
                R0 = V3_BytesConvert.FromStream(s);
                R1 = V3_BytesConvert.FromStream(s);
                CalcSDEF_RW();
                SDEF = true;
                break;
            }
            EdgeScale = PmxStreamHelper.ReadElement_Float(s);
            if (f.WithID)
            {
                base.UID = PmxStreamHelper.ReadElement_UInt(s);
                base.CID = PmxStreamHelper.ReadElement_UInt(s);
            }
        }
Ejemplo n.º 10
0
 public void FromStreamEx_TexTable(Stream s, PmxTextureTable tx, PmxElementFormat f = null)
 {
     Name       = PmxStreamHelper.ReadString(s, f);
     NameE      = PmxStreamHelper.ReadString(s, f);
     Diffuse    = V4_BytesConvert.FromStream(s);
     Specular   = V3_BytesConvert.FromStream(s);
     Power      = PmxStreamHelper.ReadElement_Float(s);
     Ambient    = V3_BytesConvert.FromStream(s);
     Flags      = (MaterialFlags)s.ReadByte();
     EdgeColor  = V4_BytesConvert.FromStream(s);
     EdgeSize   = PmxStreamHelper.ReadElement_Float(s);
     Tex        = tx.GetName(PmxStreamHelper.ReadElement_Int32(s, f.TexSize));
     Sphere     = tx.GetName(PmxStreamHelper.ReadElement_Int32(s, f.TexSize));
     SphereMode = (SphereModeType)s.ReadByte();
     if (s.ReadByte() == 0)
     {
         Toon = tx.GetName(PmxStreamHelper.ReadElement_Int32(s, f.TexSize));
     }
     else
     {
         int n = s.ReadByte();
         Toon = SystemToon.GetToonName(n);
     }
     Memo = PmxStreamHelper.ReadString(s, f);
     UpdateAttributeFromMemo();
     FaceCount = PmxStreamHelper.ReadElement_Int32(s);
     if (f.WithID)
     {
         base.UID = PmxStreamHelper.ReadElement_UInt(s);
         base.CID = PmxStreamHelper.ReadElement_UInt(s);
     }
 }
 public override void FromStreamEx(Stream s, PmxElementFormat f = null)
 {
     base.FromStreamEx(s, f);
     Index    = PmxStreamHelper.ReadElement_Int32(s, f.BodySize);
     Local    = (s.ReadByte() != 0);
     Velocity = V3_BytesConvert.FromStream(s);
     Torque   = V3_BytesConvert.FromStream(s);
 }
 public override void ToStreamEx(Stream s, PmxElementFormat f = null)
 {
     base.ToStreamEx(s, f);
     PmxStreamHelper.WriteElement_Int32(s, Index, f.BodySize);
     s.WriteByte((byte)(Local ? 1u : 0u));
     V3_BytesConvert.ToStream(s, Velocity);
     V3_BytesConvert.ToStream(s, Torque);
 }
Ejemplo n.º 13
0
        // Token: 0x06000114 RID: 276 RVA: 0x0000E920 File Offset: 0x0000CB20
        public override void FromStreamEx(Stream s, PmxElementFormat size)
        {
            this.Index       = PmxStreamHelper.ReadElement_Int32(s, size.BoneSize, true);
            this.Translation = V3_BytesConvert.FromStream(s);
            Vector4 vector = V4_BytesConvert.FromStream(s);

            this.Rotaion = new Quaternion(vector.x, vector.y, vector.z, vector.w);
        }
Ejemplo n.º 14
0
        public override void FromStreamEx(Stream s, PmxElementFormat f = null)
        {
            base.FromStreamEx(s, f);
            Index       = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
            Translation = V3_BytesConvert.FromStream(s);
            Vector4 vector = V4_BytesConvert.FromStream(s);

            Rotaion = new Quaternion(vector.X, vector.Y, vector.Z, vector.W);
        }
Ejemplo n.º 15
0
        public void ToStreamEx(Stream s, PmxElementFormat f = null)
        {
            V3_BytesConvert.ToStream(s, Position);
            V3_BytesConvert.ToStream(s, Normal);
            V2_BytesConvert.ToStream(s, UV);
            for (int i = 0; i < f.UVACount; i++)
            {
                V4_BytesConvert.ToStream(s, UVA[i]);
            }
            if (Deform == DeformType.QDEF && f.Ver < 2.1f)
            {
                s.WriteByte(2);
            }
            else
            {
                s.WriteByte((byte)Deform);
            }
            switch (Deform)
            {
            case DeformType.BDEF1:
                PmxStreamHelper.WriteElement_Int32(s, Weight[0].Bone, f.BoneSize);
                break;

            case DeformType.BDEF2:
                PmxStreamHelper.WriteElement_Int32(s, Weight[0].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Int32(s, Weight[1].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Float(s, Weight[0].Value);
                break;

            case DeformType.BDEF4:
            case DeformType.QDEF:
                PmxStreamHelper.WriteElement_Int32(s, Weight[0].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Int32(s, Weight[1].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Int32(s, Weight[2].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Int32(s, Weight[3].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Float(s, Weight[0].Value);
                PmxStreamHelper.WriteElement_Float(s, Weight[1].Value);
                PmxStreamHelper.WriteElement_Float(s, Weight[2].Value);
                PmxStreamHelper.WriteElement_Float(s, Weight[3].Value);
                break;

            case DeformType.SDEF:
                PmxStreamHelper.WriteElement_Int32(s, Weight[0].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Int32(s, Weight[1].Bone, f.BoneSize);
                PmxStreamHelper.WriteElement_Float(s, Weight[0].Value);
                V3_BytesConvert.ToStream(s, C0);
                V3_BytesConvert.ToStream(s, R0);
                V3_BytesConvert.ToStream(s, R1);
                break;
            }
            PmxStreamHelper.WriteElement_Float(s, EdgeScale);
            if (f.WithID)
            {
                PmxStreamHelper.WriteElement_UInt(s, base.UID);
                PmxStreamHelper.WriteElement_UInt(s, base.CID);
            }
        }
Ejemplo n.º 16
0
        // Token: 0x06000281 RID: 641 RVA: 0x00013E78 File Offset: 0x00012078
        public void FromStreamEx(Stream s, PmxElementFormat f)
        {
            this.Position = V3_BytesConvert.FromStream(s);
            this.Normal   = V3_BytesConvert.FromStream(s);
            this.UV       = V2_BytesConvert.FromStream(s);
            for (int i = 0; i < f.UVACount; i++)
            {
                Vector4 vector = V4_BytesConvert.FromStream(s);
                bool    flag   = 0 <= i && i < this.UVA.Length;
                if (flag)
                {
                    this.UVA[i] = vector;
                }
            }
            this.Deform = (PmxVertex.DeformType)s.ReadByte();
            this.SDEF   = false;
            switch (this.Deform)
            {
            case PmxVertex.DeformType.BDEF1:
                this.Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[0].Value = 1f;
                break;

            case PmxVertex.DeformType.BDEF2:
                this.Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[1].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[0].Value = PmxStreamHelper.ReadElement_Float(s);
                this.Weight[1].Value = 1f - this.Weight[0].Value;
                break;

            case PmxVertex.DeformType.BDEF4:
            case PmxVertex.DeformType.QDEF:
                this.Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[1].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[2].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[3].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[0].Value = PmxStreamHelper.ReadElement_Float(s);
                this.Weight[1].Value = PmxStreamHelper.ReadElement_Float(s);
                this.Weight[2].Value = PmxStreamHelper.ReadElement_Float(s);
                this.Weight[3].Value = PmxStreamHelper.ReadElement_Float(s);
                break;

            case PmxVertex.DeformType.SDEF:
                this.Weight[0].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[1].Bone  = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.Weight[0].Value = PmxStreamHelper.ReadElement_Float(s);
                this.Weight[1].Value = 1f - this.Weight[0].Value;
                this.C0 = V3_BytesConvert.FromStream(s);
                this.R0 = V3_BytesConvert.FromStream(s);
                this.R1 = V3_BytesConvert.FromStream(s);
                this.CalcSDEF_RW();
                this.SDEF = true;
                break;
            }
            this.EdgeScale = PmxStreamHelper.ReadElement_Float(s);
        }
Ejemplo n.º 17
0
 public void ToStreamEx(Stream s, PmxElementFormat f = null)
 {
     PmxStreamHelper.WriteElement_Int32(s, Bone, f.BoneSize);
     s.WriteByte((byte)(IsLimit ? 1u : 0u));
     if (IsLimit)
     {
         V3_BytesConvert.ToStream(s, Low);
         V3_BytesConvert.ToStream(s, High);
     }
 }
Ejemplo n.º 18
0
 public void FromStreamEx(Stream s, PmxElementFormat f = null)
 {
     Bone    = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
     IsLimit = (s.ReadByte() != 0);
     if (IsLimit)
     {
         Low  = V3_BytesConvert.FromStream(s);
         High = V3_BytesConvert.FromStream(s);
     }
 }
Ejemplo n.º 19
0
        // Token: 0x06000282 RID: 642 RVA: 0x0001417C File Offset: 0x0001237C
        public void ToStreamEx(Stream s, PmxElementFormat f)
        {
            V3_BytesConvert.ToStream(s, this.Position);
            V3_BytesConvert.ToStream(s, this.Normal);
            V2_BytesConvert.ToStream(s, this.UV);
            for (int i = 0; i < f.UVACount; i++)
            {
                V4_BytesConvert.ToStream(s, this.UVA[i]);
            }
            bool flag = this.Deform == PmxVertex.DeformType.QDEF && f.Ver < 2.1f;

            if (flag)
            {
                s.WriteByte(2);
            }
            else
            {
                s.WriteByte((byte)this.Deform);
            }
            switch (this.Deform)
            {
            case PmxVertex.DeformType.BDEF1:
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[0].Bone, f.BoneSize, true);
                break;

            case PmxVertex.DeformType.BDEF2:
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[0].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[1].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Float(s, this.Weight[0].Value);
                break;

            case PmxVertex.DeformType.BDEF4:
            case PmxVertex.DeformType.QDEF:
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[0].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[1].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[2].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[3].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Float(s, this.Weight[0].Value);
                PmxStreamHelper.WriteElement_Float(s, this.Weight[1].Value);
                PmxStreamHelper.WriteElement_Float(s, this.Weight[2].Value);
                PmxStreamHelper.WriteElement_Float(s, this.Weight[3].Value);
                break;

            case PmxVertex.DeformType.SDEF:
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[0].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Int32(s, this.Weight[1].Bone, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Float(s, this.Weight[0].Value);
                V3_BytesConvert.ToStream(s, this.C0);
                V3_BytesConvert.ToStream(s, this.R0);
                V3_BytesConvert.ToStream(s, this.R1);
                break;
            }
            PmxStreamHelper.WriteElement_Float(s, this.EdgeScale);
        }
Ejemplo n.º 20
0
            // Token: 0x060003A3 RID: 931 RVA: 0x0001978C File Offset: 0x0001798C
            public void ToStreamEx(Stream s, PmxElementFormat f)
            {
                PmxStreamHelper.WriteElement_Int32(s, this.Bone, f.BoneSize, true);
                s.WriteByte(this.IsLimit ? 1 : 0);
                bool isLimit = this.IsLimit;

                if (isLimit)
                {
                    V3_BytesConvert.ToStream(s, this.Low);
                    V3_BytesConvert.ToStream(s, this.High);
                }
            }
Ejemplo n.º 21
0
            // Token: 0x060003A2 RID: 930 RVA: 0x00019738 File Offset: 0x00017938
            public void FromStreamEx(Stream s, PmxElementFormat f)
            {
                this.Bone    = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.IsLimit = (s.ReadByte() != 0);
                bool isLimit = this.IsLimit;

                if (isLimit)
                {
                    this.Low  = V3_BytesConvert.FromStream(s);
                    this.High = V3_BytesConvert.FromStream(s);
                }
            }
Ejemplo n.º 22
0
        // Token: 0x06000106 RID: 262 RVA: 0x0000E550 File Offset: 0x0000C750
        public void FromStreamEx(Stream s, PmxElementFormat f)
        {
            this.Name     = PmxStreamHelper.ReadString(s, f);
            this.NameE    = PmxStreamHelper.ReadString(s, f);
            this.Position = V3_BytesConvert.FromStream(s);
            this.Parent   = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
            this.Level    = PmxStreamHelper.ReadElement_Int32(s, 4, true);
            this.Flags    = (PmxBone.BoneFlags)PmxStreamHelper.ReadElement_Int32(s, 2, false);
            bool flag = this.GetFlag(PmxBone.BoneFlags.ToBone);

            if (flag)
            {
                this.To_Bone = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
            }
            else
            {
                this.To_Offset = V3_BytesConvert.FromStream(s);
            }
            bool flag2 = this.GetFlag(PmxBone.BoneFlags.AppendRotation) || this.GetFlag(PmxBone.BoneFlags.AppendTranslation);

            if (flag2)
            {
                this.AppendParent = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize, true);
                this.AppendRatio  = PmxStreamHelper.ReadElement_Float(s);
            }
            bool flag3 = this.GetFlag(PmxBone.BoneFlags.FixAxis);

            if (flag3)
            {
                this.Axis = V3_BytesConvert.FromStream(s);
            }
            bool flag4 = this.GetFlag(PmxBone.BoneFlags.LocalFrame);

            if (flag4)
            {
                this.LocalX = V3_BytesConvert.FromStream(s);
                this.LocalZ = V3_BytesConvert.FromStream(s);
                this.NormalizeLocal();
            }
            bool flag5 = this.GetFlag(PmxBone.BoneFlags.ExtParent);

            if (flag5)
            {
                this.ExtKey = PmxStreamHelper.ReadElement_Int32(s, 4, true);
            }
            bool flag6 = this.GetFlag(PmxBone.BoneFlags.IK);

            if (flag6)
            {
                this.IK.FromStreamEx(s, f);
            }
        }
Ejemplo n.º 23
0
        // Token: 0x06000107 RID: 263 RVA: 0x0000E6B4 File Offset: 0x0000C8B4
        public void ToStreamEx(Stream s, PmxElementFormat f)
        {
            PmxStreamHelper.WriteString(s, this.Name, f);
            PmxStreamHelper.WriteString(s, this.NameE, f);
            V3_BytesConvert.ToStream(s, this.Position);
            PmxStreamHelper.WriteElement_Int32(s, this.Parent, f.BoneSize, true);
            PmxStreamHelper.WriteElement_Int32(s, this.Level, 4, true);
            PmxStreamHelper.WriteElement_Int32(s, (int)this.Flags, 2, false);
            bool flag = this.GetFlag(PmxBone.BoneFlags.ToBone);

            if (flag)
            {
                PmxStreamHelper.WriteElement_Int32(s, this.To_Bone, f.BoneSize, true);
            }
            else
            {
                V3_BytesConvert.ToStream(s, this.To_Offset);
            }
            bool flag2 = this.GetFlag(PmxBone.BoneFlags.AppendRotation) || this.GetFlag(PmxBone.BoneFlags.AppendTranslation);

            if (flag2)
            {
                PmxStreamHelper.WriteElement_Int32(s, this.AppendParent, f.BoneSize, true);
                PmxStreamHelper.WriteElement_Float(s, this.AppendRatio);
            }
            bool flag3 = this.GetFlag(PmxBone.BoneFlags.FixAxis);

            if (flag3)
            {
                V3_BytesConvert.ToStream(s, this.Axis);
            }
            bool flag4 = this.GetFlag(PmxBone.BoneFlags.LocalFrame);

            if (flag4)
            {
                this.NormalizeLocal();
                V3_BytesConvert.ToStream(s, this.LocalX);
                V3_BytesConvert.ToStream(s, this.LocalZ);
            }
            bool flag5 = this.GetFlag(PmxBone.BoneFlags.ExtParent);

            if (flag5)
            {
                PmxStreamHelper.WriteElement_Int32(s, this.ExtKey, 4, true);
            }
            bool flag6 = this.GetFlag(PmxBone.BoneFlags.IK);

            if (flag6)
            {
                this.IK.ToStreamEx(s, f);
            }
        }
 // Token: 0x060001CD RID: 461 RVA: 0x000109A8 File Offset: 0x0000EBA8
 public override void ToStreamEx(Stream s, PmxElementFormat size)
 {
     PmxStreamHelper.WriteElement_Int32(s, this.Index, size.MaterialSize, true);
     s.WriteByte((byte)this.Op);
     V4_BytesConvert.ToStream(s, this.Data.Diffuse);
     V4_BytesConvert.ToStream(s, this.Data.Specular);
     V3_BytesConvert.ToStream(s, this.Data.Ambient);
     V4_BytesConvert.ToStream(s, this.Data.EdgeColor);
     PmxStreamHelper.WriteElement_Float(s, this.Data.EdgeSize);
     V4_BytesConvert.ToStream(s, this.Data.Tex);
     V4_BytesConvert.ToStream(s, this.Data.Sphere);
     V4_BytesConvert.ToStream(s, this.Data.Toon);
 }
 // Token: 0x060001CC RID: 460 RVA: 0x000108F0 File Offset: 0x0000EAF0
 public override void FromStreamEx(Stream s, PmxElementFormat size)
 {
     this.Index          = PmxStreamHelper.ReadElement_Int32(s, size.MaterialSize, true);
     this.Op             = (PmxMaterialMorph.OpType)s.ReadByte();
     this.Data.Diffuse   = V4_BytesConvert.FromStream(s);
     this.Data.Specular  = V4_BytesConvert.FromStream(s);
     this.Data.Ambient   = V3_BytesConvert.FromStream(s);
     this.Data.EdgeColor = V4_BytesConvert.FromStream(s);
     this.Data.EdgeSize  = PmxStreamHelper.ReadElement_Float(s);
     this.Data.Tex       = V4_BytesConvert.FromStream(s);
     this.Data.Sphere    = V4_BytesConvert.FromStream(s);
     this.Data.Toon      = V4_BytesConvert.FromStream(s);
 }
 public override void FromStreamEx(Stream s, PmxElementFormat f = null)
 {
     base.FromStreamEx(s, f);
     Index          = PmxStreamHelper.ReadElement_Int32(s, f.MaterialSize);
     Op             = (OpType)s.ReadByte();
     Data.Diffuse   = V4_BytesConvert.FromStream(s);
     Data.Specular  = V4_BytesConvert.FromStream(s);
     Data.Ambient   = V3_BytesConvert.FromStream(s);
     Data.EdgeColor = V4_BytesConvert.FromStream(s);
     Data.EdgeSize  = PmxStreamHelper.ReadElement_Float(s);
     Data.Tex       = V4_BytesConvert.FromStream(s);
     Data.Sphere    = V4_BytesConvert.FromStream(s);
     Data.Toon      = V4_BytesConvert.FromStream(s);
 }
 public override void ToStreamEx(Stream s, PmxElementFormat f = null)
 {
     base.ToStreamEx(s, f);
     PmxStreamHelper.WriteElement_Int32(s, Index, f.MaterialSize);
     s.WriteByte((byte)Op);
     V4_BytesConvert.ToStream(s, Data.Diffuse);
     V4_BytesConvert.ToStream(s, Data.Specular);
     V3_BytesConvert.ToStream(s, Data.Ambient);
     V4_BytesConvert.ToStream(s, Data.EdgeColor);
     PmxStreamHelper.WriteElement_Float(s, Data.EdgeSize);
     V4_BytesConvert.ToStream(s, Data.Tex);
     V4_BytesConvert.ToStream(s, Data.Sphere);
     V4_BytesConvert.ToStream(s, Data.Toon);
 }
Ejemplo n.º 28
0
 // Token: 0x060000DE RID: 222 RVA: 0x0000DE5C File Offset: 0x0000C05C
 public void ToStreamEx(Stream s, PmxElementFormat f)
 {
     PmxStreamHelper.WriteString(s, this.Name, f);
     PmxStreamHelper.WriteString(s, this.NameE, f);
     PmxStreamHelper.WriteElement_Int32(s, this.Bone, f.BoneSize, true);
     PmxStreamHelper.WriteElement_Int32(s, this.Group, 1, true);
     PmxStreamHelper.WriteElement_Int32(s, (int)this.PassGroup.ToFlagBits(), 2, false);
     s.WriteByte((byte)this.BoxType);
     V3_BytesConvert.ToStream(s, this.BoxSize);
     V3_BytesConvert.ToStream(s, this.Position);
     V3_BytesConvert.ToStream(s, this.Rotation);
     PmxStreamHelper.WriteElement_Float(s, this.Mass);
     V4_BytesConvert.ToStream(s, new Vector4(this.PositionDamping, this.RotationDamping, this.Restitution, this.Friction));
     s.WriteByte((byte)this.Mode);
 }
Ejemplo n.º 29
0
 public void ToStreamEx(Stream s, PmxElementFormat f = null)
 {
     PmxStreamHelper.WriteString(s, Name, f);
     PmxStreamHelper.WriteString(s, NameE, f);
     V3_BytesConvert.ToStream(s, Position);
     PmxStreamHelper.WriteElement_Int32(s, Parent, f.BoneSize);
     PmxStreamHelper.WriteElement_Int32(s, Level);
     PmxStreamHelper.WriteElement_Int32(s, (int)Flags, 2, signed: false);
     if (GetFlag(BoneFlags.ToBone))
     {
         PmxStreamHelper.WriteElement_Int32(s, To_Bone, f.BoneSize);
     }
     else
     {
         V3_BytesConvert.ToStream(s, To_Offset);
     }
     if (GetFlag(BoneFlags.AddRotation) || GetFlag(BoneFlags.AddTranslation))
     {
         PmxStreamHelper.WriteElement_Int32(s, AddParent, f.BoneSize);
         PmxStreamHelper.WriteElement_Float(s, AddRatio);
     }
     if (GetFlag(BoneFlags.FixAxis))
     {
         V3_BytesConvert.ToStream(s, Axis);
     }
     if (GetFlag(BoneFlags.LocalFrame))
     {
         if (!f.WithID)
         {
             NormalizeLocal();
         }
         V3_BytesConvert.ToStream(s, LocalX);
         V3_BytesConvert.ToStream(s, LocalZ);
     }
     if (GetFlag(BoneFlags.ExtParent))
     {
         PmxStreamHelper.WriteElement_Int32(s, ExtKey);
     }
     if (GetFlag(BoneFlags.IK))
     {
         IK.ToStreamEx(s, f);
     }
     if (f.WithID)
     {
         PmxStreamHelper.WriteElement_UInt(s, base.UID);
         PmxStreamHelper.WriteElement_UInt(s, base.CID);
     }
 }
Ejemplo n.º 30
0
 public void FromStreamEx(Stream s, PmxElementFormat f = null)
 {
     Name     = PmxStreamHelper.ReadString(s, f);
     NameE    = PmxStreamHelper.ReadString(s, f);
     Position = V3_BytesConvert.FromStream(s);
     Parent   = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
     Level    = PmxStreamHelper.ReadElement_Int32(s);
     Flags    = (BoneFlags)PmxStreamHelper.ReadElement_Int32(s, 2, signed: false);
     if (GetFlag(BoneFlags.ToBone))
     {
         To_Bone = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
     }
     else
     {
         To_Offset = V3_BytesConvert.FromStream(s);
     }
     if (GetFlag(BoneFlags.AddRotation) || GetFlag(BoneFlags.AddTranslation))
     {
         AddParent = PmxStreamHelper.ReadElement_Int32(s, f.BoneSize);
         AddRatio  = PmxStreamHelper.ReadElement_Float(s);
     }
     if (GetFlag(BoneFlags.FixAxis))
     {
         Axis = V3_BytesConvert.FromStream(s);
     }
     if (GetFlag(BoneFlags.LocalFrame))
     {
         LocalX = V3_BytesConvert.FromStream(s);
         LocalZ = V3_BytesConvert.FromStream(s);
         if (!f.WithID)
         {
             NormalizeLocal();
         }
     }
     if (GetFlag(BoneFlags.ExtParent))
     {
         ExtKey = PmxStreamHelper.ReadElement_Int32(s);
     }
     if (GetFlag(BoneFlags.IK))
     {
         IK.FromStreamEx(s, f);
     }
     if (f.WithID)
     {
         base.UID = PmxStreamHelper.ReadElement_UInt(s);
         base.CID = PmxStreamHelper.ReadElement_UInt(s);
     }
 }