From dc13110c14bf49e495d4b4243fd4758232f8716f Mon Sep 17 00:00:00 2001 From: rtk0c Date: Sun, 16 May 2021 20:56:04 -0700 Subject: TableTemplate draft --- core/src/Utils/Vector.hpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'core/src/Utils/Vector.hpp') diff --git a/core/src/Utils/Vector.hpp b/core/src/Utils/Vector.hpp index bf75fd1..f49965e 100644 --- a/core/src/Utils/Vector.hpp +++ b/core/src/Utils/Vector.hpp @@ -6,6 +6,8 @@ struct Vec2 T x = 0; T y = 0; + friend constexpr bool operator==(const Vec2& a, const Vec2& b) = default; + friend constexpr Vec2 operator+(const Vec2& a, const Vec2& b) { return { a.x + b.x, a.y + b.y }; } friend constexpr Vec2 operator-(const Vec2& a, const Vec2& b) { return { a.x - b.x, a.y - b.y }; } friend constexpr Vec2 operator*(const Vec2& a, const Vec2& b) { return { a.x * b.x, a.y * b.y }; } @@ -27,6 +29,8 @@ struct Vec3 T y = 0; T z = 0; + friend constexpr bool operator==(const Vec3& a, const Vec3& b) = default; + friend constexpr Vec3 operator+(const Vec3& a, const Vec3& b) { return { a.x + b.x, a.y + b.y, a.z + b.z }; } friend constexpr Vec3 operator-(const Vec3& a, const Vec3& b) { return { a.x - b.x, a.y - b.y, a.z - b.z }; } friend constexpr Vec3 operator*(const Vec3& a, const Vec3& b) { return { a.x * b.x, a.y * b.y, a.z * b.z }; } @@ -49,6 +53,8 @@ struct Vec4 T z = 0; T w = 0; + friend constexpr bool operator==(const Vec4& a, const Vec4& b) = default; + friend constexpr Vec4 operator+(const Vec4& a, const Vec4& b) { return { a.x + b.x, a.y + b.y, a.z + b.z, a.w + b.w }; } friend constexpr Vec4 operator-(const Vec4& a, const Vec4& b) { return { a.x - b.x, a.y - b.y, a.z - b.z, a.w - b.w }; } friend constexpr Vec4 operator*(const Vec4& a, const Vec4& b) { return { a.x * b.x, a.y * b.y, a.z * b.z, a.w * b.w }; } -- cgit v1.2.3-70-g09d2