Skip to content

Mulekotd/physics-simulation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Physics Simulation

📌 Overview

A C++ physics simulation project using modern OpenGL (GLFW) for real-time visualization of particles and fields. The system is modular, supporting extensible simulation laws (Newton's Laws), and is designed for future integration with ImGui for interactive UI controls.

🛠️ Selected Technologies

1. C++ 17

The main programming language, chosen for its performance and modern features, enabling efficient simulation and extensible architecture.

C++


2. OpenGL (GLFW)

Used for rendering the simulation in real time, handling window/context creation, and drawing particles and fields.

OpenGL

GLFW


3. CMake

Build system generator for cross-platform compilation and easy dependency management.

CMake


4. ImGui

Immediate Mode GUI library for C++ to provide interactive controls and visualization.

ImGui


⚙️ Installation and Setup

1. Clone the Repository

Clone this repository to your local environment:

git clone https://github.com/Mulekotd/physics-simulation.git
cd physics-simulation

2. Install Dependencies

Make sure you have the following installed on your system:

  • C++17 compatible compiler (e.g., g++ 9+)
  • CMake 3.10+
  • OpenGL development libraries
  • GLFW 3.x

On Ubuntu/Debian:

sudo apt update
sudo apt install build-essential cmake libglfw3-dev libgl1-mesa-dev

3. Build the Project

mkdir build
cd build
cmake ..
make

4. Run the Simulation

./physics-simulation

🤝 Feedback and Contributions

Feedback, suggestions, and contributions are welcome!
If you have ideas for improvements or encounter any issues, please open an issue on GitHub.

About

Physics‑Simulation is a lightweight C++17 playground for high‑performance 2D physics experiments.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published