Noise Shaders

An asset by curly-brace
The page banner background of a mountain and forest
Noise Shaders hero image

Quick Information

0 ratings
Noise Shaders icon image
curly-brace
Noise Shaders

Can be used as generic noise generator using this technique:https://godotengine.org/asset-library/asset/78Consists of:worley 2dworley with 2x2 window instead of 3x3worley 3dworley 3d with 2x2x2 window instead of 3x3x3perlin 2dperlin 3dperlin 4dsimplex 2dsimplex 3dsimplex 3d with analytic derivative gradient outputsimplex 4dand last is 'psrdnoise' monster with 4:2-D non-tiling simplex noise with rotating gradients, without the analytical derivative2-D non-tiling simplex noise with rotating gradients and analytical derivative2-D tiling simplex noise with rotating gradients, without the analytical derivative2-D tiling simplex noise with rotating gradients and analytical derivativeAnalytical derivatives return vec3 with first element is a vector of the noise value. And 2nd and 3rd are x and y partial derivatives.You can test any of the shaders by creating a Sprite node, creating new ImageTexture for it (size like 256x256 would be fine), creating new shader material for it and loading desired shader to it. (try simplex3d.tres ^_^)

Supported Engine Version
3.0
Version String
1.0
License Version
MIT
Support Level
community
Modified Date
7 years ago
Git URL
Issue URL

Different noise shaders For Godot Engine 3.0

A port of https://github.com/ashima/webgl-noise

You can use those noises in your gdscripts using the technique shown here: https://github.com/curly-brace/Godot-Simplex

Consists of:

  • worley 2d
  • worley with 2x2 window instead of 3x3
  • worley 3d
  • worley 3d with 2x2x2 window instead of 3x3x3
  • perlin 2d
  • perlin 3d
  • perlin 4d
  • simplex 2d
  • simplex 3d
  • simplex 3d with analytic derivative gradient output
  • simplex 4d
  • and last is 'psrdnoise' monster with 4:
    • 2-D non-tiling simplex noise with rotating gradients, without the analytical derivative
    • 2-D non-tiling simplex noise with rotating gradients and analytical derivative
    • 2-D tiling simplex noise with rotating gradients, without the analytical derivative
    • 2-D tiling simplex noise with rotating gradients and analytical derivative

Analytical derivatives return vec3 with first element is a vector of the noise value. And 2nd and 3rd are x and y partial derivatives.

You can test any of the shaders by creating a Sprite node, creating new ImageTexture for it (size like 256x256 would be fine), creating new shader material for it and loading desired shader to it.

All shaders have offset and scale parameters. Set scale to something like 8 to see the noise better. Worley shaders have jitter parameter that with 0 value will output perfect squares.

More info on original repo: https://github.com/ashima/webgl-noise/wiki

Drawbacks:

godot does not support (currently) in shaders: constants, inline functions, defines, for loops, better swizzling. So code is not as efficient as it could be.

Can be used as generic noise generator using this technique:
https://godotengine.org/asset-library/asset/78

Consists of:

worley 2d
worley with 2x2 window instead of 3x3
worley 3d
worley 3d with 2x2x2 window instead of 3x3x3
perlin 2d
perlin 3d
perlin 4d
simplex 2d
simplex 3d
simplex 3d with analytic derivative gradient output
simplex 4d
and last is 'psrdnoise' monster with 4:
2-D non-tiling simplex noise with rotating gradients, without the analytical derivative
2-D non-tiling simplex noise with rotating gradients and analytical derivative
2-D tiling simplex noise with rotating gradients, without the analytical derivative
2-D tiling simplex noise with rotating gradients and analytical derivative
Analytical derivatives return vec3 with first element is a vector of the noise value. And 2nd and 3rd are x and y partial derivatives.

You can test any of the shaders by creating a Sprite node, creating new ImageTexture for it (size like 256x256 would be fine), creating new shader material for it and loading desired shader to it. (try simplex3d.tres ^_^)

Reviews

0 ratings

Your Rating

Headline must be at least 3 characters but not more than 50
Review must be at least 5 characters but not more than 500
Please sign in to add a review

Quick Information

0 ratings
Noise Shaders icon image
curly-brace
Noise Shaders

Can be used as generic noise generator using this technique:https://godotengine.org/asset-library/asset/78Consists of:worley 2dworley with 2x2 window instead of 3x3worley 3dworley 3d with 2x2x2 window instead of 3x3x3perlin 2dperlin 3dperlin 4dsimplex 2dsimplex 3dsimplex 3d with analytic derivative gradient outputsimplex 4dand last is 'psrdnoise' monster with 4:2-D non-tiling simplex noise with rotating gradients, without the analytical derivative2-D non-tiling simplex noise with rotating gradients and analytical derivative2-D tiling simplex noise with rotating gradients, without the analytical derivative2-D tiling simplex noise with rotating gradients and analytical derivativeAnalytical derivatives return vec3 with first element is a vector of the noise value. And 2nd and 3rd are x and y partial derivatives.You can test any of the shaders by creating a Sprite node, creating new ImageTexture for it (size like 256x256 would be fine), creating new shader material for it and loading desired shader to it. (try simplex3d.tres ^_^)

Supported Engine Version
3.0
Version String
1.0
License Version
MIT
Support Level
community
Modified Date
7 years ago
Git URL
Issue URL

Open Source

Released under the AGPLv3 license

Plug and Play

Browse assets directly from Godot

Community Driven

Created by developers for developers