mirror of
https://github.com/Strum355/mcshader-lsp.git
synced 2025-07-13 14:25:25 +00:00
A language server and Visual Studio Code extension for Minecraft GLSL Shaders
glsllanguage-server-protocolminecraftminecraft-glsl-shadersopenglrust-language-servervisual-studio-code
.vscode | ||
client | ||
server | ||
.drone.yml | ||
.gitignore | ||
BUILD | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
LICENSE | ||
logo.png | ||
package-lock.json | ||
package.json | ||
README.md | ||
shaders.py | ||
tsconfig.json | ||
WORKSPACE |
Minecraft GLSL Shaders
vscode-mc-shader
VSCode-mc-shader is a Visual Studio Code extension for developing Minecraft GLSL Shaders for Optifine. It currently provides linting and syntax highlighting (by stef-levesque/vscode-shader dependency).

Features
- Linting
- Syntax highlighting (by extension dependency)
- Support for
#include
directives - Auto-complete prompts (incomplete and rough)
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.23.0 or higher - minimum requirement untested).
- The Shader languages support for VS Code extension. This should automatically install when you install this extension.
- That the shader(s) you're editing are in the
shaderpacks
folder in.minecraft
. - That you've only one shader folder open. Multiple workspaces aren't currently supported.
- The OpenGL / OpenGL ES Reference Compiler. The extension will give you an option to download it and update your settings automatically.
Extension Settings
Option Name | Data Type | Description | Default Value |
---|---|---|---|
mcglsl.glslangValidatorPath |
string | The path to the glslangValidator executable. | In your PATH . |
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