saw the video last night and I barely could sleep, because I was thinking about the potential
c64cosminMaterial Layers is a Godot plugin for creating layered materials. It lets you create layered materials using reusable assets, instead of having to write them by hand. This allows for a more manageable layering system with simplified complexity, control, and flexibility.
Reviews for Material Layers
saw the video last night and I barely could sleep, because I was thinking about the potential
c64cosminFoyezes's material layers Godot plugin is fantastic and a much desired tool when it comes to PBR and non PBR materials alike; the interface is clean, detailed and clear, and, most importantly for me, has thorough and helpful documentation
k0nt0rtaSplendid plugin, definitely a needed feature for most Godot users
Anonymous (Gumroad)Traditional material blending means cramming every texture, normal map, height map and mask into one increasingly unmanageable shader. Every change means carefully editing shared code. Material Layers flips that around. You create small and reusable materials and masks, combine them in a node graph, and hit generate.
Material Layers uses a simple but effective system that makes it easy to build complex materials in minutes.
Build your layer shaders, then drag them straight into the graph.
Wire Surfaces, Masks, Overlays, and Data together and compose your layered material any way you like.
The LayerStack combines everything into the final material. Regenerate any time you iterate inside the graph.
You write shaders exactly like any other gdshader - the difference is writing to LAYER_OUT_ALBEDO instead of ALBEDO. Same language, same tools, radically simpler compositing.
Material Layers features an easy to use interface with a clear resource system.
[*] Node graph - layer materials using a node graph system, no mega-shaders needed.
[*] Reusable - write a rock material once, reuse it anywhere.
[*] Non-destructive - tweak layers, masks, and parameters without ever touching a final shader.
[*] Fast iteration - swap a texture, tune a blend, hit generate.
[*] Instantiable - one source of truth, infinite parameterized instances.
[*] LOD-ready - generate LOD variants by disabling layers, no shader code involved.
[*] Large-scale texturing - perfect for terrain texturing, large-scale mesh texturing, and procedural variation.
[*] Standalone materials - every layer works standalone as a regular material.
Material Layers separates who makes materials from who uses them, so you don't need a shader programmer on the scene every time an artist tweaks a texture.
Write reusable Surface, Mask, Overlay and Data shaders once, in plain gdshader. This is the only place shader code lives - a handful of small, focused files instead of one ever-growing mega-shader.
Drag and drop materials into a LayerGraph, connect them, drop the graph into a LayerStack, and hit Generate. Every complex behavior - height blending, vertex color masks, UV manipulation - ships inside the LayerStack as inspector parameters. When a look is off, artists cycle layers and tune parameters. No need to touch the code.
Using Material Layers by itself won't increase or decrease performance by default. It's all dependent on the complexity of the layer shaders. The shaders get merged into a mega-shader in LayerStack, so the complexity of the individual materials contributes directly to the final cost, same as if you'd written it by hand.
Material Layers comes in two editions. A paid Pro version, and a free Legacy version. Both require Godot 4.0+.

The completed system with node-graph workflow and improved workflow. Get it on Gumroad or Itch.

Feature-frozen, array-based layering with SurfaceMaterial and MaskMaterial. A great way to try material layering first. Available for free on GitHub.
©2026 Foyezes