Show / Hide Table of Contents

# Struct Vector3

##### Implements

IEquatable<Vector3>
IFormattable

##### Inherited Members

System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.ReferenceEquals(System.Object, System.Object)

###### Namespace: FFXIVClientStructs.FFXIV.Common.Math

###### Assembly: FFXIVClientStructs.dll

##### Syntax

    public struct Vector3

### Constructors

| Improve this Doc View Source

#### Vector3(Single)

##### Declaration

    public Vector3(float value)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Single | value |

| Improve this Doc View Source

#### Vector3(Single, Single, Single)

##### Declaration

    public Vector3(float x, float y, float z)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Single | x |
System.Single | y |
System.Single | z |

### Fields

| Improve this Doc View Source

#### Back

##### Declaration

    public static readonly Vector3 Back

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Down

##### Declaration

    public static readonly Vector3 Down

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Forward

##### Declaration

    public static readonly Vector3 Forward

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Left

##### Declaration

    public static readonly Vector3 Left

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### NegativeInfinity

##### Declaration

    public static readonly Vector3 NegativeInfinity

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### One

##### Declaration

    public static readonly Vector3 One

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### PositiveInfinity

##### Declaration

    public static readonly Vector3 PositiveInfinity

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Right

##### Declaration

    public static readonly Vector3 Right

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Up

##### Declaration

    public static readonly Vector3 Up

##### Field Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### X

##### Declaration

    public float X

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Y

##### Declaration

    public float Y

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Z

##### Declaration

    public float Z

##### Field Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Zero

##### Declaration

    public static readonly Vector3 Zero

##### Field Value

Type | Description
--- | ---
Vector3 |

### Properties

| Improve this Doc View Source

#### Magnitude

##### Declaration

    public readonly float Magnitude { get; }

##### Property Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Normalized

##### Declaration

    public readonly Vector3 Normalized { get; }

##### Property Value

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### SqrMagnitude

##### Declaration

    public readonly float SqrMagnitude { get; }

##### Property Value

Type | Description
--- | ---
System.Single |

### Methods

| Improve this Doc View Source

#### Angle(Vector3, Vector3)

##### Declaration

    public static float Angle(Vector3 from, Vector3 to)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | from |
Vector3 | to |

##### Returns

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Clamp(Vector3, Vector3, Vector3)

##### Declaration

    public static Vector3 Clamp(Vector3 value, Vector3 min, Vector3 max)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | value |
Vector3 | min |
Vector3 | max |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### ClampMagnitude(Vector3, Single)

##### Declaration

    public static Vector3 ClampMagnitude(Vector3 vector, float maxLength)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | vector |
System.Single | maxLength |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Cross(Vector3, Vector3)

##### Declaration

    public static Vector3 Cross(Vector3 left, Vector3 right)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | left |
Vector3 | right |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Distance(Vector3, Vector3)

##### Declaration

    public static float Distance(Vector3 a, Vector3 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
Vector3 | b |

##### Returns

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Dot(Vector3, Vector3)

##### Declaration

    public static float Dot(Vector3 left, Vector3 right)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | left |
Vector3 | right |

##### Returns

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Equals(Vector3)

##### Declaration

    public bool Equals(Vector3 other)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | other |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Equals(Object)

##### Declaration

    public override bool Equals(object obj)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Object | obj |

##### Returns

Type | Description
--- | ---
System.Boolean |

##### Overrides

System.ValueType.Equals(System.Object)
| Improve this Doc View Source

#### GetHashCode()

##### Declaration

    public override int GetHashCode()

##### Returns

Type | Description
--- | ---
System.Int32 |

##### Overrides

System.ValueType.GetHashCode()
| Improve this Doc View Source

#### Lerp(Vector3, Vector3, Single)

##### Declaration

    public static Vector3 Lerp(Vector3 start, Vector3 end, float amount)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | start |
Vector3 | end |
System.Single | amount |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### LerpUnclamped(Vector3, Vector3, Single)

##### Declaration

    public static Vector3 LerpUnclamped(Vector3 start, Vector3 end, float amount)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | start |
Vector3 | end |
System.Single | amount |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Max(Vector3, Vector3)

##### Declaration

    public static Vector3 Max(Vector3 lhs, Vector3 rhs)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | lhs |
Vector3 | rhs |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Min(Vector3, Vector3)

##### Declaration

    public static Vector3 Min(Vector3 lhs, Vector3 rhs)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | lhs |
Vector3 | rhs |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### MoveTowards(Vector3, Vector3, Single)

##### Declaration

    public static Vector3 MoveTowards(Vector3 current, Vector3 target, float maxDistanceDelta)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | current |
Vector3 | target |
System.Single | maxDistanceDelta |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Normalize(Vector3)

##### Declaration

    public static Vector3 Normalize(Vector3 value)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | value |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Project(Vector3, Single, Single, Single, Single, Single, Single, Matrix4x4)

##### Declaration

    public static Vector3 Project(Vector3 vector, float x, float y, float width, float height, float minZ, float maxZ, Matrix4x4 projectionMatrix)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | vector |
System.Single | x |
System.Single | y |
System.Single | width |
System.Single | height |
System.Single | minZ |
System.Single | maxZ |
Matrix4x4 | projectionMatrix |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### ProjectOnNormal(Vector3, Vector3)

##### Declaration

    public static Vector3 ProjectOnNormal(Vector3 vector, Vector3 normal)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | vector |
Vector3 | normal |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### ProjectOnPlane(Vector3, Vector3)

##### Declaration

    public static Vector3 ProjectOnPlane(Vector3 vector, Vector3 planeNormal)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | vector |
Vector3 | planeNormal |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Reflect(Vector3, Vector3)

##### Declaration

    public static Vector3 Reflect(Vector3 vector, Vector3 normal)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | vector |
Vector3 | normal |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### SignedAngle(Vector3, Vector3, Vector3)

##### Declaration

    public static float SignedAngle(Vector3 from, Vector3 to, Vector3 axis)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | from |
Vector3 | to |
Vector3 | axis |

##### Returns

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### SmoothStep(Vector3, Vector3, Single)

##### Declaration

    public static Vector3 SmoothStep(Vector3 start, Vector3 end, float amount)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | start |
Vector3 | end |
System.Single | amount |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### SqrDistance(Vector3, Vector3)

##### Declaration

    public static float SqrDistance(Vector3 a, Vector3 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
Vector3 | b |

##### Returns

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### ToString()

##### Declaration

    public override string ToString()

##### Returns

Type | Description
--- | ---
System.String |

##### Overrides

System.ValueType.ToString()
| Improve this Doc View Source

#### ToString(String, Nullable<IFormatProvider>)

##### Declaration

    public string ToString(string format, IFormatProvider? formatProvider)

##### Parameters

Type | Name | Description
--- | --- | ---
System.String | format |
System.Nullable<IFormatProvider> | formatProvider |

##### Returns

Type | Description
--- | ---
System.String |

| Improve this Doc View Source

#### Transform(Vector3, Matrix4x4)

##### Declaration

    public static Vector3 Transform(Vector3 position, Matrix4x4 matrix)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | position |
Matrix4x4 | matrix |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Transform(Vector3, Quaternion)

##### Declaration

    public static Vector3 Transform(Vector3 point, Quaternion rotation)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | point |
Quaternion | rotation |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### TransformCoordinate(Vector3, Matrix4x4)

##### Declaration

    public static Vector3 TransformCoordinate(Vector3 coordinate, Matrix4x4 matrix)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | coordinate |
Matrix4x4 | matrix |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### TransformNormal(Vector3, Matrix4x4)

##### Declaration

    public static Vector3 TransformNormal(Vector3 normal, Matrix4x4 matrix)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | normal |
Matrix4x4 | matrix |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Unproject(Vector3, Single, Single, Single, Single, Single, Single, Matrix4x4)

##### Declaration

    public static Vector3 Unproject(Vector3 vector, float x, float y, float width, float height, float minZ, float maxZ, Matrix4x4 projectionMatrix)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | vector |
System.Single | x |
System.Single | y |
System.Single | width |
System.Single | height |
System.Single | minZ |
System.Single | maxZ |
Matrix4x4 | projectionMatrix |

##### Returns

Type | Description
--- | ---
Vector3 |

### Operators

| Improve this Doc View Source

#### Addition(Vector3, Vector3)

##### Declaration

    public static Vector3 operator +(Vector3 a, Vector3 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
Vector3 | b |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Division(Vector3, Vector3)

##### Declaration

    public static Vector3 operator /(Vector3 a, Vector3 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
Vector3 | b |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Division(Vector3, Single)

##### Declaration

    public static Vector3 operator /(Vector3 a, float d)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
System.Single | d |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Equality(Vector3, Vector3)

##### Declaration

    public static bool operator ==(Vector3 left, Vector3 right)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | left |
Vector3 | right |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Implicit(Vector3 to Vector3)

##### Declaration

    public static implicit operator Vector3(Vector3 v)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | v |

##### Returns

Type | Description
--- | ---
System.Numerics.Vector3 |

| Improve this Doc View Source

#### Implicit(Vector3 to Vector3)

##### Declaration

    public static implicit operator Vector3(Vector3 v)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Numerics.Vector3 | v |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Inequality(Vector3, Vector3)

##### Declaration

    public static bool operator !=(Vector3 left, Vector3 right)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | left |
Vector3 | right |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Multiply(Vector3, Vector3)

##### Declaration

    public static Vector3 operator *(Vector3 a, Vector3 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
Vector3 | b |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Multiply(Vector3, Single)

##### Declaration

    public static Vector3 operator *(Vector3 a, float d)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
System.Single | d |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Multiply(Single, Vector3)

##### Declaration

    public static Vector3 operator *(float d, Vector3 a)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Single | d |
Vector3 | a |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### Subtraction(Vector3, Vector3)

##### Declaration

    public static Vector3 operator -(Vector3 a, Vector3 b)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |
Vector3 | b |

##### Returns

Type | Description
--- | ---
Vector3 |

| Improve this Doc View Source

#### UnaryNegation(Vector3)

##### Declaration

    public static Vector3 operator -(Vector3 a)

##### Parameters

Type | Name | Description
--- | --- | ---
Vector3 | a |

##### Returns

Type | Description
--- | ---
Vector3 |

### Implements

IEquatable<>
IFormattable