コード例 #1
0
            public override void FromBytes(byte[] bytes, ref int i)
            {
                try {
                    Vector4 r1 = new Vector4(), r2 = new Vector4(), r3 = new Vector4(), r4 = new Vector4();
                    r1.FromBytes(bytes, i); i += sizeof(float) * 4;
                    r2.FromBytes(bytes, i); i += sizeof(float) * 4;
                    r3.FromBytes(bytes, i); i += sizeof(float) * 4;
                    r4.FromBytes(bytes, i); i += sizeof(float) * 4;

                    ProjectionMatrix.M11 = r1.X;
                    ProjectionMatrix.M12 = r1.Y;
                    ProjectionMatrix.M13 = r1.Z;
                    ProjectionMatrix.M14 = r1.W;

                    ProjectionMatrix.M21 = r2.X;
                    ProjectionMatrix.M22 = r2.Y;
                    ProjectionMatrix.M23 = r2.Z;
                    ProjectionMatrix.M24 = r2.W;

                    ProjectionMatrix.M31 = r3.X;
                    ProjectionMatrix.M32 = r3.Y;
                    ProjectionMatrix.M33 = r3.Z;
                    ProjectionMatrix.M34 = r3.W;

                    ProjectionMatrix.M41 = r4.X;
                    ProjectionMatrix.M42 = r4.Y;
                    ProjectionMatrix.M43 = r4.Z;
                    ProjectionMatrix.M44 = r4.W;
                } catch (Exception) {
                    throw new MalformedDataException();
                }
            }