This program was an attempt to make an object-oriented extendable system to generate Mandelbrot style fractals. It iterates over each pixel to see if it diverges and then assigns it a value based on that and then passes it to a different function to colour and then export to an image. My next goal is to allow it to use functions defined at runtime to save it having to keep being recompiled. Attempts at porting it to OpenGL and vulkan both failed (excessive artefacting and vulkan requiring a lot of setup that I found a bit difficult to understand)


[f(z_{n+1}) = z_n^2 + c] (Classic Mandelbrot)

[f(z_{n+1}) = z_n^3 + c]

[f(z_{n+1}) = z_n^4 + c]

[f(z_{n+1}) = e^{z_n} + c]

[f(z_{n+1}) = \sin(z_n) + \cos(z_n) + c]

Colouring methods

This Image contains the various colouring methods I made for it. From top left going clockwise: