Skip to content

A Visual Studio Code extension for linting Minecraft GLSL Shaders

License

Notifications You must be signed in to change notification settings

micahn/vscode-mc-shader

 
 

Repository files navigation

Minecraft GLSL Shaders

vscode-mc-shader

Marketplace Version Installs license Issues Maintainability Waffle.io - Columns and their card count

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

About

A Visual Studio Code extension for linting Minecraft GLSL Shaders

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • TypeScript 94.3%
  • Python 5.7%