Advertisement Jump to content
  • Advertisement
  • entries
  • comments
  • views

Strange attractors

Sign in to follow this  


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 ).
Sign in to follow this  


Recommended Comments

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?


Share this comment

Link to comment
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?

Share this comment

Link to comment
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.

Share this comment

Link to comment

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
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!

Share this comment

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!