What is Mandelbulber?
Mandelbulber is an experimental application that helps to make rendering 3D Mandelbrot fractals much more accessible. A few of the supported 3D fractals:
Mandelbulb, Mandelbox, BulbBox, JuliaBulb, Menger Sponge, Quaternion, Trigonometric, Hypercomplex, and Iterated Function Systems (IFS). All of these can be combined into infinite variations with the ability to hybridize different formulas together.
Architecture
- Completely free, open source, GNU GPL license
- 32-bit and 64-bit for Windows, Linux, and Mac (Intel & PPC)
- GUI created in the GTK+ environment
- Multi-core rendering
Features
- 3D Navigator with tools to see how close the camera is to the fractal surface.
- Complex 3D shading: hard shadows, 3 modes of ambient occlusion, depth of field, reflections, fog, glow, primitive objects, and water.
- Lights can be manually or randomly placed. Volumetric lighting available.
- Camera animation: Keyframe and mouse controlled flight.
- Keyframe animation of all parameters.
- Camera lenses: three-point projection, fisheye, and equirectangular projection.
- Distance estimation algorithm to reduce render times and artifacts of ray marching.
- Low memory mode to render images larger than 16,000 x 16,000 pixels.
- OpenCL support in progress
Ray Marching
- Mandelbulber utilizes ray marching to render 3D fractals. But what exactly is ray marching?
- Instead of ray tracing the whole distance between the camera and the nearest surface, the ray "marches" the distance in small steps. At each step a scattering is simulated. The final result is a synthesis of the various scatterings along the length of the ray.