Class reference
float
A built-in type for floating-point numbers.
Description
The float built-in type is a 64-bit double-precision floating-point number, equivalent to double in C++. This type has 14 reliable decimal digits of precision. The maximum value of float is approximately 1.79769e308, and the minimum is approximately -1.79769e308. Many methods and properties in the engine use 32-bit single-precision floating-point numbers instead, equivalent to [code skip-lint]float[/code] in C++, which have 6 reliable decimal digits of precision. For data structures such as Vector2 and Vector3, Redot uses 32-bit floating-point numbers by default, but it can be changed to use 64-bit doubles if Redot is compiled with the precision=double option. Math done using the float type is not guaranteed to be exact and will often result in small errors. You should usually use the @GlobalScope.is_equal_approx() and @GlobalScope.is_zero_approx() methods instead of == to compare float values for equality.
Constructors
float float()
float float()Constructs a default-initialized float set to 0.0.
float float(float from)
float float(float from)float float(String from)
float float(String from)Converts a String to a float, following the same rules as String.to_float().
float float(bool from)
float float(bool from)Cast a bool value to a floating-point value, float(true) will be equal to 1.0 and float(false) will be equal to 0.0.
float float(int from)
float float(int from)Cast an int value to a floating-point value, float(1) will be equal to 1.0.
Operators
bool operator !=(float right)
bool operator !=(float right)Returns true if two floats are different from each other. Note: @GDScript.NAN doesn't behave the same as other numbers. Therefore, the results from this operator may not be accurate if NaNs are included.
bool operator !=(int right)
bool operator !=(int right)Returns true if the integer has different value than the float.
Color operator *(Color right)
Color operator *(Color right)Multiplies each component of the Color, including the alpha, by the given float.
print(1.5 * Color(0.5, 0.5, 0.5)) # Prints (0.75, 0.75, 0.75, 1.5)
Quaternion operator *(Quaternion right)
Quaternion operator *(Quaternion right)Multiplies each component of the Quaternion by the given float. This operation is not meaningful on its own, but it can be used as a part of a larger expression.
Vector2 operator *(Vector2 right)
Vector2 operator *(Vector2 right)Multiplies each component of the Vector2 by the given float.
print(2.5 * Vector2(1, 3)) # Prints (2.5, 7.5)
Vector2 operator *(Vector2i right)
Vector2 operator *(Vector2i right)Multiplies each component of the Vector2i by the given float. Returns a Vector2.
print(0.9 * Vector2i(10, 15)) # Prints (9.0, 13.5)
Vector3 operator *(Vector3 right)
Vector3 operator *(Vector3 right)Multiplies each component of the Vector3 by the given float.
Vector3 operator *(Vector3i right)
Vector3 operator *(Vector3i right)Multiplies each component of the Vector3i by the given float. Returns a Vector3.
print(0.9 * Vector3i(10, 15, 20)) # Prints (9.0, 13.5, 18.0)
Vector4 operator *(Vector4 right)
Vector4 operator *(Vector4 right)Multiplies each component of the Vector4 by the given float.
Vector4 operator *(Vector4i right)
Vector4 operator *(Vector4i right)Multiplies each component of the Vector4i by the given float. Returns a Vector4.
print(0.9 * Vector4i(10, 15, 20, -10)) # Prints (9.0, 13.5, 18.0, -9.0)
float operator *(float right)
float operator *(float right)Multiplies two floats.
float operator *(int right)
float operator *(int right)float operator **(float right)
float operator **(float right)Raises a float to a power of a float.
print(39.0625**0.25) # 2.5
float operator **(int right)
float operator **(int right)Raises a float to a power of an int. The result is a float.
print(0.9**3) # 0.729
float operator +(float right)
float operator +(float right)Adds two floats.
float operator +(int right)
float operator +(int right)float operator -(float right)
float operator -(float right)Subtracts a float from a float.
float operator -(int right)
float operator -(int right)float operator /(float right)
float operator /(float right)Divides two floats.
float operator /(int right)
float operator /(int right)bool operator <(float right)
bool operator <(float right)Returns true if the left float is less than the right one. Note: @GDScript.NAN doesn't behave the same as other numbers. Therefore, the results from this operator may not be accurate if NaNs are included.
bool operator <(int right)
bool operator <(int right)bool operator <=(float right)
bool operator <=(float right)Returns true if the left float is less than or equal to the right one. Note: @GDScript.NAN doesn't behave the same as other numbers. Therefore, the results from this operator may not be accurate if NaNs are included.
bool operator <=(int right)
bool operator <=(int right)Returns true if this float is less than or equal to the given int.
bool operator ==(float right)
bool operator ==(float right)Returns true if both floats are exactly equal. Note: Due to floating-point precision errors, consider using @GlobalScope.is_equal_approx() or @GlobalScope.is_zero_approx() instead, which are more reliable. Note: @GDScript.NAN doesn't behave the same as other numbers. Therefore, the results from this operator may not be accurate if NaNs are included.
bool operator ==(int right)
bool operator ==(int right)bool operator >(float right)
bool operator >(float right)Returns true if the left float is greater than the right one. Note: @GDScript.NAN doesn't behave the same as other numbers. Therefore, the results from this operator may not be accurate if NaNs are included.
bool operator >(int right)
bool operator >(int right)bool operator >=(float right)
bool operator >=(float right)Returns true if the left float is greater than or equal to the right one. Note: @GDScript.NAN doesn't behave the same as other numbers. Therefore, the results from this operator may not be accurate if NaNs are included.
bool operator >=(int right)
bool operator >=(int right)Returns true if this float is greater than or equal to the given int.
float operator unary+()
float operator unary+()Returns the same value as if the + was not there. Unary + does nothing, but sometimes it can make your code more readable.
float operator unary-()
float operator unary-()Returns the negative value of the float. If positive, turns the number negative. If negative, turns the number positive. With floats, the number zero can be either positive or negative.