From c62f122fb419b8a7219cf5693e16475fcc0cc6d4 Mon Sep 17 00:00:00 2001 From: "Dhivakar.S" Date: Fri, 13 Feb 2026 15:28:23 +0530 Subject: [PATCH 1/2] physicsEngine Header file --- include/physics_engine.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 include/physics_engine.h diff --git a/include/physics_engine.h b/include/physics_engine.h new file mode 100644 index 0000000..06683b7 --- /dev/null +++ b/include/physics_engine.h @@ -0,0 +1,17 @@ +#pragma once + +#include +#include +#include "physics_object.h" + +class PhysicsEngine { +private: + std::vector> objects; + +public: + void addObject(std::unique_ptr obj); + void update(float dt); + void draw(sf::RenderWindow& window); +}; + + From d3089f63869cfc565c804e6fa2bf933f07f017f5 Mon Sep 17 00:00:00 2001 From: "Dhivakar.S" Date: Mon, 23 Feb 2026 17:13:12 +0530 Subject: [PATCH 2/2] function definitions PhysicsEngine.cpp --- src/PhysicsEngine.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/PhysicsEngine.cpp diff --git a/src/PhysicsEngine.cpp b/src/PhysicsEngine.cpp new file mode 100644 index 0000000..087ccf3 --- /dev/null +++ b/src/PhysicsEngine.cpp @@ -0,0 +1,23 @@ +#include "physics_engine.h" + +void PhysicsEngine::addObject(std::unique_ptr obj) { + object.push_back(std::move(obj)); +} + +void PhysicsEngine::update(float dt) { + for (auto& obj : objects) + obj->update(dt); // update() func for objects to be declared + + for (int i = 0; i < objects.size(); i++) { + for (int j = i + 1; j < objects.size(); j++) { + // require a func to access x, y coordinates + } + } +} + +void PhysicsEngine::draw(sf::RenderWindow& window) { + for (auto& obj : objects) + obj->draw(window); // draw() func to open window and display collision +} + +