Vector3 Struct

Representation of 3D vectors and points.

This structure is used throughout Unity to pass 3D positions and directions around. It also contains functions for doing common vector operations.

Besides the functions listed below, other classes can be used to manipulate vectors and points as well. For example the Quaternion and the Matrix4x4 classes are useful for rotating or transforming vectors and points.

Variables
x

X component of the vector.

y

Y component of the vector.

z

Z component of the vector.

this [int index]

Access the x, y, z components using [0], [1], [2] respectively.

normalized

Returns this vector with a magnitude of 1 (Read Only).

magnitude

Returns the length of this vector (Read Only).

sqrMagnitude

Returns the squared length of this vector (Read Only).

Constructors
Vector3

Creates a new vector with given x, y, z components.

Functions
Set

Set x, y and z components of an existing Vector3.

Scale

Multiplies every component of this vector by the same component of scale.

Normalize

Makes this vector have a magnitude of 1.

ToString

Returns a nicely formatted string for this vector.

Class Variables
zero

Shorthand for writing Vector3(0, 0, 0)

one

Shorthand for writing Vector3(1, 1, 1)

forward

Shorthand for writing Vector3(0, 0, 1)

up

Shorthand for writing Vector3(0, 1, 0)

right

Shorthand for writing Vector3(1, 0, 0)

Class Functions
Lerp

Linearly interpolates between two vectors.

Slerp

Spherically interpolates between two vectors.

OrthoNormalize

Makes vectors normalized and orthogonal to each other.

MoveTowards

Moves a point current towards target.

RotateTowards

Rotates a vector current towards target.

SmoothDamp

Gradually changes a vector towards a desired goal over time.

Scale

Multiplies two vectors component-wise.

Cross

Cross Product of two vectors.

Reflect

Reflects the vector along the normal.

Dot

Dot Product of two vectors.

Project

Projects a vector onto another vector.

Angle

Returns the angle in degrees between from and to.

Distance

Returns the distance between a and b.

ClampMagnitude

Returns a copy of vector with its magnitude clamped to maxLength.

Min

Returns a vector that is made from the smallest components of two vectors.

Max

Returns a vector that is made from the largest components of two vectors.

operator +

Adds two vectors.

operator -

Subtracts one vector from another.

operator *

Multiplies a vector by a number.

operator /

Divides a vector by a number.

operator ==

Returns true if the vectors are equal.

operator !=

Returns true if vectors different.