diff options
Diffstat (limited to 'doc/classes/Vector3.xml')
-rw-r--r-- | doc/classes/Vector3.xml | 38 |
1 files changed, 35 insertions, 3 deletions
diff --git a/doc/classes/Vector3.xml b/doc/classes/Vector3.xml index 208e9935e3..9005dd3f0c 100644 --- a/doc/classes/Vector3.xml +++ b/doc/classes/Vector3.xml @@ -5,7 +5,8 @@ </brief_description> <description> 3-element structure that can be used to represent positions in 3D space or any other triplet of numeric values. - It uses floating-point coordinates. See [Vector3i] for its integer counterpart. + It uses floating-point coordinates. By default, these floating-point values use 32-bit precision, unlike [float] which is always 64-bit. If double precision is needed, compile the engine with the option [code]float=64[/code]. + See [Vector3i] for its integer counterpart. [b]Note:[/b] In a boolean context, a Vector3 will evaluate to [code]false[/code] if it's equal to [code]Vector3(0, 0, 0)[/code]. Otherwise, a Vector3 will always evaluate to [code]true[/code]. </description> <tutorials> @@ -109,6 +110,20 @@ Performs a cubic interpolation between this vector and [param b] using [param pre_a] and [param post_b] as handles, and returns the result at position [param weight]. [param weight] is on the range of 0.0 to 1.0, representing the amount of interpolation. </description> </method> + <method name="cubic_interpolate_in_time" qualifiers="const"> + <return type="Vector3" /> + <param index="0" name="b" type="Vector3" /> + <param index="1" name="pre_a" type="Vector3" /> + <param index="2" name="post_b" type="Vector3" /> + <param index="3" name="weight" type="float" /> + <param index="4" name="b_t" type="float" /> + <param index="5" name="pre_a_t" type="float" /> + <param index="6" name="post_b_t" type="float" /> + <description> + Performs a cubic interpolation between this vector and [param b] using [param pre_a] and [param post_b] as handles, and returns the result at position [param weight]. [param weight] is on the range of 0.0 to 1.0, representing the amount of interpolation. + It can perform smoother interpolation than [code]cubic_interpolate()[/code] by the time values. + </description> + </method> <method name="direction_to" qualifiers="const"> <return type="Vector3" /> <param index="0" name="to" type="Vector3" /> @@ -160,10 +175,23 @@ Returns [code]true[/code] if this vector and [param to] are approximately equal, by running [method @GlobalScope.is_equal_approx] on each component. </description> </method> + <method name="is_finite" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this vector is finite, by calling [method @GlobalScope.is_finite] on each component. + </description> + </method> <method name="is_normalized" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the vector is normalized, [code]false[/code] otherwise. + Returns [code]true[/code] if the vector is [method normalized], [code]false[/code] otherwise. + </description> + </method> + <method name="is_zero_approx" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this vector's values are approximately zero, by running [method @GlobalScope.is_zero_approx] on each component. + This method is faster than using [method is_equal_approx] with one value as a zero vector. </description> </method> <method name="length" qualifiers="const"> @@ -217,18 +245,22 @@ <method name="normalized" qualifiers="const"> <return type="Vector3" /> <description> - Returns the vector scaled to unit length. Equivalent to [code]v / v.length()[/code]. + Returns the vector scaled to unit length. Equivalent to [code]v / v.length()[/code]. See also [method is_normalized]. </description> </method> <method name="octahedron_decode" qualifiers="static"> <return type="Vector3" /> <param index="0" name="uv" type="Vector2" /> <description> + Returns the [Vector3] from an octahedral-compressed form created using [method octahedron_encode] (stored as a [Vector2]). </description> </method> <method name="octahedron_encode" qualifiers="const"> <return type="Vector2" /> <description> + Returns the octahedral-encoded (oct32) form of this [Vector3] as a [Vector2]. Since a [Vector2] occupies 1/3 less memory compared to [Vector3], this form of compression can be used to pass greater amounts of [method normalized] [Vector3]s without increasing storage or memory requirements. See also [method octahedron_decode]. + [b]Note:[/b] [method octahedron_encode] can only be used for [method normalized] vectors. [method octahedron_encode] does [i]not[/i] check whether this [Vector3] is normalized, and will return a value that does not decompress to the original value if the [Vector3] is not normalized. + [b]Note:[/b] Octahedral compression is [i]lossy[/i], although visual differences are rarely perceptible in real world scenarios. </description> </method> <method name="outer" qualifiers="const"> |