gigabroccoli1Last week I discovered this website: http://www.skytopia.com/project/fractal/mandelbulb.html. It describes a new way of rendering 3D Mandelbrot fractals using three components simplex numbers, instead of the traditional 4D Quaternion. This new function produces a lot more interesting 3D fractal details and lead to very impresive renderings.

I have implemented this function as a GPU producer into GigaVoxels and I am able to render it in real-time as you can see on this video. It is a work-in-progress, but it already works quite well ! (around 20FPS)

The fractal is computed on the GPU, not during the ray-casting as usually done, but as voxels stored into an Octree.
Voxels are produced on-the-fly and stored into a cache in video memory in order to be reused while they stay visible. The octree is also subdivided on-the-fly and the subdivision is triggered directly by the ray-casting kernel. That prevents to generate any occluded data.
I compute Ambient Occlusion very efficiently using filtered low resolution voxels and soft shadows are computed with secondary rays.

Better quality video files can be downloaded there: GigaBroccoli1.avi GigaBroccoli2.avi

gigabroccoli2 cudagigavoxels_2009-11-23_10-16-12-34cudagigavoxels_2009-11-22_15-44-20-03