It looks like tools for Dx9 shader creation are actually starting to mature into something useful. Over the past couple of months I've seen various attempts at decent tool for creating Dx9 .fx files, none of which has really cut the mustard.

(an image rendered in realtime with HLSL - from ShaderWorks' gallery)

There has been ATI's attempt with RenderMonkey, which whilst interesting never seemed to have any real focus, or infact be very stable. It seemed like ATI were on the right track with what they were trying to achieve, but something about it was lacking. There was always Microsoft's own EffectEdit, which provided you with a simple interface in which you could edit effect files in real time and see the results, which again was fun to play with, but wasn't really what you'd consider to be a full tool.

Now however it looks like things are hotting up with the alpha release of ShaderWorks from Mad Software. I remember having a look at a very early release of this tool some months ago when it wasn't really anything more than a couple of nice shader demos. Now however its transformed itself into possibly the most useful shader tool I've seen yet. The interface is nice and user-friendly, with lots of features and buttons to play with. But its big advantage is that it has support for a "visual" method of creating and editing your shaders.

(the user-interface of ShaderWorks)

You can write individual HLSL functions which then can be used as basic building blocks in a graph, and you can drag and drop outputs of one function to the inputs of the next, opening up the possibility of letting artists tweak with basic shader creation (not to mention just being great fun to play with). The system then updates the .fx file in real time and allows you to see the results of your tweaks instantly. At the end of the day you can export and use the final .fx file in your application.

Apparently there is a support API in development as well, but I'm not quite sure what this will entail, as Microsofts effect API is pretty easy to use out of the box anyway. I, for one, am very impressed with what has been achieved with ShaderWorks, and am looking forward to the full release with interest. Tools like this are whats really needed to help developers get the best out of the latest graphics hardware quickly and easily.

Posted by kallisti at 02:15 PM on Tue, 09 December 2003


Shaderworks seems to function along the same vein as ShaderMan which uses PRMan or BMRT.

While it seems that it currently can't be used with DirectX's HLSL or GLslang, it's not a bad way to get more familiar with shading languages.

slcEditor is pretty interesting also.


Grrrr ... the links where eaten up when I posted. Here they are:



Yep, sorry about that, links get filtered to prevent stupidly long URLs screwing up the page layout. And of course HTML tags are disabled.