mirror of
https://github.com/Strum355/mcshader-lsp.git
synced 2025-08-04 00:49:17 +00:00
A language server and Visual Studio Code extension for Minecraft GLSL Shaders
glsllanguage-server-protocolminecraftminecraft-glsl-shadersopenglrust-language-servervisual-studio-code
.github/workflows | ||
.vscode | ||
client | ||
server | ||
.gitignore | ||
.vscodeignore | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
LICENSE | ||
logo.png | ||
package-lock.json | ||
package.json | ||
README.md | ||
shaders.py | ||
tsconfig.json |
Minecraft GLSL Shaders Language Server
mcshader-lsp
mcshader-lsp is a Language Server and collection of editor extensions for developing Minecraft GLSL Shaders for Optifine. It currently provides linting and syntax highlighting.
Currently supported editors:

Features
- Linting
- Syntax highlighting (by extension dependency)
- Support for
#include
directives
Installation (assumes installing from VSCode extension tab)
- After reloading, open a shaderpack's folder.
- You should be prompted to set your shaderpacks folder e.g.
"mcglsl.shaderpacksPath": "C:/Users/Noah/AppData/Roaming/.minecraft/shaderpacks"
- You should then be prompted saying
glslangValidator
isn't installed. Hit the download button and wait for a notification saying that it's been installed. - You should now be good to go!
Requirements
- Visual Studio Code (v1.43.0 or higher - minimum requirement untested).
- The Shader languages support for VS Code extension. This should automatically install when you install this extension.
- That you've only one shader folder open. Multiple workspaces aren't currently supported.
Contributing
Please see CONTRIBUTING.md.
Planned
- Multi-workspaces (currently only one is supported and using multiple is very undefined behaviour)
- Warnings for unused uniforms/varyings
- Some cool
DRAWBUFFERS
stuff
Got a feature request? Chuck it into an Issue!
Known Issues
Check the issues on Github here.
Release Notes
Check CHANGELOG.md.
License
This code is released under the MIT License. Copyright (c) 2018 Noah Santschi-Cooney