Isokron
Forums Freshman
Posts: 15
|
|
« on: January 15, 2010, 07:30:27 PM » |
|
I have been working on a realtime viewer for mandelbulbs for a while and finally got it working well enough that im not too ashamed of releasing it public. It uses a slightly different approach from the standard gpu based raytracers. Instead it uses a refining voxel field is triangularized using marching cubes on the cpu and then rendered. It also uses ssao for ao instead of orbit traps. This has both some advantages and disadvantages with the biggest advantage probably being that it doesnt require any DE so it works equally well inside as outside the fractal. The main disadvantage being that one cannot fully utilize the raw power of the gpu. The program uses dx10 for rendering so vista+ and gf8800+ is needed as well as at least a dualcore cpu. It runs ok on my C2D+gf8800 although one have to wait around a bit for it to refine the voxels in an area enough. On my I7+gf260 this problem is mostly gone. Anyway here is a download link https://sourceforge.net/projects/mandelbulbview/files/Mandelbulb-0.4.zip/downloadand here is a video showing me flying around in it (sorry if I seems confused over where to fly sometime)
http://www.youtube.com/v/ft9nk0bNJFk&rel=1&fs=1&hd=1If someone would like to help me working on it or just change around some stuff the src code is here (gpl licence) https://sourceforge.net/projects/mandelbulbview/files/mandsrc-0.4.zip/download
|
|
|
Logged
|
|
|
|
bib
|
|
« Reply #1 on: January 15, 2010, 08:36:58 PM » |
|
The visit of the inside is particularly amazing! The program is very fun. And thank you, for the first time I hear a new sound in my PC: the sound of the GPU fan I tried to find how to navigate and probably clicked everywhere too quickly. Now I just have the blue background. How do I reset the view and what are the commands to navigate? Thanks a lot!
|
|
« Last Edit: January 15, 2010, 09:36:31 PM by bib »
|
Logged
|
Between order and disorder reigns a delicious moment. (Paul Valéry)
|
|
|
David Makin
|
|
« Reply #2 on: January 15, 2010, 09:40:06 PM » |
|
Excellent - I agree - more "inside" please.
|
|
|
Logged
|
|
|
|
cKleinhuis
|
|
« Reply #3 on: January 15, 2010, 10:00:44 PM » |
|
on my gpu geforce gts250 it rendered a bit slow, and i wonder if there is a keyboard layout list, and how to increase iteration , a mouse camera rotate mode would be a dream !
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
Melancholyman
Guest
|
|
« Reply #4 on: January 15, 2010, 10:15:43 PM » |
|
Wow thx lot. I've been trying out some real time renderers, but this one seems by the video to be the best so far! Looking forward exploring the inside of the Mandelbulb. It would be really nice to be able to change the iteration yes. Cheers"!
|
|
|
Logged
|
|
|
|
cKleinhuis
|
|
« Reply #5 on: January 15, 2010, 10:45:20 PM » |
|
and RESOLUTION , i would like to fill 4gigs of memory with it , or add some kinde of refinment, without savingthe geometry, just use it for plotting small 2d recangles and delete if it parameters change....
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
Isokron
Forums Freshman
Posts: 15
|
|
« Reply #6 on: January 16, 2010, 12:05:17 AM » |
|
Ah seems like i forgot to include some readme about keys, well here is some quick ones
Arrow keys: Move rdsg: Move yh: move up/down et: roll camera Mouse wheel: move speed Right mouse button: Toggle mouse look B: Toggle some debug info
The Iter slider sets the number of iterations The max node slider decides how much geometry it keeps and draws The mandelbulb pwr x slider changes the type of mandelbulb but I have only done a sse optimized version of the pwr 8 so the other will be slow
As for finding the bulb if you lost it, enable debug view which will show you your position and forward heading and move toward origo.
Refining without saving geometry wouldnt fit very well in the current architecture im afraid, so I think you will just have to increase max nodes for that and take the framerate hit.
|
|
|
Logged
|
|
|
|
cKleinhuis
|
|
« Reply #7 on: January 16, 2010, 12:45:11 AM » |
|
oh, thank you, that helps very much ehm, might it be that there is some kind of bug on the glueing section of the marching cube sections ? it shows a regular rectangular erosion on the inside! fun program!
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
bib
|
|
« Reply #8 on: January 16, 2010, 02:25:56 AM » |
|
Yes this program is super cool! I mean, I've been used to wait so long to get decent views, and now it comes almost in real time! Just a quick story (someone who does not know what we're talking about would probably think I'm crazy, which I am probably ) I was having fun navigating inside the power 2 bulb and I wanted to see how seahorse valley looked like from the inside. So I came near the place where the tomato meets the golf ball. But I lost my way and I entered some kind of tunnel. Honestly I thought that the perspective was strange and I kept moving forward, still thinking I was coming close to seahorse valley, where the tomato and the golf ball touch each other, coming from the middle of inside the tomato. I was wrong! After a long distance (still reducing speed), I finally realized that I had passed a kind of room, maybe even 2, a big one, and a small one. I suddenly realized that I was in the spike and that I had gone through several minibulbs. I got out and saw all the way I had run in straight line For somebody who has passed a few hours exploring the 2D Mandelbrot set inside out, I can tell you it's a real fun experience +++++
|
|
|
Logged
|
Between order and disorder reigns a delicious moment. (Paul Valéry)
|
|
|
David Makin
|
|
« Reply #9 on: January 16, 2010, 02:39:54 AM » |
|
I suspect my luck is out here - there are still no GPU Mandelbulb renderers that will work on my ATI X600 Actually even if there were I don't think they'd be very fast
|
|
|
Logged
|
|
|
|
cKleinhuis
|
|
« Reply #10 on: January 16, 2010, 02:52:31 AM » |
|
@dave go out and get a directx10 graphics card for 50€ it is worth it ! even though zooming depth is limited
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
bib
|
|
« Reply #11 on: January 16, 2010, 02:32:48 PM » |
|
The inside is fascinating! Thanks so much for this program
|
|
|
Logged
|
Between order and disorder reigns a delicious moment. (Paul Valéry)
|
|
|
bib
|
|
« Reply #12 on: January 16, 2010, 03:42:15 PM » |
|
inside P4 8-star
|
|
|
Logged
|
Between order and disorder reigns a delicious moment. (Paul Valéry)
|
|
|
Isokron
Forums Freshman
Posts: 15
|
|
« Reply #13 on: January 16, 2010, 03:58:14 PM » |
|
Trifox: Not quite sure what you mean with a regular rectangular erosion, screenshot perhaps ? Maybe you mean the cracks that sometimes appear between nodes (each node 32x32x32 voxels), in that case its because the nodes have been subdivided to a different resolution from each other. One could create some extra geometry tieing together the nodes in that case but it would require quite a bit of extra coding and drawcalls so I havent bothered.
(it could maybe also be because I do a bit of math in the vertex shader that due to float imprecision could yield different results for different nodes. I havent noticed this when I have tested but at least some years ago ATI cards where said to be worse at this and I have only tested on nvidia ones)
Bib: If you really want to explore the different powers of the mandelbulb you might want to implement some sse math for them also, the difference in speed is probably 20x. It might require a bit of c++ knowledge but copy pasting the pwr8 one it should just be changing the math expression (although the program will still need to be recompiled).
Interesting pictures where is the first one taken from?
|
|
|
Logged
|
|
|
|
cKleinhuis
|
|
« Reply #14 on: January 16, 2010, 04:26:46 PM » |
|
i thought those rectangular areas
|
|
|
Logged
|
---
divide and conquer - iterate and rule - chaos is No random!
|
|
|
|