Title: GigaBroccoli: Real time Mandelbulb into a sparse voxel octree Post by: CyrilCrassin on November 24, 2009, 12:35:19 PM Here are videos of the set rendered in real-time by "GigaVoxels", our sparse voxel octree rendering engine implemented with CUDA (more info here: http://artis.imag.fr/Membres/Cyril.Crassin/).
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. Everything runs at around 20Hz. More images and direct links to the videos there: http://www.icare3d.org/blog_techno/gpu/gigabroccoli_the_mandelbulb_into_gigavoxels.html (http://www.icare3d.org/blog_techno/gpu/gigabroccoli_the_mandelbulb_into_gigavoxels.html) http://www.youtube.com/v/PFr-cEEb8y0&hl=en_US&fs=1& http://www.youtube.com/v/xF4mTGyskr0&hl=en_US&fs=1& (http://www.icare3d.org/images/stories/GigaVoxels/GigaBroccoli/gigabroccoli1.png) Title: Re: GigaBroccoli: Real time Mandelbulb into a sparse voxel octree Post by: lycium on November 25, 2009, 02:19:13 AM extremely impressive system, i suppose with this caching mechanism you can have nearly infinite precision (up to the limit of your fp computations).
on the other hand, how does it deal with situations when you are very zoomed in - you would need to take very small steps to the surface in front of you, but the raycasts backwards would have to travel very far, probably outside the bounds of what's been cached. Title: Re: GigaBroccoli: Real time Mandelbulb into a sparse voxel octree Post by: kram1032 on November 25, 2009, 11:09:35 PM wow, those are nice :D
Title: Re: GigaBroccoli: Real time Mandelbulb into a sparse voxel octree Post by: CyrilCrassin on December 02, 2009, 11:18:30 AM You are true, the cache system has been design to allow virtually infinite resolution, and the real hard limit is the precision of the single precision floats.
About the situation you described, thanks to the multi-resolution scheme, the amount of data to generate should stay quite constant independently to the scale, and the distance to the set. Title: Re: GigaBroccoli: Real time Mandelbulb into a sparse voxel octree Post by: cbuchner1 on December 04, 2009, 06:16:19 PM You are true, the cache system has been design to allow virtually infinite resolution, and the real hard limit is the precision of the single precision floats. About the situation you described, thanks to the multi-resolution scheme, the amount of data to generate should stay quite constant independently to the scale, and the distance to the set. If you're computing the iterative function in CUDA, I could offer a replacement "float" type (implemented as a class) that makes use of the dsfun math library, to emulate double precision floats with two single precision floats. Title: Re: GigaBroccoli: Real time Mandelbulb into a sparse voxel octree Post by: Nahee_Enterprises on January 30, 2010, 08:30:21 PM Here are videos of the set rendered in real-time by "GigaVoxels", our sparse voxel octree rendering engine implemented with CUDA.... ...www.youtube.com/v/PFr-cEEb8y0&hl=en_US&fs=1& I am just now getting around to viewing some of the animations I missed, and the clarity of this video is rather refreshing. Lots of details plainly visible for a "work in progress". ...www.youtube.com/v/xF4mTGyskr0&hl=en_US&fs=1& I am curious as to the "blue" hue (or haze) surrounding some areas of this object. Title: Re: GigaBroccoli: Real time Mandelbulb into a sparse voxel octree Post by: LeonardC on March 11, 2010, 09:37:47 PM very impressive indeed. :dink: i too am curious about the blue "haze"... |