diff --git a/core/math/Point2D.cpp b/core/math/Point2D.cpp
index 868e6089..63070536 100644
--- a/core/math/Point2D.cpp
+++ b/core/math/Point2D.cpp
@@ -1,10 +1,11 @@
 #include "Point2D.h"
+#include <cstdint>
 
 const Point2D Point2D::UP = Point2D(0, -1);
 const Point2D Point2D::DOWN = Point2D(0, 1);
 const Point2D Point2D::LEFT = Point2D(-1, 0);
 const Point2D Point2D::RIGHT = Point2D(1, 0);
-const Point2D Point2D::INFINITE = Point2D(INT_MAX, INT_MAX);
+const Point2D Point2D::INFINITE = Point2D(INT32_MAX, INT32_MAX);
 
 bool Point2D::operator==(const Point2D& rhs) const { return y == rhs.y && x == rhs.x; }
 
diff --git a/core/math/Vector2.h b/core/math/Vector2.h
index 5cbbb29c..868e1703 100644
--- a/core/math/Vector2.h
+++ b/core/math/Vector2.h
@@ -138,5 +138,7 @@ template <FloatType T> struct Vector2 {
 };
 
 using Vector2f = Vector2<float>;
+using Vector2d = Vector2<double>;
+using Vector2lf = Vector2<long double>;
 
 #endif  // VECTOR2_H