I see they haven't been implemented. Will they be added soon?

Some Vector functions you probably should do(and code for some of them) are:

**Vector2**

`#include <cmath>`

T Direction(){// May want to use double or float instead

return atan2(y, x);

}

T Dot(Vector2<T>& Other){//May want to use double or float instead

return x*Other.x + y*Other.y;

}

T Length(){

return sqrt(x*x + y*y);

}

void Normalize(){

T Length = Length();

x /= Length;

y /= Length;

}

**Vector3**

`#include <cmath>`

Vector3<T>& Cross(Vector3<T>& Other){

return Vector3<T>(y*Other.z - Other.y*z, z*Other.x - x*Other.z, x*Other.y - y*Other.x);

}

T Dot(Vector3<T>& Other){

return x*Other.x + y*Other.y + z*Other.z;

}

T Length(){

return sqrt(x*x + y*y + z*z);

}

void Normalize(){

T Length = Length();

x /= Length;

y /= Length;

z /= Length;

}

I'll add more functions and examples as I think of them.