GLSL Shader Development Environment

Synthclipse is a GLSL shader prototyping tool. It makes possible to fast develop all kinds of shaders: Fragment (FS), Vertex (VS), Geometry (GS), Tessellation (TS) and Compute (CS). Shader development can be done using compatible with Fragmentarium and Shadertoy (but limited to FS and VS) Fragx shaders or by using fully featured JavaScript JSX scripts. The JSX API is consistent with WebGL but in fact exposes complete OpenGL 4+ API.

Most of the Synthclipse concepts were invented by Mikael Hvidtfeldt Christensen and first implemented in his own creation: Fragmentarium but Synthclipse tries to extend these ideas a bit more - to the JavaScript scripts (JSX) and to all types of OpenGL shaders. Synthclipse also adds its own unique features like music playback and visualization, key frame animations and easy Shadertoy development.

As with Fragmentarium, in Synthclipse shaders tweaking is especially easy: using simple annotations in GLSL code comments uniform variables can be bound to Graphical User Interface elements like sliders, buttons or check boxes.


Synthclipse is based on Eclipse IDE and depends on Eclipse CDT (C/C++ Development Tooling). It pretends that GLSL is just a plain C++ code. The reason why GLSL is interpreted in Synthclipse as C++ is to get a great editor with a lot of functionalities, for free. To name a few: auto-complementation, function and globals list (Code Overview), simple static code analysis, a lot of key shortcuts, configurable syntax coloring, code autoformatting, advanced search/replace, "go to function/header by CTRL + click", etc. It is not a perfect solution, but it works surprisingly well most of the time.

As in Fragmentarium, Synthclipse extends GLSL language by "#include" preprocessor directive. It works exactly as in C/C++ and it allows shaders to be more modular. It is the only GLSL extension, as opposite to Fragmentarium. All other "magic" happens in special comments - called Commands - started by "//!" or "/*!".

You can find out more about Synthclipse features and syntax in the User Guide.



Synthclipse 2.1.1 released.
Changelog. Downloads.


Synthclipse 2.1.0 released.
Changelog. Downloads.


Synthclipse 2.0.2 released.
Changelog. Downloads.


Synthclipse 2.0.1 released.
Changelog. Downloads.


Synthclipse 2.0.0 released. Special thanks to Mario Lavin for the support.
Changelog. Downloads.