A language server and Visual Studio Code extension for Minecraft GLSL Shaders
Find a file
Noah Santschi-Cooney c28d23a971 Added regexes from old linter
Added LinterState to keep track of current lint run
Added the adding of include directive and finding top levels
2019-10-06 18:40:17 +01:00
.vscode Updated everything to work with latest vscode 2019-08-10 23:38:21 +01:00
client Created GLSLangProvider class with API for linting and downloading glslangValidator 2019-08-11 21:23:49 +01:00
server Added regexes from old linter 2019-10-06 18:40:17 +01:00
.codeclimate.yml codeclimate config 2018-06-21 13:19:46 +01:00
.drone.yml Testing on 7.9, what vscode actually uses 2018-06-24 02:10:11 +01:00
.gitignore Added logo for when published 2018-08-04 21:36:46 +01:00
CHANGELOG.md v0.8.5 2018-08-25 23:55:19 +01:00
CONTRIBUTING.md Some exported functions for later testing 2018-07-12 18:42:07 +01:00
LICENSE Initial commit 2018-05-12 15:27:37 +01:00
logo.png Hopefully the last time i work the logo : ) 2018-07-04 01:27:43 +01:00
package-lock.json Moved to better logging lib 2019-10-06 11:25:53 +01:00
package.json Added logLevel setting 2019-10-06 18:20:35 +01:00
README.md Updated everything to work with latest vscode 2019-08-10 23:38:21 +01:00
setup.py Added download prompt to download glslangValdiator 2018-07-16 17:49:55 +01:00
shaders.py Some basic completion provider. Need to go through all the options and tweak them 2018-06-04 20:25:57 +01:00
tsconfig.json Updated everything to work with latest vscode 2019-08-10 23:38:21 +01:00
tslint.json Tiny rearrangment and added some logging to begin with 2018-08-04 01:46:20 +01:00

Minecraft GLSL Shaders

vscode-mc-shader

Marketplace Version Installs license Issues Maintainability

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.
mcglsl.shaderpacksPath string The path to the shaderpacks folder in your Minecraft installation folder. None

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