Lidgren.Network.NetBuffer.ReadSignedSingle C# (CSharp) Method

ReadSignedSingle() public method

Reads a 32 bit floating point value written using WriteSignedSingle()
public ReadSignedSingle ( int numberOfBits ) : float
numberOfBits int The number of bits used when writing the value
return float
        public float ReadSignedSingle(int numberOfBits)
        {
            uint encodedVal = ReadUInt32(numberOfBits);
            int maxVal = (1 << numberOfBits) - 1;
            return ((float)(encodedVal + 1) / (float)(maxVal + 1) - 0.5f) * 2.0f;
        }

Usage Example

        /// <summary>
        /// Reads a unit quaternion written using WriteRotation(... ,bitsPerElement)
        /// </summary>
        public static Quaternion ReadRotation(this NetBuffer message, int bitsPerElement)
        {
            Quaternion retval;

            retval.x = message.ReadSignedSingle(bitsPerElement);
            retval.y = message.ReadSignedSingle(bitsPerElement);
            retval.z = message.ReadSignedSingle(bitsPerElement);
            retval.w = message.ReadSignedSingle(bitsPerElement);
            return(retval);
        }
All Usage Examples Of Lidgren.Network.NetBuffer::ReadSignedSingle