OpenSimplexNoise
Inherits: Resource < Reference < Object
Noise generator based on Open Simplex.
Description
This resource allows you to configure and sample a fractal noise space. Here is a brief usage example that configures an OpenSimplexNoise and gets samples at various positions and dimensions:
var noise = OpenSimplexNoise.new() # Configure noise.seed = randi() noise.octaves = 4 noise.period = 20.0 noise.persistence = 0.8 # Sample print("Values:") print(noise.get_noise_2d(1.0, 1.0)) print(noise.get_noise_3d(0.5, 3.0, 15.0)) print(noise.get_noise_4d(0.5, 1.9, 4.7, 0.0))
Properties
float | lacunarity | 2.0 |
int | octaves | 3 |
float | period | 64.0 |
float | persistence | 0.5 |
int | seed | 0 |
Methods
Image | get_image ( int width, int height ) |
float | get_noise_1d ( float x ) |
float | get_noise_2d ( float x, float y ) |
float | get_noise_2dv ( Vector2 pos ) |
float | get_noise_3d ( float x, float y, float z ) |
float | get_noise_3dv ( Vector3 pos ) |
float | get_noise_4d ( float x, float y, float z, float w ) |
Image | get_seamless_image ( int size ) |
Property Descriptions
float lacunarity
Default | 2.0 |
Setter | set_lacunarity(value) |
Getter | get_lacunarity() |
Difference in period between octaves.
int octaves
Default | 3 |
Setter | set_octaves(value) |
Getter | get_octaves() |
Number of OpenSimplex noise layers that are sampled to get the fractal noise. Higher values result in more detailed noise but take more time to generate.
Note: The maximum allowed value is 9.
float period
Default | 64.0 |
Setter | set_period(value) |
Getter | get_period() |
Period of the base octave. A lower period results in a higher-frequency noise (more value changes across the same distance).
float persistence
Default | 0.5 |
Setter | set_persistence(value) |
Getter | get_persistence() |
Contribution factor of the different octaves. A persistence
value of 1 means all the octaves have the same contribution, a value of 0.5 means each octave contributes half as much as the previous one.
int seed
Default | 0 |
Setter | set_seed(value) |
Getter | get_seed() |
Seed used to generate random values, different seeds will generate different noise maps.
Method Descriptions
Image get_image ( int width, int height )
Generate a noise image with the requested width
and height
, based on the current noise parameters.
float get_noise_1d ( float x )
Returns the 1D noise value [-1,1]
at the given x-coordinate.
Note: This method actually returns the 2D noise value [-1,1]
with fixed y-coordinate value 0.0.
float get_noise_2d ( float x, float y )
Returns the 2D noise value [-1,1]
at the given position.
float get_noise_2dv ( Vector2 pos )
Returns the 2D noise value [-1,1]
at the given position.
float get_noise_3d ( float x, float y, float z )
Returns the 3D noise value [-1,1]
at the given position.
float get_noise_3dv ( Vector3 pos )
Returns the 3D noise value [-1,1]
at the given position.
float get_noise_4d ( float x, float y, float z, float w )
Returns the 4D noise value [-1,1]
at the given position.
Image get_seamless_image ( int size )
Generate a tileable noise image, based on the current noise parameters. Generated seamless images are always square (size
× size
).
© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_opensimplexnoise.html