Creates a new Vector3 object from the given x, y, z (floats) coordinates.
defines the first coordinates (on X axis)
defines the second coordinates (on Y axis)
defines the third coordinates (on Z axis)
Defines the first coordinates (on X axis)
Defines the second coordinates (on Y axis)
Defines the third coordinates (on Z axis)
Gets a boolean indicating that the vector is non uniform meaning x, y or z are not all the same
Adds the given coordinates to the current Vector3
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
the current updated Vector3
Creates an array containing three elements : the coordinates of the Vector3
a new array of numbers
Creates a new Vector3 copied from the current Vector3
the new Vector3
Updates the Vector3 from the sparsely populated value.
The sparsely populated value to read from.
Copies the given floats to the current Vector3 coordinates
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
the current updated Vector3
Returns true if the current Vector3 and the given vector coordinates are strictly equal
defines the second operand
true if both vectors are equals
Returns true if the current Vector3 coordinates equals the given floats
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
true if both vectors are equals
Returns true if the current Vector3 and the given vector coordinates are distant less than epsilon
defines the second operand
defines the minimal distance to define values as equals
true if both vectors are distant less than epsilon
Gets a new Vector3 from current Vector3 floored values
a new Vector3
Gets a new Vector3 from current Vector3 floored values
a new Vector3
Gets the class name
the string "Vector3"
Creates the Vector3 hash code
a number which tends to be unique between Vector3 instances
Gets the length of the Vector3
the length of the Vecto3
Gets the squared length of the Vector3
squared length of the Vector3
Updates the current Vector3 with the maximal coordinate values between its and the given coordinates.
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
the current updated Vector3
Updates the current Vector3 with the minimal coordinate values between its and the given coordinates
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
the current updated Vector3
Returns a new Vector3 set with the result of the mulliplication of the current Vector3 coordinates by the given floats
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
the new Vector3
Gets a new Vector3 set with the current Vector3 negated coordinates
a new Vector3
Normalize the current Vector3. Please note that this is an in place operation.
the current updated Vector3
Normalize the current Vector3 with the given input length. Please note that this is an in place operation.
the length of the vector
the current updated Vector3
Normalize the current Vector3 to a new vector
the new Vector3
Reorders the x y z properties of the vector in place
new ordering of the properties (eg. for vector 1,2,3 with "ZYX" will produce 3,2,1)
the current updated vector
Rotates a vector around a given point
the rotation quaternion
the point to rotate around
vector to store the result
the resulting vector
Rotates the vector around 0,0,0 by a quaternion
the rotation quaternion
vector to store the result
the resulting vector
Returns a new Vector3 set with the current Vector3 coordinates multiplied by the float "scale"
defines the multiplier factor
a new Vector3
Multiplies the Vector3 coordinates by the float "scale"
defines the multiplier factor
the current updated Vector3
Copies the given floats to the current Vector3 coordinates
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
the current updated Vector3
Copies the given float to the current Vector3 coordinates
defines the x, y and z coordinates of the operand
the current updated Vector3
Returns a new Vector3 set with the subtraction of the given floats from the current Vector3 coordinates
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
the resulting Vector3
Subtracts the given floats from the current Vector3 coordinates and set the given vector "result" with this result
defines the x coordinate of the operand
defines the y coordinate of the operand
defines the z coordinate of the operand
defines the Vector3 object where to store the result
the current Vector3
Populates the given array or Float32Array from the given index with the successive coordinates of the Vector3
defines the destination array
defines the offset in the destination array
the current Vector3
Returns a JSON representation of this vector. This is necessary due to the way Actors detect changes on components like the actor's transform. They do this by adding properties for observation, and we don't want these properties serialized.
Converts the current Vector3 into a quaternion (considering that the Vector3 contains Euler angles representation of a rotation)
a new Quaternion object, computed from the Vector3 coordinates
Creates a string representation of the Vector3
a string with the Vector3 coordinates.
Returns a new Vector3 set to (0.0, 0.0, -1.0)
a new forward Vector3
Returns a new Vector3 located for "amount" on the CatmullRom interpolation spline defined by the vectors "value1", "value2", "value3", "value4"
defines the first control point
defines the second control point
defines the third control point
defines the fourth control point
defines the amount on the spline to use
the new Vector3
Returns a new Vector3 set with the coordinates of "value", if the vector "value" is in the cube defined by the vectors "min" and "max" If a coordinate value of "value" is lower than one of the "min" coordinate, then this "value" coordinate is set with the "min" one If a coordinate value of "value" is greater than one of the "max" coordinate, then this "value" coordinate is set with the "max" one
defines the current value
defines the lower range value
defines the upper range value
the new Vector3
Sets the given vector "result" with the coordinates of "value", if the vector "value" is in the cube defined by the vectors "min" and "max" If a coordinate value of "value" is lower than one of the "min" coordinate, then this "value" coordinate is set with the "min" one If a coordinate value of "value" is greater than one of the "max" coordinate, then this "value" coordinate is set with the "max" one
defines the current value
defines the lower range value
defines the upper range value
defines the Vector3 where to store the result
Sets the given vector "result" with the cross product of "left" and "right" The cross product is then orthogonal to both "left" and "right"
defines the left operand
defines the right operand
defines the Vector3 where to store the result
Returns a new Vector3 set to (0.0, -1.0, 0.0)
a new down Vector3
Returns a new Vector3 set to (0.0, 0.0, 1.0)
a new forward Vector3
Returns a new Vector3 set from the index "offset" of the given array
defines the source array
defines the offset in the source array
the new Vector3
Sets the given vector "result" with the element values from the index "offset" of the given array
defines the source array
defines the offset in the source array
defines the Vector3 where to store the result
Returns a new Vector3 set from the index "offset" of the given Float32Array This function is deprecated. Use FromArray instead
defines the source array
defines the offset in the source array
the new Vector3
Sets the given vector "result" with the element values from the index "offset" of the given Float32Array This function is deprecated. Use FromArrayToRef instead.
defines the source array
defines the offset in the source array
defines the Vector3 where to store the result
Sets the given vector "result" with the given floats.
defines the x coordinate of the source
defines the y coordinate of the source
defines the z coordinate of the source
defines the Vector3 where to store the result
Returns a new Vector3 located for "amount" (float) on the Hermite interpolation spline defined by the vectors "value1", "tangent1", "value2", "tangent2"
defines the first control point
defines the first tangent vector
defines the second control point
defines the second tangent vector
defines the amount on the interpolation spline (between 0 and 1)
the new Vector3
Returns a new Vector3 set to (-1.0, 0.0, 0.0)
a new left Vector3
Sets the given vector "result" with the result of the linear interpolation from the vector "start" for "amount" to the vector "end"
defines the start value
defines the end value
max defines amount between both (between 0 and 1)
defines the Vector3 where to store the result
Returns a new Vector3 set to (1.0, 1.0, 1.0)
a new unit Vector3
Returns a new Vector3 set to (1.0, 0.0, 0.0)
a new right Vector3
Given three orthogonal normalized left-handed oriented Vector3 axis in space (target system), RotationFromAxis() returns the rotation Euler angles (ex : rotation.x, rotation.y, rotation.z) to apply to something in order to rotate it from its local system to the given target system Note: axis1, axis2 and axis3 are normalized during this operation
defines the first axis
defines the second axis
defines the third axis
a new Vector3
The same than RotationFromAxis but updates the given ref Vector3 parameter instead of returning a new Vector3
defines the first axis
defines the second axis
defines the third axis
defines the Vector3 where to store the result
Returns a new Vector3 set with the result of the transformation by the given matrix of the given vector. This method computes tranformed coordinates only, not transformed direction vectors (ie. it takes translation in account)
defines the Vector3 to transform
defines the transformation matrix
the transformed Vector3
Sets the given vector "result" coordinates with the result of the transformation by the given matrix of the given floats (x, y, z) This method computes tranformed coordinates only, not transformed direction vectors
define the x coordinate of the source vector
define the y coordinate of the source vector
define the z coordinate of the source vector
defines the transformation matrix
defines the Vector3 where to store the result
Sets the given vector "result" coordinates with the result of the transformation by the given matrix of the given vector This method computes tranformed coordinates only, not transformed direction vectors (ie. it takes translation in account)
defines the Vector3 to transform
defines the transformation matrix
defines the Vector3 where to store the result
Returns a new Vector3 set with the result of the normal transformation by the given matrix of the given vector This methods computes transformed normalized direction vectors only (ie. it does not apply translation)
defines the Vector3 to transform
defines the transformation matrix
the new Vector3
Sets the given vector "result" with the result of the normal transformation by the given matrix of the given floats (x, y, z) This methods computes transformed normalized direction vectors only (ie. it does not apply translation)
define the x coordinate of the source vector
define the y coordinate of the source vector
define the z coordinate of the source vector
defines the transformation matrix
defines the Vector3 where to store the result
Sets the given vector "result" with the result of the normal transformation by the given matrix of the given vector This methods computes transformed normalized direction vectors only (ie. it does not apply translation)
defines the Vector3 to transform
defines the transformation matrix
defines the Vector3 where to store the result
Unproject from screen space to object space
defines the screen space Vector3 to use
defines the current width of the viewport
defines the current height of the viewport
defines the world matrix to use (can be set to Identity to go to world space)
defines the view matrix to use
defines the projection matrix to use
the new Vector3
Unproject from screen space to object space
defines the screen space x coordinate to use
defines the screen space y coordinate to use
defines the screen space z coordinate to use
defines the current width of the viewport
defines the current height of the viewport
defines the world matrix to use (can be set to Identity to go to world space)
defines the view matrix to use
defines the projection matrix to use
defines the Vector3 where to store the result
Unproject from screen space to object space
defines the screen space Vector3 to use
defines the current width of the viewport
defines the current height of the viewport
defines the world matrix to use (can be set to Identity to go to world space)
defines the transform (view x projection) matrix to use
the new Vector3
Unproject from screen space to object space
defines the screen space Vector3 to use
defines the current width of the viewport
defines the current height of the viewport
defines the world matrix to use (can be set to Identity to go to world space)
defines the view matrix to use
defines the projection matrix to use
defines the Vector3 where to store the result
Returns a new Vector3 set to (0.0, 1.0, 0.0)
a new up Vector3
Returns a new Vector3 set to (0.0, 0.0, 0.0)
a new empty Vector3
Classed used to store (x,y,z) vector representation A Vector3 is the main object used in 3D geometry It can represent etiher the coordinates of a point the space, either a direction Reminder: Babylon.js uses a left handed forward facing system