This application is designed for desktop or tablet screens.
Please use a larger screen for the best experience.
Resolution & sampling
Formula & parameters
Line color & adjustments
Enhancement & effects
Test & inspect functions
What you're actually making
A fractal is a pattern that repeats at every scale. Zoom into a coastline on a map — it looks the same at any level. Fractals work the same way: simple math rules, infinite complexity.
The Mandelbrot set takes a point
(x, y), plugs it into z = z² + c, and
repeats. If the numbers stay small, the point is "inside." If they
blow up, it's "outside" — and the path it takes before blowing up
is what we trace.
Instead of coloring each point, we trace the escape paths of thousands of random points and plot where they go. Points that visit the same spot more often get brighter. This is why we need samples — more samples = more paths traced = smoother image.
Every point in the Mandelbrot set has a matching Julia set. The Mandelbrot set is basically a map of all possible Julia sets. Turn on Julia mode, pick a point, and you'll see the fractal that point "belongs to."
Points inside the Mandelbrot set make connected Julia sets. Points outside make dust.
z² + c
zⁿ + c. Higher power = more arms, more symmetry
sin(z) instead of z². Organic,
biological patterns
Filter decides if a point is interesting — should we trace it? Returns true/false.
Tracer runs the actual
iteration and emits (x, y) positions along the path.
These are the dots you see in the final image.
You can write your own — try changing the escape radius, adding sine waves, or flipping signs halfway through.
How to get good results
Iterations = detail depth. How many steps each point is allowed to take before giving up. More iterations = more detail in complex areas. Going from 8k to 20k reveals tiny spirals and filaments. Past 50k usually gives diminishing returns unless you're zoomed way in.
Samples = image quality. How many random starting points we trace. More samples = smoother, less noisy image. Think of it like exposure time on a camera. Low = grainy. High = clean.
Rule of thumb: crank samples, adjust iterations based on how complex your fractal is.
Instead of tracing every area equally, adaptive mode does a quick low-res pass first. Areas with lots of activity get more detail. Empty areas get skipped. Saves a ton of time.
The stats panel (top right, toggle with the Stats button) shows what's going on:
Set to "auto" to use all available CPU cores. You can limit it if you want to keep your computer usable while rendering. Each thread works on a chunk of the image independently.
The FX tab has tone mapping, bloom, microcontrast, and vignette. These don't change the render — they're post-processing, so you can tweak them instantly without re-rendering.
Symmetry is where things get wild. Horizontal and vertical flip the render. 4-way combines both — every quadrant mirrors the others. Alternative 4-way does horizontal first, then vertical, which gives a different feel. Try symmetry on a Burning Ship or Celtic fractal — instant mandala.
The Quick Controls panel (press
Q) has gamma, exposure, contrast, and hue — tweak
these while watching the render update live.
Hue shifts the color without re-rendering.