GLSL language integration
VSIX Project that provides GLSL language integration. Includes syntax highlighting, code completion (OpenGL 4.6 + identifiers in shader file), error tagging with squiggles and in error list (error list support is very alpha). As a default for error tagging a separate OpenGL thread is used for shader compiling on the primary graphics card. In the options menu you can select an external compiler executable to use for shader compilation.
See the change log for changes and road map.
Controlling the extension with comments
When developing shaders, it is common to split one shader into multiple files, reuse files, and generally generate some parts of code in the application in order to make things easier.
Unfortunately, this does not go well with extensions like this that compile these files without any knowledge about what happens on the side of the application. One way around this are special comments
Everything in the line in front of the
In the option menu you can set a file path to an external compiler. If an existing path is given compilations will be executed by starting the given executable. The shader code (including include code and all substitutions) will be written into a temporary file named "shader.vert|frag|comp|..." (extensions follow glslangValidator standard) in the current users temp path. This temporary shader file is then used as the first argument to the external compiler executable.
Errors and questions
Please us the GitHub Issue function to report errors or ask questions.
Check out the contribution guidelines if you want to contribute to this project.
For cloning and building this project yourself, make sure to install the Extensibility Tools 2015 extension for Visual Studio which enables some features used by this project.