shaders — independent software & tools
-
Juice Shaders Lite
Three free, drop-in 2D shaders for Godot 4: hit_flash, outline, and dissolve. Plain canvas_item shaders, documented, with copy-paste GDScript to animate them. This is the free "lite" version. The full Juice Shaders pack adds 9 more effects (CRT, shockwave, water, palette remap, dither, shine sweep, pixelate, wind sway, grayscale fade): https://janeduardo19.itch.io/juice-shaders-12-game-feel-shaders-for-godot-4 These shaders come from my own game, Sinless Land, a folklore deckbuilder made in Godot 4: https://janeduardo19.itch.io/sinless-land
-
Terrain Shader
Split texture, stochastic sampling, triplanar projection shader for Godot4
-
Compute Shader Helper
This tool simplifies the process of running compute shaders in Godot. It wraps up RenderingDevice methods in a way that preserves basic functionality while taking up much less space. Currently supports only storage buffers. Version 1.1 update: - Added _free_rid() function.
-
Terrain Layered Shader
This addon contains two shaders meant to be used as a material for terrain objects. The shaders support color, normal, roughness and metallic maps. They also provide a tile scrambling feature that gets rid of obvious repeated patterns. You can also stack several different terrain shader on top of each other and use masks to blend between them.
-
Shader-Lib
Visual shader node library for Godot engine. Supports all 4.2.0+ versions! Adds various extra nodes to use in built-in visual shader editor. This is incompatible for Godot 4.1, use "Shader-Lib for Godot 4.1" instead.
-
Compute Shader Plus
This plugin adds ComputeHelper and Uniform classes that make using compute shaders easier.
-
PSX Style Camera Shader - Distance Fog, Dithering, Color Limiter, Noise
This is a Camera shader for Godot 4.3 to add distance fog with optional noise, color limiting, and dither. There are a lot of fragmented and partial solutions out there and I wanted to combine various techniques to make an easy to use quad-based shader. Each setting can be enabled/disabled and customized. ** Updated for Godot 4.3. A 4.2 compatible version can be found within the repository's releases
-
Ultimate Retro Shader Collection
WARNING: if you're upgrading from any version prior to 1.4.0, you MUST follow the steps outlined in the link below. If you don't, your materials WILL break, and you'll have to fix them all MANUALLY! You only need to follow these steps once -- subsequent versions will not be reorganized again. https://github.com/Zorochase/ultimate-retro-shader-collection?tab=readme-ov-file#upgrading-from-v13--to-v14 -- -- -- Ultimate Retro Shader Collection (URSC) brings PlayStation, Sega Saturn or Nintendo 64 aesthetics to Godot 4. Features: - Vertex snapping and affine texture mapping (as seen on PlayStation and Saturn) - 3-point texture filtering (as seen on Nintendo 64) - Distance-based, per-vertex texture LOD and fog - Metallic and shiny shaders - 3D sprite shaders (shaded/unshaded, single/double-sided) - Scrolling sky shader (think Mario 64) - Screen-reading dithering and fade shaders - Create custom spatial shaders using macros - Compatible with all rendering backends Check out the collection's README on GitHub for documentation and a guide on getting set up. TLDR -- run the "setup.gd" editor script included with the collection to add the necessary global shader uniforms to your project settings. https://github.com/Zorochase/ultimate-retro-shader-collection?tab=readme-ov-file#readme
-
Hypercasual Gradient Shader
A shader meant for adding gradients to unlit 3D meshes. Contains examples, and documented code.
-
VisualShader IdMap
# VisualShader-IdMap VisualShader IdMap masking Node Includes: IDMap Sampler : Idmap by Sampler2D IDMap Texture : Idmap by Texture2D Inputs: * IdMap Texture : IdMap Image Texture * Colorkey : Color to extract mask from IdMap Texture * Tolerance : Color values tolerance (Default = 0.05) Output: * Mask : Float value of the resultant mask Check out CiaNCI Chanel on YouTube for more: https://www.youtube.com/@CiaNCIStudio
-
Noise Shader
This addon adds 4 CompositorEffects that can be added to cameras. These shaders take the color output of the camera and uses it to adjust their images. This creates an image that can only be seen while its playing. Cycling Noise: This effect cycles through different shades of white and black to create a cycling image. The brighter the input pixel, the faster the shader updates. Sliding Noise This effect moves pixels every frame to create a sliding effect. All moving pixels move at the same exact speed. Variable Sliding Noise Very similar to the other sliding noise effect, but brighter pixels move faster. Darker pixels will slide at a lower frame rate, which conveys depth. Colorful Noise Equivalent to the cycling noise, but can cycle color too. The red channel controls pixel value, and the green channel controls color.
-
Eye Dropper - Palette swapper shader
Eye Dropper is a shader (GDShader) that helps with quick color palette swapping easily customizable through shader parameters. This shader is a canvas_item type of shader that was meant, at least initially, to be used with CanvasItems nodes in Godot. Contributions are welcome to make a 3D version (To contribute, visit the GitHub repository, available in this page). With this shader, you can configure your palettes through textures or through color arrays, or even use both options, if it's more convenient to you. This project is fully documented so that you can understand what each function or property does, just check it out in the eye_dropper.gdshader file! To be able to use the palette arrays with various colors, make sure to tweak the max_palette_array_size constant in the shader file so that it attends your project's needs. By default it is set to 8, which means that only 8 colors are allowed at maximum using the arrays, but, as mentioned, that's easily tweakable. I hope this shader helps you with your project! :D *This project was tested with Godot 4.3.
-
Visual Shader Normal Combine Node
Combine two normal maps using this node. Includes UDN, Whiteout, RNM and Unity blending methods.
-
Visual Shader UV Manipulation Node
This is a visual shader addon that adds the UVManipulation node to the visual shader editor.
-
Visual Shader Height Blend Node
This is a visual shader addon that adds the HeightBlend node to the visual shader editor.
-
Visual Shader Derive Z Node
Get the Z channel of a normal map from X & Y channels.
-
Visual Shader Vector Transform Node
Transforms a vector between different coordinate spaces.
-
Visual Shader Normal Strength Node
This node lets you control normal map strength.
-
Visual Shader Parallax Mapping Node
This node outputs UV based on height map for Simple Offset Mapping & Parallax Occlusion Mapping.
-
Visual Shader Pixel Normal World Node
This node outputs normal map direction in world space based on the input.
-
Visual Shader UV Nodes Pack
Necessary UV Nodes For Godot 4. Includes UVManipulation, UVPanner, UVTwirl, UVRotate, UVSpherize.
-
[GSL] Godot Shader Linker
Shader graph assembler for Godot 4.2+. Import a Blender node graph and get an equivalent Godot shader. Installation Copy the addons/godot_shader_linker_(gsl) directory into your Godot project. In Project → Plugins enable “Godot Shader Linker (GSL)”. A Shader Linker tab will appear in the editor Bottom Panel. Setting up the Blender add‑on Method 1 — install from zip (recommended) Blender → Edit → Preferences → Add-ons → Install… Select gls_blender_exp.zip. Enable GSL Exporter in the add‑ons list. Switch to Godot — the Shader Linker panel will show Status: Connected to Blender. Method 2 — Scripts Directories (convenient for development) Blender → Edit → Preferences → File Paths → Scripts Directories → Add Point it to .../addons/godot_shader_linker_(gsl)/Blender (or directly to .../Blender/addons, where gls_blender_exp lives). Restart Blender and enable GSL Exporter (Add-ons). Switch to Godot — the Shader Linker panel will show Status: Connected to Blender. Supported Nodes - Texture Coordinate - Mapping - Image Texture (projections: Flat, Box, Sphere, Tube; interpolations: Linear, Closest; extension: Repeat, Extend) - Noise Texture - Fractal Noise - Color Ramp - Combine Color - Separate Color - Combine XYZ - Separate XYZ - Math (subset of modes: Add, Subtract, Multiply, Divide, Power, Modulo, Floor, Ceil, Truncate, PingPong, Atan2, Compare, etc.) - Vector Math (subset: Add, Subtract, Multiply, Divide, Dot Product, Cross Product, Normalize, Length, Distance, Scale, Project, Reflect, Refract, Wrap, Snap) - Normal Map (Tangent Space) - Bump - Principled BSDF (base set, simplified coat) - Material Output