public static VuVector ReadS_8S(this BinaryReader br)
        {
            var s = new VuFloat {
                Packed = unchecked ((uint)br.ReadSByte())
            };

            return(new VuVector
            {
                X = s,
                Y = s,
                Z = s,
                W = s
            });
        }
        public static VuVector ReadS_16U(this BinaryReader br)
        {
            var s = new VuFloat {
                Packed = (uint)br.ReadUInt16()
            };

            return(new VuVector
            {
                X = s,
                Y = s,
                Z = s,
                W = s
            });
        }
        public static VuVector ReadS_32(this BinaryReader br)
        {
            var s = new VuFloat {
                Packed = br.ReadUInt32()
            };

            return(new VuVector
            {
                X = s,
                Y = s,
                Z = s,
                W = s
            });
        }
        public static VuVector ReadV2_8S(this BinaryReader br)
        {
            var x = new VuFloat {
                Packed = unchecked ((uint)br.ReadSByte())
            };
            var y = new VuFloat {
                Packed = unchecked ((uint)br.ReadSByte())
            };

            return(new VuVector
            {
                X = x,
                Y = y,
                Z = x,
                W = y
            });
        }
        public static VuVector ReadV2_16U(this BinaryReader br)
        {
            var x = new VuFloat {
                Packed = br.ReadUInt16()
            };
            var y = new VuFloat {
                Packed = br.ReadUInt16()
            };

            return(new VuVector
            {
                X = x,
                Y = y,
                Z = x,
                W = y
            });
        }