aboutsummaryrefslogtreecommitdiff
path: root/src/physics/physics.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/physics/physics.h')
-rw-r--r--src/physics/physics.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/physics/physics.h b/src/physics/physics.h
new file mode 100644
index 0000000..6410d74
--- /dev/null
+++ b/src/physics/physics.h
@@ -0,0 +1,26 @@
+//
+// Created by Michael Foiani on 12/13/23.
+//
+
+#ifndef PROJECTS_RAY_PHYSICS_H
+#define PROJECTS_RAY_PHYSICS_H
+
+
+#include "utils/sceneparser.h"
+
+class Physics {
+public:
+ static bool checkForSphereCollision(RenderShapeData &currentShape, RenderShapeData &shape);
+
+ static bool checkForConeCollision(RenderShapeData &currentShape, RenderShapeData &shape);
+
+ static bool checkForCylinderCollision(RenderShapeData &currentShape, RenderShapeData &shape);
+
+ static bool checkForCubeCollision(RenderShapeData &currentShape, RenderShapeData &shape);
+
+ static void updateShapePositions(std::vector<RenderShapeData> &shapes);
+
+ static void handleCollisions(std::vector<RenderShapeData> &shapes);
+};
+
+#endif //PROJECTS_RAY_PHYSICS_H