This is a real-time, interactive simulation of a traversable wormhole connecting two distinct universes. The rendering is performed entirely on the GPU using a compute shader for high performance.
How it Works
The simulation visualizes what it might look like to approach a Morris-Thorne wormhole. The view from one universe into the other through the wormhole's throat is distorted by an approximated gravitational lensing effect, implemented as a refraction effect in the compute shader. While not a full general relativity calculation, this approach allows for an interactive, real-time experience.
The project also includes a second, non-interactive, CPU-based renderer that calculates the physically accurate path of light by numerically solving the geodesic equations of general relativity. This produces a more accurate image at the cost of being extremely slow.
Technologies Used
- C++ (C++17)
- OpenGL (4.3)
- GLSL (Compute Shaders)
- GLFW for windowing and input
- GLM for mathematics
- CMake for building