Synthclipse is based on Eclipse IDE and depends on Eclipse CDT (C/C++ Development Tooling). It pretends that GLSL is just plain C++ code.
It achieves this by inclusion, in all shaders, specially prepared header:
#ifdef SYNTHCLIPSE #include <synthclipse> #endif
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" preprocesor directive. It works excacly as in C/C++ and it allows to make shaders more modular. It is only GLSL extension, as oposite to Fragmentarium. All other "magic" happens in special comments - called Commands - starting by "//!" or "/*!".
You can find out more about Synthclipse features and syntax in the User Guide.
Synthclipse 0.9.0 is out. Scripting and other types of shaders are finally supported.
I've jumped from version 0.2 to 0.9 and changed status from alpha to beta since Synthclipse is almost ready for version 1.0. I've decided to not implement new features before releasing version 1.0. Until it happens I'm just going to fix bugs and maybe add some small improvements.
Changelog. Downloads. Docs. Screenshots.
Synthclipse 0.1.1 is ready for downloads.