Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
FastNoiseLite¶
Inherits: Noise < Resource < RefCounted < Object
Generates noise using the FastNoiseLite library.
描述¶
This class generates noise using the FastNoiseLite library, which is a collection of several noise algorithms including Cellular, Perlin, Value, and more.
Most generated noise values are in the range of [-1, 1]
, but not always. Some of the cellular noise algorithms return results above 1
.
属性¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Enumerations¶
enum NoiseType:
NoiseType TYPE_VALUE = 5
A lattice of points are assigned random values then interpolated based on neighboring values.
NoiseType TYPE_VALUE_CUBIC = 4
Similar to Value noise, but slower. Has more variance in peaks and valleys.
Cubic noise can be used to avoid certain artifacts when using value noise to create a bumpmap. In general, you should always use this mode if the value noise is being used for a heightmap or bumpmap.
NoiseType TYPE_PERLIN = 3
A lattice of random gradients. Their dot products are interpolated to obtain values in between the lattices.
NoiseType TYPE_CELLULAR = 2
Cellular includes both Worley noise and Voronoi diagrams which creates various regions of the same value.
NoiseType TYPE_SIMPLEX = 0
As opposed to TYPE_PERLIN, gradients exist in a simplex lattice rather than a grid lattice, avoiding directional artifacts.
NoiseType TYPE_SIMPLEX_SMOOTH = 1
Modified, higher quality version of TYPE_SIMPLEX, but slower.
enum FractalType:
FractalType FRACTAL_NONE = 0
No fractal noise.
FractalType FRACTAL_FBM = 1
Method using Fractional Brownian Motion to combine octaves into a fractal.
FractalType FRACTAL_RIDGED = 2
Method of combining octaves into a fractal resulting in a "ridged" look.
FractalType FRACTAL_PING_PONG = 3
Method of combining octaves into a fractal with a ping pong effect.
enum CellularDistanceFunction:
CellularDistanceFunction DISTANCE_EUCLIDEAN = 0
Euclidean distance to the nearest point.
CellularDistanceFunction DISTANCE_EUCLIDEAN_SQUARED = 1
Squared Euclidean distance to the nearest point.
CellularDistanceFunction DISTANCE_MANHATTAN = 2
Manhattan distance (taxicab metric) to the nearest point.
CellularDistanceFunction DISTANCE_HYBRID = 3
Blend of DISTANCE_EUCLIDEAN and DISTANCE_MANHATTAN to give curved cell boundaries
enum CellularReturnType:
CellularReturnType RETURN_CELL_VALUE = 0
The cellular distance function will return the same value for all points within a cell.
CellularReturnType RETURN_DISTANCE = 1
The cellular distance function will return a value determined by the distance to the nearest point.
CellularReturnType RETURN_DISTANCE2 = 2
The cellular distance function returns the distance to the second-nearest point.
CellularReturnType RETURN_DISTANCE2_ADD = 3
The distance to the nearest point is added to the distance to the second-nearest point.
CellularReturnType RETURN_DISTANCE2_SUB = 4
The distance to the nearest point is subtracted from the distance to the second-nearest point.
CellularReturnType RETURN_DISTANCE2_MUL = 5
The distance to the nearest point is multiplied with the distance to the second-nearest point.
CellularReturnType RETURN_DISTANCE2_DIV = 6
The distance to the nearest point is divided by the distance to the second-nearest point.
enum DomainWarpType:
DomainWarpType DOMAIN_WARP_SIMPLEX = 0
The domain is warped using the simplex noise algorithm.
DomainWarpType DOMAIN_WARP_SIMPLEX_REDUCED = 1
The domain is warped using a simplified version of the simplex noise algorithm.
DomainWarpType DOMAIN_WARP_BASIC_GRID = 2
The domain is warped using a simple noise grid (not as smooth as the other methods, but more performant).
enum DomainWarpFractalType:
DomainWarpFractalType DOMAIN_WARP_FRACTAL_NONE = 0
No fractal noise for warping the space.
DomainWarpFractalType DOMAIN_WARP_FRACTAL_PROGRESSIVE = 1
Warping the space progressively, octave for octave, resulting in a more "liquified" distortion.
DomainWarpFractalType DOMAIN_WARP_FRACTAL_INDEPENDENT = 2
Warping the space independently for each octave, resulting in a more chaotic distortion.
Property Descriptions¶
CellularDistanceFunction cellular_distance_function = 0
void set_cellular_distance_function ( CellularDistanceFunction value )
CellularDistanceFunction get_cellular_distance_function ( )
Determines how the distance to the nearest/second-nearest point is computed. See CellularDistanceFunction for options.
float cellular_jitter = 1.0
Maximum distance a point can move off of its grid position. Set to 0
for an even grid.
CellularReturnType cellular_return_type = 1
void set_cellular_return_type ( CellularReturnType value )
CellularReturnType get_cellular_return_type ( )
Return type from cellular noise calculations. See CellularReturnType.
float domain_warp_amplitude = 30.0
Sets the maximum warp distance from the origin.
bool domain_warp_enabled = false
If enabled, another FastNoiseLite instance is used to warp the space, resulting in a distortion of the noise.
float domain_warp_fractal_gain = 0.5
Determines the strength of each subsequent layer of the noise which is used to warp the space.
A low value places more emphasis on the lower frequency base layers, while a high value puts more emphasis on the higher frequency layers.
float domain_warp_fractal_lacunarity = 6.0
void set_domain_warp_fractal_lacunarity ( float value )
float get_domain_warp_fractal_lacunarity ( )
Octave lacunarity of the fracta