Missing includes for windows
diff --git a/src/animation/state_machine_instance.cpp b/src/animation/state_machine_instance.cpp
index ccb5db0..a129bd4 100644
--- a/src/animation/state_machine_instance.cpp
+++ b/src/animation/state_machine_instance.cpp
@@ -13,6 +13,7 @@
#include "rive/animation/animation_state.hpp"
#include "rive/animation/state_instance.hpp"
#include "rive/animation/animation_state_instance.hpp"
+#include <algorithm>
using namespace rive;
namespace rive
diff --git a/src/constraints/ik_constraint.cpp b/src/constraints/ik_constraint.cpp
index fd64aad..6773f6b 100644
--- a/src/constraints/ik_constraint.cpp
+++ b/src/constraints/ik_constraint.cpp
@@ -1,7 +1,11 @@
+
+#define _USE_MATH_DEFINES
+#include <cmath>
+#include <algorithm>
+
#include "rive/constraints/ik_constraint.hpp"
#include "rive/bones/bone.hpp"
#include "rive/artboard.hpp"
-#include <algorithm>
using namespace rive;
diff --git a/src/constraints/rotation_constraint.cpp b/src/constraints/rotation_constraint.cpp
index b84c943..e6dc963 100644
--- a/src/constraints/rotation_constraint.cpp
+++ b/src/constraints/rotation_constraint.cpp
@@ -1,7 +1,10 @@
+#define _USE_MATH_DEFINES
+#include <cmath>
+#include <algorithm>
+
#include "rive/constraints/rotation_constraint.hpp"
#include "rive/transform_component.hpp"
#include "rive/math/mat2d.hpp"
-#include <cmath>
using namespace rive;
diff --git a/src/constraints/transform_constraint.cpp b/src/constraints/transform_constraint.cpp
index bdc43f7..13e34c6 100644
--- a/src/constraints/transform_constraint.cpp
+++ b/src/constraints/transform_constraint.cpp
@@ -1,7 +1,9 @@
+#define _USE_MATH_DEFINES
+#include <cmath>
+
#include "rive/constraints/transform_constraint.hpp"
#include "rive/transform_component.hpp"
#include "rive/math/mat2d.hpp"
-#include <cmath>
using namespace rive;
diff --git a/src/contour_stroke.cpp b/src/contour_stroke.cpp
index 161699c..09d88a4 100644
--- a/src/contour_stroke.cpp
+++ b/src/contour_stroke.cpp
@@ -1,7 +1,12 @@
+#define _USE_MATH_DEFINES
+#include <cmath>
+#include <algorithm>
+
#ifdef LOW_LEVEL_RENDERING
#include "rive/contour_stroke.hpp"
#include "rive/contour_render_path.hpp"
#include "rive/math/vec2d.hpp"
+#include <assert.h>
using namespace rive;
diff --git a/src/shapes/path.cpp b/src/shapes/path.cpp
index 5a805ce..da72c97 100644
--- a/src/shapes/path.cpp
+++ b/src/shapes/path.cpp
@@ -1,3 +1,7 @@
+#include <cassert>
+#define _USE_MATH_DEFINES
+#include <algorithm>
+
#include "rive/shapes/path.hpp"
#include "rive/math/circle_constant.hpp"
#include "rive/renderer.hpp"
@@ -6,7 +10,6 @@
#include "rive/shapes/path_vertex.hpp"
#include "rive/shapes/shape.hpp"
#include "rive/shapes/straight_vertex.hpp"
-#include <cassert>
using namespace rive;
diff --git a/src/shapes/polygon.cpp b/src/shapes/polygon.cpp
index 144cf2c..a01b215 100644
--- a/src/shapes/polygon.cpp
+++ b/src/shapes/polygon.cpp
@@ -1,7 +1,9 @@
+#define _USE_MATH_DEFINES
+#include <cmath>
+
#include "rive/shapes/polygon.hpp"
#include "rive/shapes/star.hpp"
#include "rive/shapes/straight_vertex.hpp"
-#include <cmath>
using namespace rive;
diff --git a/src/shapes/star.cpp b/src/shapes/star.cpp
index e1dd7e7..60b0243 100644
--- a/src/shapes/star.cpp
+++ b/src/shapes/star.cpp
@@ -1,7 +1,8 @@
+#define _USE_MATH_DEFINES
+#include <cmath>
+
#include "rive/shapes/star.hpp"
#include "rive/shapes/straight_vertex.hpp"
-#include <cmath>
-#include <cstdio>
using namespace rive;