UnityShaderParser

April 29, 2026 ยท View on GitHub

A library for parsing Unity shaders. Consists of a few distinct components:

  • A parser for ShaderLab, Unity's own Shader DSL.
  • A parser for HLSL, the shading language embedded in ShaderLab.
  • A preprocessor for dealing with macros before parsing.
  • A framework for analyzing syntax trees using the visitor pattern, and for making edits to the corresponding source code.

Example usages:

Available as either a single portable C# file, a zip archive, or via nuget.

Acknowledgements