Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Multi-Physics Simulation Engine (Open-Source CAE Framework)

Multi-Physics Engine Stage 1 Demo

A custom, open-source 3D Multi-Physics & Computer-Aided Engineering (CAE) Simulation Engine built in modern C++20.

The objective of this engine is to simulate inhomogeneous composite materials (with dynamic Center of Mass and Inertia Tensor calculation), GPU-accelerated particle aerodynamics (SPH), and thermodynamic chemical combustion kinetics.


Current Status: Stage 1 (Pre-Alpha MVP Complete)

  • Tech Stack: C++20, CMake, GLFW, GLM, OpenGL 4.5, Dear ImGui.
  • 3D Viewport: Spherical Orbit Camera with mouse controls (Orbit drag & Mouse Wheel zoom) and view-snapping compass buttons (+X, -X, +Y, -Y, +Z, -Z).
  • Physics Loop: Euler integration for gravity, ground collision detection, restitution ($e$) bouncing mechanics, and kinetic-to-thermal energy conversion tracking.
  • UI & Telemetry: Dear ImGui control panel displaying real-time FPS, position, bounciness sliders, and live temperature readouts.

Roadmap

  • Stage 1 (Pre-Alpha): 3D Viewport, Orbit Camera, OpenGL Renderer, ImGui Overlay, and Bouncing Physics.
  • Stage 2 (Alpha): .obj/.gltf Mesh Import, Volumetric Voxelization, and Inhomogeneous Center of Mass & Inertia Tensor ($\mathbf{I}$) Calculation.
  • Stage 3 (Beta): GPU Compute Shader SPH Particle Aerodynamics & Drag/Lift Coupling.
  • Stage 4 (Gamma): Ideal Gas Thermodynamics ($PV=nRT$) & Chemical Combustion Kinetics.
  • Stage 5 (Delta): Modular C++ Library Architecture, GoogleTest Suite, and Open-Source Documentation.

How to Build

Prerequisites

  • C++20 compatible compiler (MSVC, GCC, or Clang)
  • CMake 3.22+

Windows (Visual Studio / PowerShell)

mkdir build
cd build
cmake ..
cmake --build . --config Debug
.\Debug\MultiPhysicsEngine.exe

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages