# freyaholmer/shaderforge

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/freyaholmer-shaderforge).**

2,759 stars · 536 forks · C#

## Links

- GitHub: https://github.com/FreyaHolmer/ShaderForge
- awesome-repositories: https://awesome-repositories.com/repository/freyaholmer-shaderforge.md

## Description

ShaderForge is a web-based GPU tool and visual GLSL shader editor. It serves as a node-based shader designer that allows users to construct programs for the graphics processor by connecting logic blocks in a directed acyclic graph rather than writing manual code.

The tool functions as a technical art workflow bridge for creating game assets and surface materials. It provides a browser-based environment for real-time authoring, featuring instant GLSL compilation and live hot-reloading of GPU programs.

The system converts visual graph connections into GLSL source code using abstract syntax tree generation and schema-driven node mapping. It further supports real-time adjustment of graphical effects through buffer-based data binding.

## Tags

### Graphics & Multimedia

- [Node-Based Shader Editors](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/materials-shading/node-based-shader-editors.md) — Provides a node-based shader editor for designing graphical effects and materials without writing manual code.
- [GPU Shader Designers](https://awesome-repositories.com/f/graphics-multimedia/gpu-shader-designers.md) — Serves as a dedicated tool for constructing GPU programs that control rendering and visual output.
- [Hot Reloading](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/shaders/shader-cross-compilation-pipelines/runtime-shader-compilers/hot-reloading.md) — Supports live hot-reloading of GPU programs to update shader effects in real-time without restarting.
- [Browser-Based Shader Compilation](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/shaders/shader-cross-compilation-pipelines/runtime-shader-compilers/shader-compilation-orchestrations/browser-based-shader-compilation.md) — Enables instant visual feedback by compiling GLSL shader strings directly within the browser.
- [Visual Effect Shaders](https://awesome-repositories.com/f/graphics-multimedia/media-production-suites/visual-effects/visual-effect-shaders.md) — Allows users to build custom visual effect shaders using a node-based interface. ([source](https://github.com/FreyaHolmer/ShaderForge/blob/master/README.md))
- [Real-Time Graphics Development](https://awesome-repositories.com/f/graphics-multimedia/real-time-graphics-development.md) — Provides a high-performance environment for creating interactive visual effects with instant iteration.
- [Node Graph Engines](https://awesome-repositories.com/f/graphics-multimedia/visualization-mapping/node-graph-engines.md) — Utilizes a node graph engine to manage the logical flow of shader operations via a directed acyclic graph.
- [Real-Time Shader Parameters](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/shaders/material-and-shader-configuration/real-time-shader-parameters.md) — Provides a system for real-time shader parameters, linking visual inputs to GPU uniform variables.

### Development Tools & Productivity

- [Web-Based GPU Authoring Tools](https://awesome-repositories.com/f/development-tools-productivity/web-based-gpu-authoring-tools.md) — Offers a browser-based environment for real-time shader authoring with instant compilation and hot-reloading.
- [Abstract Syntax Tree Generators](https://awesome-repositories.com/f/development-tools-productivity/project-scaffolding-config-code-generation/code-generation/abstract-syntax-tree-generators.md) — Implements an abstract syntax tree generator to translate visual graph connections into structured data for GLSL conversion.
- [AST-to-Source Generators](https://awesome-repositories.com/f/development-tools-productivity/project-scaffolding-config-code-generation/code-generation/recursive-generators/ast-to-source-generators.md) — Uses AST-to-source generators to emit final GLSL code from the visual graph's intermediate representation.

### Part of an Awesome List

- [Technical Art and Rigging](https://awesome-repositories.com/f/awesome-lists/devtools/technical-art-and-rigging.md) — Bridges the gap between artistic vision and technical implementation by visually mapping shader logic.

### Game Development

- [Asset Pipelines](https://awesome-repositories.com/f/game-development/tooling-asset-pipeline/asset-pipelines.md) — Facilitates the creation of custom materials and surface properties for integration into game engine asset pipelines.

### Software Engineering & Architecture

- [Function Mapping Schemas](https://awesome-repositories.com/f/software-engineering-architecture/node-data-mapping/function-mapping-schemas.md) — Maps visual node types to specific GLSL functions and variables using a predefined schema of mathematical operations.
