Refresh: Asides

GL SLang for Video Artists Mailing list -

Just a quick heads up. If you are interesting in learning GLSL, or Open GL Shader Language (known as GL Slang) to work with realtime video for effects, mixers and 3D, there is a new mailing list up over at Dataflow.ws. See you there!

Powerful Visuals for Newbies: Your First Shader Tutorial at C74

My First Shader

No, wait! You, too, can do this! Then show everyone your shader code and feel like a bad-ass. Or, better yet, get a GLSL shader code tattoo.

Shaders, snippets of code for processing pixels and 3D points on your 3D card’s GPU, are cool — that much you may know. You may even know that you can use shaders — designed for 3D applications — to perform powerful video-processing tricks, as well, at high speeds, even on a relatively lowly laptop. How to actually build your own — that may be elusive. So, at long last, Cycling ‘74 has published a great, beginner-friendly (even for non-programmers) tutorial on building your own shaders:

Your First Shader

The author is Andrew Benson, who is my hero as far as coming up with great Jitter examples. (Every time I’m looking for some model for a technique I have in mind, I keep stumbling on his sample patches in the Jitter folder and still more in his By the second page, you’re already building your own custom, glitchy visual filters. Great stuff.

Now, of course, this tutorial isn’t limited to users of Max/MSP/Jitter, but Max is really an ideal environment for testing shaders. (It can even work well as a prototype environment before going elsewhere.) This code will work in Processing, though, and I could see using a combination of those two tools (still working on my own workflow there).

We’ll be practicing our shader chops, because there’s definitely a need for more information like this. This sentence says it all: “If you want to learn more, I highly recommend poking around the “jitter-shaders” folder and grabbing the official GLSL specification(PDF) or the GLSL Orange Book.” Good advice, and the example Jitter shaders included with the program will already do a lot of what you’d like need. But, as fair warning, the Orange Book and other official OpenGL documentation can make your head hurt, fast. (There’s a reason “… for Dummies” isn’t on the end of the title.) I still recommend picking up a copy, but there’s definitely a need for at least intermediate documentation. Being something of a dummy myself, I may be able to help.

Free Shader Development Utility for OpenGL (Windows, Linux)

TyphoonLabs Shader Designer is a free IDE for creating your own vertex and pixel/fragment shaders, the magical code snippets that process 3D geometries, textures, and even images and video on your GPU. I’ve been fiddling around with it a bit on Windows as I work on learning OpenGL’s shading language, GLSL, and it seems quite handy. Previously Windows-only, it’s now available on Linux, as well. (It was developed with .NET, which is getting increasingly nice OpenGL tools of its own.)

TyphoonLabs Shader Designer

With code completion and syntax highlighting, easy access to settings, and real-time previews, this could be just the tool for someone learning about shaders for use in other software, like Max/MSP/Jitter.

If you’re on the Mac and want something similar, make sure you’ve installed the developer tools from the OS X 10.4 disc, and check out the 3D folders. There’s a similar tool for working with shaders included in the OS X distribution.

We hope to have more shader coverage through 2006, so hold onto your seats for some newbie-friendly shader tutorials. (I.e., if we can do it, you can do it.)

Via OpenGL.org’s news blog, an excellent source for all the latest OpenGL geekery.