static const Vector3D zero
static const Vector3D unitX
static const Vector3D unitY
static const Vector3D unitZ
static const Vector3D negUnitX
static const Vector3D negUnitY
static const Vector3D negUnitZ
static const Vector3D infinity
static const Vector3D negInfinity
void Set(float xP, float yP, float zP);
Sets a new value to the vector.
float LengthSq() const;
Returns the length squared of the vector.
float Length() const;
Returns the length of the vector.
void Normalize();
Normalize the vector.
static float Dot(const Vector3D& a, const Vector3D& b)
Dot product between two vectors (a dot b)
static Vector3D Min(const Vector3D& a, const Vector3D& b)
Returns the smallest vector between 2.
static Vector3D Max(const Vector3D& a, const Vector3D& b)
Returns the biggest vector between 2.
static Vector3D Cross(const Vector3D& a, const Vector3D& b)
Cross product between two vectors (a cross b)
inline void Clamp(Vector3D& min, Vector3D& max)
Clamp the vector between a min and a max.
friend Vector3D Clamp(Vector3D temp, Vector3D& min, Vector3D& max)
Clamp the vector between a min and a max.
inline float Distance(Vector3D& vec) const
Returns the distance between the current vector and another one.
static float Distance(const Vector3D& a, const Vector3D& b)
Returns the distance between 2 vectors.
inline bool Equals(Vector3D& right, float acceptance)
Returns if the current vector is nearly equal to another one.
inline std::string ToString()
Returns a string of the vector
Format : (x, y, z)
static Vector3D Lerp(const Vector3D& a, const Vector3D& b, float f)
Lerp from A to B by f
static Vector3D Reflect(const Vector3D& v, const Vector3D& n)
Reflect V about (normalized) N.
static Vector3D TransformWithPerspDiv(Vector3D& vec, class Matrix4D& mat, float w = 1.0f);
This will transform the vector and renormalize the w component.
static Vector3D Transform(const Vector3D& v, const class Quaternion& q);
Transforms a Vector3 by a quaternion.