
Publisher
arkology11
ShaderV - 2D Visual Shader Node Library (Godot 3)
Adds many premade effects (such as noise, blur, emboss, zoom, custom shapes, etc.) to build-in VisualShader editor. Fully compatible with GLES2 and canvas (2D) fragment shaders. You can find basic usage examples in the "addons/shaderV/examples" folder. Copy the contents of "addons/shaderV" into the same folder in your project. Custom visual shader nodes work the same way as standard visual shader nodes.
👉 3.x
ShaderV - VisualShader plugin for Godot Engine 4.x
Adds many premade 2D effects (such as noises, blur, emboss, zoom, custom shapes, etc.) to build-in VisualShader editor. You can find basic usage examples in the addons/shaderV/examples folder. Note that plugin can work freely without examples folder, so this folder can be deleted. Copy the contents of addons/shaderV into the same folder in your project. No activation needed. Custom visual shader nodes work the same way as standart visual shader nodes.
List of provided nodes:
Color changing nodes (rgba folder):
Blur nodes:
BlurBasic - Basic 8-directional blur with 9 samples BlurCustom - Custom 8-directional blur with ([amount]*2+1)^2 samples ZoomBlur
Shapes generation:
CheckerboardShape - Creates checkerboard pattern CircleShape - Circle creation with adjusted position, scale, inner/outer radius, hardness and color CircleShape2 - Circle creation with adjusted position, scale, radius inner/outer width, and color RegularPolygonShape - Regular N-gon with 3+ sides SpiralShape - Spiral creation with adjusted position, size, lines amount, softness, speed and color GridShape - Creates 2D grid ScanLinesSharpShape - Sharp moving scanlines RandomStripesShape - Random horizontal lines creation
Glow:
InnerGlow - Adds inner glow to color OuterGlow - Adds outer glow to color InnerGlowEmpty - Same as InnerGlow but without original texture (only contours) OuterGlowEmpty - Same as OuterGlow but without original texture (only contours) GlowEmpty - Combination of InnerGlowEmpty and OuterGlowEmpty
Noise:
Fractal noise:
FractalGenericNoise2D - Fractal GenericNoise using hash random function
FractalPerlinNoise2D/3D/4D - Fractal 2D/3D/4D Perlin Noise
FractalSimplexNoise2D/3D/4D - Fractal 2D/3D/4D Simplex Noise
FractalWorleyNoise2D/3D - Fractal 2D/3D Worley (Voronoi) Noise
GenericNoise2D - GenericNoise using hash random function
PerlinNoise2D - Classic 2d perlin noise with ability to set period
PerlinNoise3D - Classic 3d perlin noise
PerlinPeriodicNoise3D - Classic 3d perlin noise with ability to set period
PerlinNoise4D - Classic 4d perlin noise
SimplexNoise2D/3D/4D - 2D/3D/4D simplex noise
WorleyNoise2D/2x2/2x2x2/3D - 2D/2x2/2x2x2/3D worley noise
BCSAdjustment - Full analog of BCS adjustment of environment in Godot BlackAndWhite - Turns color to black and white BlendAwithB - Blends colors basing on fade Bloom ChromaticAberration - Basic Chromatic Aberration with red and blue channels offset ClampAlphaBorder - Clamp alpha to border vec4(0, 0, 1, 1) UV ColorCorrectionAdjustment - Full analog of color correction adjustment of environment in Godot Emboss - Emboss filter FireFX - 3-step fire based on perling noise Gradient4Corners - Generates gradient based on corners colors GradientMapping - Remaps colors based on average color value using [gradient] GrayscalePlus - Improved grayscale with gray factor Hue - Outputs an RGB color given a HUE InverseColor - Inverse color basing on intensity MaskAlpha - Color masking based on mask alpha NormalFromHeightmap - Create normal map from heightmap texture. You should provide actual size of heightmap (in pixels). Posterize - Rounds values based on the value coming through [steps] ShiftHSV - Changes hue, saturation and value of input color. ShineFX - Adds shine effect in form of line SobelEdge - Sobel edge filter. Returns detected edges as scalar. TintRGBA - Tints RGBA with tint color (same as modulate property in editor) Tonemap TurnCGA4Palette - Swaps color to CGA 4-color palette TurnGameBoyPalette - Swaps color to GameBoy palette
UV changing nodes (uv folder):
Animated:
DistortionUVAnimated - Animated wave-like UV distortion
DoodleUV - Doodle UV effect
RotateUVAnimated - Animated UV rotation by angle in radians relative to pivot point
SwirlUV - Swirl UV effect
TilingAndOffsetUVAnimated - Animated UV tiling with given [offset] speed
DistortionUV - Wave-like UV distortion FlipUV - Flip UV horizontal and/or vertical LensDistortionUV - Lens distortion effect. PixelateUV - Pixelate UV by size factor RotateUV - Rotate UV by angle in radians relative to pivot vector ScaleUV - Scale UV relative to pivot point SphericalUV - Makes UV look like a sphere. Can be used to make 2d planets TileUV - Tile UV can be used to get UV position of tile within a tilemap TilingAndOffsetUV - Tiles UV with given offset TransformUV - Performs offset, scale and rotation of UV with custom pivots. Rotation is set in radians. TwirlUV - Twirl UV by value relative to pivot point
Tools nodes (tools folder):
Random:
HashRandom1d - Hash func with scalar input and scalar output
HashRandom2d - Hash func with vector input and scalar output
HashRandom2dVec - Hash func with vector input and vector output
RandomFloat - Returns random float based on input value. UV is default input value.
RandomFloatImproved - Improved version of classic random function. Classic random can produce artifacts. This one - doesn't.
RandomGoldRatio - Random float based on golden ratio
RandomFloat4D - Returns random float value based on 4D input vector
Coordinates transformation:
CartesianToPolar - Cartesian (x, y) -> Polar (r, theta). By default (x, y) is UV
CartesianToSpherical - Cartesian (x, y, z) -> Spherical (r, theta, phi). By default (x, y, z) is UV
PolarToCartesian - Polar (r, theta) -> Cartesian (x, y)
SphericalToCartesian - Spherical (r, theta, phi) -> Cartesian (x, y, z)
ScaledTIME - Returns [scale] * TIME Relay - Outputs its input, may be useful for organizing node connections. Works with booleans, vectors and scalars. Also can be used as preview node Remap - Remaps input value from ( [inMin], [inMax] ) range to ( [outMin], [outMax] ). UV is default input value. SinTIME - Returns [amplitude] * sin([speed] * TIME) vec2Compose - Makes 2d vector from length and angle (in radians)