Пример #1
0
        //public static Vector2 ReadVector2(this Message msg) => new Vector2(msg.ReadSingle(), msg.ReadSingle());
        //public static Vector3 ReadVector3(this Message msg) => new Vector3(msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle());
        //public static Vector4 ReadVector4(this Message msg) => new Vector4(msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle());
        //public static Vector2Int ReadVector2Int(this Message msg) => new Vector2Int(msg.ReadPackedInt32(), msg.ReadPackedInt32());
        //public static Vector3Int ReadVector3Int(this Message msg) => new Vector3Int(msg.ReadPackedInt32(), msg.ReadPackedInt32(), msg.ReadPackedInt32());
        //public static Color ReadColor(this Message msg) => new Color(msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle());
        //public static Color32 ReadColor32(this Message msg) => new Color32(msg.ReadByte(), msg.ReadByte(), msg.ReadByte(), msg.ReadByte());
        //public static Quaternion ReadQuaternion(this Message msg) => new Quaternion(msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle());
        //public static Rect ReadRect(this Message msg) => new Rect(msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle(), msg.ReadSingle());
        //public static Plane ReadPlane(this Message msg) => new Plane(msg.ReadVector3(), msg.ReadSingle());
        //public static Ray ReadRay(this Message msg) => new Ray(msg.ReadVector3(), msg.ReadVector3());

        //public static Matrix4x4 ReadMatrix4x4(this Message msg)
        //{
        //    return new Matrix4x4
        //    {
        //        m00 = msg.ReadSingle(),
        //        m01 = msg.ReadSingle(),
        //        m02 = msg.ReadSingle(),
        //        m03 = msg.ReadSingle(),
        //        m10 = msg.ReadSingle(),
        //        m11 = msg.ReadSingle(),
        //        m12 = msg.ReadSingle(),
        //        m13 = msg.ReadSingle(),
        //        m20 = msg.ReadSingle(),
        //        m21 = msg.ReadSingle(),
        //        m22 = msg.ReadSingle(),
        //        m23 = msg.ReadSingle(),
        //        m30 = msg.ReadSingle(),
        //        m31 = msg.ReadSingle(),
        //        m32 = msg.ReadSingle(),
        //        m33 = msg.ReadSingle()
        //    };
        //}

        public static Guid ReadGuid(this Message msg)
        {
            msg.CheckSize(16);
            UIntGuid converter = new UIntGuid();

            converter.A = msg.ReadUInt32();
            converter.B = msg.ReadUInt16();
            converter.C = msg.ReadUInt16();
            converter.D = msg.ReadByteNoCheck();
            converter.E = msg.ReadByteNoCheck();
            converter.F = msg.ReadByteNoCheck();
            converter.G = msg.ReadByteNoCheck();
            converter.H = msg.ReadByteNoCheck();
            converter.I = msg.ReadByteNoCheck();
            converter.J = msg.ReadByteNoCheck();
            converter.K = msg.ReadByteNoCheck();
            return(converter.guidValue);
        }
Пример #2
0
        //public static void WriteVector2(this Message msg, Vector2 value)
        //{
        //    msg.WriteSingle(value.x);
        //    msg.WriteSingle(value.y);
        //}

        //public static void WriteVector3(this Message msg, Vector3 value)
        //{
        //    msg.WriteSingle(value.x);
        //    msg.WriteSingle(value.y);
        //    msg.WriteSingle(value.z);
        //}

        //public static void WriteVector4(this Message msg, Vector4 value)
        //{
        //    msg.WriteSingle(value.x);
        //    msg.WriteSingle(value.y);
        //    msg.WriteSingle(value.z);
        //    msg.WriteSingle(value.w);
        //}

        //public static void WriteVector2Int(this Message msg, Vector2Int value)
        //{
        //    msg.WritePackedInt32(value.x);
        //    msg.WritePackedInt32(value.y);
        //}

        //public static void WriteVector3Int(this Message msg, Vector3Int value)
        //{
        //    msg.WritePackedInt32(value.x);
        //    msg.WritePackedInt32(value.y);
        //    msg.WritePackedInt32(value.z);
        //}

        //public static void WriteColor(this Message msg, Color value)
        //{
        //    msg.WriteSingle(value.r);
        //    msg.WriteSingle(value.g);
        //    msg.WriteSingle(value.b);
        //    msg.WriteSingle(value.a);
        //}

        //public static void WriteColor32(this Message msg, Color32 value)
        //{
        //    msg.EnsureSize(4);
        //    msg.WriteByteNoCheck(value.r);
        //    msg.WriteByteNoCheck(value.g);
        //    msg.WriteByteNoCheck(value.b);
        //    msg.WriteByteNoCheck(value.a);
        //}

        //public static void WriteQuaternion(this Message msg, Quaternion value)
        //{
        //    msg.WriteSingle(value.x);
        //    msg.WriteSingle(value.y);
        //    msg.WriteSingle(value.z);
        //    msg.WriteSingle(value.w);
        //}

        //public static void WriteRect(this Message msg, Rect value)
        //{
        //    msg.WriteSingle(value.xMin);
        //    msg.WriteSingle(value.yMin);
        //    msg.WriteSingle(value.width);
        //    msg.WriteSingle(value.height);
        //}

        //public static void WritePlane(this Message msg, Plane value)
        //{
        //    msg.WriteVector3(value.normal);
        //    msg.WriteSingle(value.distance);
        //}

        //public static void WriteRay(this Message msg, Ray value)
        //{
        //    msg.WriteVector3(value.origin);
        //    msg.WriteVector3(value.direction);
        //}

        //public static void WriteMatrix4x4(this Message msg, Matrix4x4 value)
        //{
        //    msg.WriteSingle(value.m00);
        //    msg.WriteSingle(value.m01);
        //    msg.WriteSingle(value.m02);
        //    msg.WriteSingle(value.m03);
        //    msg.WriteSingle(value.m10);
        //    msg.WriteSingle(value.m11);
        //    msg.WriteSingle(value.m12);
        //    msg.WriteSingle(value.m13);
        //    msg.WriteSingle(value.m20);
        //    msg.WriteSingle(value.m21);
        //    msg.WriteSingle(value.m22);
        //    msg.WriteSingle(value.m23);
        //    msg.WriteSingle(value.m30);
        //    msg.WriteSingle(value.m31);
        //    msg.WriteSingle(value.m32);
        //    msg.WriteSingle(value.m33);
        //}

        public static void WriteGuid(this Message msg, Guid value)
        {
            msg.EnsureSize(16);
            UIntGuid converter = new UIntGuid {
                guidValue = value
            };

            msg.WriteUInt32(converter.A);
            msg.WriteUInt16(converter.B);
            msg.WriteUInt16(converter.C);
            msg.WriteByteNoCheck(converter.D);
            msg.WriteByteNoCheck(converter.E);
            msg.WriteByteNoCheck(converter.F);
            msg.WriteByteNoCheck(converter.G);
            msg.WriteByteNoCheck(converter.H);
            msg.WriteByteNoCheck(converter.I);
            msg.WriteByteNoCheck(converter.J);
            msg.WriteByteNoCheck(converter.K);
        }