Skip to content

Quick and dirty Mandelbrot set Visualizer in modernish C++

License

Notifications You must be signed in to change notification settings

antonkesy/mandelbrot-visualizer

Repository files navigation

Mandelbrot Visualizer

Quick and dirty Mandelbrot set Visualizer in modernish C++ built to pass time and apply knowledge.

Used Technologies

Build and Execution

Docker

Run GUI with xorg:

xhost +local:docker || true
docker compose run --rm mandelbrot_visualizer
<OR>
docker compose run --rm nvidia_mandelbrot_visualizer

Natively

Dependencies

  • OpenGL
  • CMake 3.11+
  • C++20+
  • OpenMP

All other dependencies are built from source through external submodules.

See docker container for example Ubuntu/Debian install steps

Build

mkdir build -p
cd build
cmake ..
cmake --build .

Execution

export OMP_CANCELLATION=true # enable OpenMP cancellation for redrawing -> program tries to bootstrap it anyway
./mandelbrot_visualizer

Development

pre-commit install

GitHub Action enabled which runs pre-commit on main merge request.

About

Quick and dirty Mandelbrot set Visualizer in modernish C++

Topics

Resources

License

Stars

Watchers

Forks