///<summary>
        /// Reads and returns a Vector3 from the specified stream.
        ///</summary>
        ///<param name="reader"> the input stream to read from</param>
        ///<returns> the decoded value</returns>
        ///<exception cref="IOException"> if an error occurs</exception>
        public static Vector3 Deserialize(HlaEncodingReader reader)
        {
            Vector3 decodedValue = new Vector3();

            decodedValue.x = reader.ReadHLAfloat32BE();
            decodedValue.y = reader.ReadHLAfloat32BE();
            decodedValue.z = reader.ReadHLAfloat32BE();
            return decodedValue;
        }
        ///<summary>
        /// Reads and returns a Vector3FloatStruct from the specified stream.
        ///</summary>
        ///<param name="reader"> the input stream to read from</param>
        ///<returns> the decoded value</returns>
        ///<exception cref="IOException"> if an error occurs</exception>
        public static Vector3FloatStruct Deserialize(HlaEncodingReader reader)
        {
            Vector3FloatStruct decodedValue = new Vector3FloatStruct();

            decodedValue.XComponent = reader.ReadHLAfloat32BE();
            decodedValue.YComponent = reader.ReadHLAfloat32BE();
            decodedValue.ZComponent = reader.ReadHLAfloat32BE();
            return decodedValue;
        }