Tools for GLSL editing [closed]

I'm looking for some kind of tool to work with GLSL. I want to experiment with shaders in the WebGL application, so what I'm looking for is something like RenderMonkey. As far as I know - RenderMonkey is not supported anymore, so there must be some other tool that took it's place.

The best would be if I could do both the "effect composing" like RM and the raw GLSL code development.


Solution 1:

Looking forward to see some nice answers.

In the meantime, I recommend having a play with ShaderToy and FractalLab

shader toy

FractalLab

Solution 2:

It's not a full IDE, but the WebGL inspector browser extension by benvanik seems promising:

http://benvanik.github.com/WebGL-Inspector/

From his page a number of features that might be along the lines you're looking for:

  • Extension for injecting into pages
  • Embed in an existing application with a single script include
  • Capture entire GL frames
  • Annotated call log with stepping/resource navigation and redundant call warnings
  • Pixel history see all draw calls that contributed to a pixel + blending information
  • GL state display
  • Resource browsers for textures, buffers, and programs

I've only used it a little bit, but it seems to be a lot better than working in the bare browser.

Solution 3:

After hard searching in google i found this tools for glsl.

http://syntopia.github.com/Fragmentarium/

http://wwwvis.informatik.uni-stuttgart.de/glsldevil/index.html#usage

http://cg.in.tu-clausthal.de/teaching/shader_maker/index.shtml

http://sourceforge.net/projects/lumina/files/

http://www.kickjs.org/example/shader_editor/shader_editor.html

http://web.engr.oregonstate.edu/~mjb/glman/

http://www.iquilezles.org/apps/shadertoy/

http://www.lighthouse3d.com/opengl/tools.shtml

http://code.google.com/p/qshaderedit/

Sorry for that some links are repeat with previous answers.

Solution 4:

This may or may not help but if you have access to a Mac you can use Quartz Composer for this. For example you can put a trackball and clear patch in a composition, add a glsl shader patch to the trackball and add add the a teapot patch to the glsl shader patch. Then if you go to settings on the glsl shader, you have access to the vertex and fragment shader code. Any changes you make will be displayed in real time. The only drawback is that as far as I can tell you have to use hard-coded constants instead of uniforms. It's not perfect but its fine for playing with new effects and rapid prototyping of algorithms.