GLSL Shader Fun

22 04 2011

I’ve recently been experimenting with GLSL fragment (pixel) shaders which allow for realtime generation of things previously taking minutes or hours to undertake even a single frame. e.g. mandlebrot fractals, ray tracing. Still in its infancy and certainly, graphics cards + OS drivers can be very picky about which ones they don’t completely crash on.

Inspired by Iñigo Quílez’s shader toy http://www.iquilezles.org/apps/shadertoy/ , I’ve written a native app that can load and display GLSL fragment shaders with a little more success and efficiency than WebGL was having through the browser. Note that you still need a fairly good modern computer with a graphics card that can handle OpenGL 2.0. Included are 38 demo shaders. All credit for the shaders goes to Iñigo Quílez and his demoscene contributors. I’ve only managed to write one so far.

Tested on a Macbook Pro 15″ AMD Radeon HD 6750M (doesn’t seem to like Mandlebulb, To The Road A Ribbon or Slisesix but 35 others worked fine and fast). Also tested on a slightly older Macbook Pro NVIDIA GeForce 9400M which worked on all 38 but had low framerates on the more involved ray traced shaders. Note that it is currently untested on Windows as my Samsung NC10 doesn’t appear to cope with any form of GLSL.


Actions

Information

4 responses

29 09 2011
Michael

Waw this is fantastic !
I wish I had a clue on how to play with this on Blitzmax.
Maybe too unstable for practical use but definitely demoscene.
I suppose you have to begin with GLMax2DDriver and pub.glew somewhere.
So different from Max2D…

28 06 2012
George Toledo

I happened to be doing a little searching for something else and stumbled on this. The program is quite interesting… really good! What IDE did you use to program this with? Is this an example of Blitzmax?

28 06 2012
seanscarff

Hi George,

Thanks for the feedback. Yes, this was written with Blitzmax. I highly recommend it if time is at a premium and you just want to experiment with some ideas.

30 08 2012
Joshua Batty

Great stuff mate, cheers for putting these all together.

Leave a comment