Strange attractors

Published August 07, 2006
Advertisement
ShipBuilder linked a few days ago to a strange attractor program called chaoscope. I knew the existence of strange attractors before, but only as weird mathematical objects and never realized there could be a practical interest for them. Well, i was wrong. When i saw the images created with chaoscope, i realized many of them were looking like volumetric nebulaes, a topic that i already investigated, if you remember my journal updates, maybe a year ago.

Anyway, i quickly started to google for informations about the "maths" behind strange attractors, and it's surprizingly simple; technically, it's just a function that generates a cloud point, each point beind a function of the previous point and of a parameter set. The "hard" part is to determine the parameters that will generate strange attractors automatically, or in our case, nice looking nebulaes ( and i've yet to do that, even though i have some ideas ).

Here's the result of a few hours of playing around:



Of course, rendered in real time ( and still a bit grainy ).
0 likes 6 comments

Comments

_winterdyne_
You are a frightening, frightening person. Nice work.
August 07, 2006 01:41 PM
jollyjeffers
That looks pretty [grin]

Although, the first use I thought of was as a screensaver or media player visualization!

Seems like there are an awful lot of points in that cloud - even though its realtime doesn't it kill performance?

Oh, and is it animated at all?

Jack
August 07, 2006 02:12 PM
coderx75
Wow, that is VERY interesting! Are you planning on rendering it point for point (realtime fly-through) or is this going to be added onto the sky box texturing?
August 07, 2006 02:37 PM
Ysaneya
The one in the picture is a million points, good enough to run at 20 fps in immediate mode. More likely over 100 fps with a couple of optimizations.

But, the truth is, it doesn't matter. I'll actually probably render it with a number of points closer to 10 to 20 millions. Of course, that doesn't allow a good framerate anymore, but i'll simply render it to a HDR sky box and apply a tone mapping operator to that sky box in real time. Given a star system, your position in the nebulae would appear static (even if you move within the star system). When you'll use the hyperdrive and navigate at many light-years per second, i'll probably switch rendering to a lower amount of points (250K maybe), and since there'll be many "tunneling" effects applied on the screen, i don't think anybody will complain.

But yeah, the ability to see the nebulae from any viewpoint (far, close, even from inside), is fundamental.
August 07, 2006 05:05 PM
Damsdesign
August 08, 2006 03:31 AM
adcdac

Hi Ysaneya! have you programed this nebulae with shaders GLSL? I'm just trying to do this but still don't know exactly how. Can you share me some code? I have two
difficulties:
a) Don`t know how to program the attractor ping-pong stuff on a shader
b) Don't know how to apply the perlin noise on it...

Thanks in advance!
November 03, 2008 01:15 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement