Logo by wmauzey - Contribute your own Logo!


it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Visit us on facebook
Welcome, Guest. Please login or register. May 23, 2022, 10:19:46 AM

Login with username, password and session length

The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!

Pages: [1]   Go Down
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: OpenGL+cuda renderer (video+src)  (Read 4667 times)
0 Members and 1 Guest are viewing this topic.
« on: January 24, 2010, 11:30:48 AM »

I've been lurking on this forum last autumn, I thought I should at last post the result :
A ray tracing renderer with one light source, phong shading, full movement around the mandelbulb,
automatic level of detail (depending on distance to object). You can also change the power (negative and positive).

About 0.8 seconds per image on my GeForce 9800GT.

An image :

A video : http://kyrlian.free.fr/binaries/cudafractal/rotate_zoom.avi

Sources with visual C project (for win):

Sources with makefile (for *nix):

To compile and run, you'll need a Nvidia card, latest nvidia drivers, toolkit and sdk from http://www.nvidia.com/object/cuda_get.html
Algorithm comes from various posts in this forum (http://www.fractalforums.com/3d-fractal-generation/true-3d-mandlebrot-type-fractal/?action=printpage), cuda code from NVidia samples in the cuda toolkit.

usage (for azerty kb, change in opengls.cu):
z, q, s, d : move
e, c : strafe up-down

r, v : zoom in-out

i, j, k, l : rotate view around origin
4, 5, 6, 8 : look around
g, h  : rotate light around view vertical axis
w, W : decrease, increase maxiter
f : toggle full screen (you can also resize the window as usual)
o : print position
u : print (this) usage
a : quit

Thanks for the ride,
Fractal Phenom
Posts: 443

« Reply #1 on: January 25, 2010, 12:29:23 AM »

Thank you so much for open sourcing it.
« Reply #2 on: March 30, 2010, 07:16:24 PM »

Thanks also from my side. With your code, i've a starting point to play around with CUDA on NVIDIA and the mandelbulb stuff.

~300ms on my GeForce GTX 280
edit: ~100ms with blocksize set to 16 in cuda_draw.cu
My fare away target would be to improve the speed of http://www.fractalforums.com/mandelbulb-software/mandelbulber-open-source-program-for-rendering-high-quality-mandelbulbs/, with supporting NVIDIA GPU's.

But for that, i've a long way to go. The only thing i can in the moment is C-Programming (C++ is a bit rosty) and i like the mandelbulb images a lot ;-)


« Last Edit: March 30, 2010, 07:40:34 PM by itisnt » Logged
« Reply #3 on: April 12, 2010, 05:32:34 AM »

Make sure your blocksize is a multiple of 32, or else it won't be able to utilize the entire SIMD.  128 is probably a good block size.
Pages: [1]   Go Down
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Double Precision CUDA GTX 200 OpenGL GLSL Fractal Programs mrrgu 3 3570 Last post January 06, 2010, 08:39:16 AM
by Snakehand
opengl, order independent tranparency ? Programming cKleinhuis 13 1893 Last post May 06, 2013, 11:20:35 PM
by cKleinhuis
Combining ray tracing and polygon graphics in OpenGL shaders Programming Syntopia 9 3731 Last post January 16, 2014, 04:54:23 PM
by 3dickulus
mightymandel GPU Mandelbrot set renderer (OpenGL 4) Fractal Programs « 1 2 3 » claude 39 15849 Last post July 30, 2015, 04:35:41 PM
by claude
CUDA mandelbrot renderer - should I publish? General Discussion kubinator4321 3 5115 Last post January 16, 2015, 04:38:58 PM
by kubinator4321

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.115 seconds with 26 queries. (Pretty URLs adds 0.007s, 2q)