Dark Bit Factory & Gravity

GENERAL => Challenges & Competitions => Topic started by: taj on November 29, 2006

Title: MATHCOMP: icebrot
Post by: taj on November 29, 2006
OK first let me apologise for so many entries. I just got into this kinda.
Anyway, this entry is never going to win as very few people can run it I guess but I was wanting see see how fast shaders work. I learnt a lot thats not written oin books about shaders doing this one so I'm happy with that. If you *can* run it, it will be a vastly different speed on each card I have no doubt. It does require PS 3.0 so I'm sorry for those who cant run. If ANYONE manages to run it, let me know. My first attempt worked on one ATI PS3.0 card and not on another - which shows how crap shader suppirt is at the moment. I am particularly keen to hear of anyone can run it on NVIDIA.

Anyways, its a mandelbrot set with some variables that are normally constant, smoothly varying. One of them give a smooth blend between a mandel and a julia set.
Title: Re: MATHCOMP: icebrot
Post by: combatking0 on November 29, 2006
Wow! This reminds me of an electron micrograph.

If only JS could do smooth curves.
Title: Re: MATHCOMP: icebrot
Post by: rdc on November 29, 2006
Screenshots look really good. I wish I could run the exe. I'll need to get a new video card one day soon it looks like.
Title: Re: MATHCOMP: icebrot
Post by: Shockwave on November 29, 2006
I'll echo Rick.. Unfortunately I could not run the exe either. The shots look great. I'll just have to use my imagination.
Title: Re: MATHCOMP: icebrot
Post by: taj on November 29, 2006
You'll have to trust me - it looks amazing :-) Seriously I guessed nobody could run it but what the heck I had fun.
Title: Re: MATHCOMP: icebrot
Post by: MrP on November 29, 2006
I can run it, Very Very Nice...... Gotta say i've seen a lot of fractals, but none displayed quite like that... Nice job....

System:
P4 3.2Ghz Dual Core
G-Force FX7800GTX
Title: Re: MATHCOMP: icebrot
Post by: taj on November 29, 2006
Thats fantastic that someone can see it ! Very happy you enjoyed it - and on an NVIDIA. Great stuff, you made my night, thanks MrP.
Title: Re: MATHCOMP: icebrot
Post by: benny! on November 29, 2006
Yeah .. another excellent production. Runs smooth here  :clap:
Title: Re: MATHCOMP: icebrot
Post by: Rbz on November 29, 2006
Works fine here too, a nice fluid fractal effect, welldone Taj
Title: Re: MATHCOMP: icebrot
Post by: Jim on November 30, 2006
Runs on my nVidia Quadro FX1400.  Amazing to see this kind of fractal being done in real-time now.

Jim
Title: Re: MATHCOMP: icebrot
Post by: taj on November 30, 2006
Great guys, I love that you can see it. Truth is, I had a first version and then spent 6 hours reworking it to get it to work on an x800, kinda the worst ps3.0 compatible card there is. Thats really good that other ps3.0 cards can see it too now.

Rbraz, benny, can you tell me what cards you have please? Thios is sort of a big learning experience for me.

 
Title: Re: MATHCOMP: icebrot
Post by: Stonemonkey on November 30, 2006
Nice, works well here.

AMD64 3200+
Radeon X1650
Title: Re: MATHCOMP: icebrot
Post by: benny! on November 30, 2006
@taj:

Of course. I have the GeForce 6800 GT and the fx runs very smooth on it!
Title: Re: MATHCOMP: icebrot
Post by: taj on December 01, 2006
Those of you who have PS3.0 cards and could run icebrot can have a look here:

http://www.intro-inferno.com/production.php?id=2062

at a _1k_ version which is much much prettier and has more intersesting shapes. Here is an image to whet your appetite.
Title: Re: MATHCOMP: icebrot
Post by: Rbz on December 01, 2006
hmm, your new 1kb prod isn't working here  :-\ , I got only a yellow screen  :(


P4 2.8Ghz - 512MB
Geforce 6600GT 128MB (PS 3.0)
Title: Re: MATHCOMP: icebrot
Post by: taj on December 01, 2006
with the unpacked version too? hmmm bloody shaders ok...I'll load a couple of test programs tonight if you dont mind trying to see if we can locate the problem...
Title: Re: MATHCOMP: icebrot
Post by: Rbz on December 01, 2006
with the unpacked version too? hmmm bloody shaders ok...

Same for the unpacked too...

Quote
I'll load a couple of test programs tonight if you dont mind trying to see if we can locate the problem...
Ok  :)
Title: Re: MATHCOMP: icebrot
Post by: taj on December 01, 2006
Rbraz,

can you run these four and let me know if anything appears on screen for each one. They dont look exactly as they are meant to but Im trying to find likely causes for the problem...

Thanks.
Title: Re: MATHCOMP: icebrot
Post by: Rbz on December 01, 2006
Ok dude, here is the results:

rbraz32dm.exe  - red screen :(

rbraz8loop.exe - red screen :(

rbraznocos.exe - works fine :)  - I can see the fluid fractal and background is black, it change colors too..

rbraznomix.exe - red screen :(


Btw, I forgot to mention that your Icebrot example the background is black here, but the fractal have the same colors like your screenshot...
Title: Re: MATHCOMP: icebrot
Post by: taj on December 01, 2006
rbraz32dm.exe  - red screen :(
rbraz8loop.exe - red screen :(
rbraznocos.exe - works fine :)  - I can see the fluid fractal and background is black
rbraznomix.exe - red screen :(
Btw, I forgot to mention that your Icebrot example the background is black here, but the fractal have the same colors like your screenshot...

How the heck the background is black is beyond me at the moment but I'll figure it eventually.
3 means that on your card we are running out of units for processing stuff like sin,cos etc in the vertex shader. You see you can be perfectly compliant with GLSL but be able to do very little - the spec is sooo loose right now in terms of maximum units to do things.

What card is it? Is it Ati or Nvidia?

I have one more try with code rewritten...I hope this fixes the problem but I bet its still black background :-(
Title: Re: MATHCOMP: icebrot
Post by: Rbz on December 01, 2006
Yep, the background still black...


Quote
What card is it? Is it Ati or Nvidia?
nVidia - Geforce 6600GT


Sorry if I can't help more, I don't know anything about pixel shaders yet  ???

Thanks to trying fix this...



Title: Re: MATHCOMP: icebrot
Post by: slinks on December 01, 2006
My computer is dieing just looking at the complexity of the screenshots, I'd better leave this one alone!  :cheers:
Title: Re: MATHCOMP: icebrot
Post by: taj on December 01, 2006
One last attempt tonight...

thanks for the help rbraz,karma up anyway. After this ill implement a whole set of error reporting and nail this puppy, but not tonight - too much vodka.

Title: Re: MATHCOMP: icebrot
Post by: Rbz on December 01, 2006
Sorry, still black :(

Btw, I'll update my gfx driver, maybe that help too...
Title: Re: MATHCOMP: icebrot
Post by: taj on December 02, 2006
OK either a) Nvidia drivers are non-compliant or b) ati ... I know where my money is.
Title: Re: MATHCOMP: icebrot
Post by: Rbz on December 02, 2006
Damn, black background again... ???
Title: Re: MATHCOMP: icebrot
Post by: taj on December 02, 2006
Rbraz,

thanks for all the patience. I did some internet searching and it seems lots of people have problems with shaders on 6600. So, for now anyway I''m officially giving up. It could be my code of course but for the moment, I cant see a problem.

Damn, to do shaders you need about 10 PCs for testing. Its ridiculous. Really it is.
Title: Re: MATHCOMP: icebrot
Post by: Rbz on December 02, 2006
I updated my graphic board drivers and run your tests again:

rbraz32dm.exe  - works fine - I can see the fluid fractal and background is black, colors are ok..
rbraz8loop.exe  - works fine - I can see the fluid fractal and background is white, colors are ok..
rbraznocos.exe - works fine - I can see the fluid fractal and background is black, colors are ok..
rbraznomix.exe - works fine - I can see the fluid fractal and background is black, colors are ok..

And now your 1kb is working fine too, but with black background  :P


Title: Re: MATHCOMP: icebrot
Post by: taj on December 02, 2006
Rbraz,

OK so given you get a white background now with new drivers, its a memory issue, the number of loops is critical to success on different cards. The one I gave you looped only 8 tmes, and is white - the correct colour. The one I published loops 14 times and somehow causes your card to get an incorrect result.

It seems, shaders are very prone to problems: even a correct shader will not necessarily work. Great example this loop in mandelbrot. On my x1900 it works up to about 30 loops, on my x800 up to 14 and on your nvidia 6600, at least up to 8 but not up to 14. Other things, ati cards fall back to software rendering as soon as you use a variable as the loop counter: again not a language problem but a card problem. I assume that the compiler is loop unrolling depending on the fixed loop number and not really processing a loop on the card at all (which also explains the lack of memory and limit on loop size). Lastly gl_Color is supposed to be available in both vertex and pixel shaders but on my ati cards although gl_color is not available in pixel shaders (you have to copy it and pass it through another variable, wasting bytes).

Overall, its easy to see why there arent so many intros relying on loops and iteration in shaders.   

Shaders for sure are a very immature technology. Rbraz thanks again for helping me to understand this. Have a drop more Karma.
Title: Re: MATHCOMP: icebrot
Post by: lilw4t3rdr0p on December 03, 2006
I use to blow glass in college and it looks like some of the designs that can be made inside the glass. I always loved them, so in-turn I love this!   :clap: