2022-03-20 21:53:45 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
2023-07-06 16:08:05 +08:00
<class name= "FastNoiseLite" inherits= "Noise" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../../../doc/class.xsd" >
2022-03-20 21:53:45 +08:00
<brief_description >
Generates noise using the FastNoiseLite library.
</brief_description>
<description >
This class generates noise using the FastNoiseLite library, which is a collection of several noise algorithms including Cellular, Perlin, Value, and more.
2023-06-24 19:19:58 +08:00
Most generated noise values are in the range of [code][-1, 1][/code], but not always. Some of the cellular noise algorithms return results above [code]1[/code].
2022-03-20 21:53:45 +08:00
</description>
<tutorials >
</tutorials>
<members >
<member name= "cellular_distance_function" type= "int" setter= "set_cellular_distance_function" getter= "get_cellular_distance_function" enum= "FastNoiseLite.CellularDistanceFunction" default= "0" >
Determines how the distance to the nearest/second-nearest point is computed. See [enum CellularDistanceFunction] for options.
</member>
2023-07-26 21:07:04 +08:00
<member name= "cellular_jitter" type= "float" setter= "set_cellular_jitter" getter= "get_cellular_jitter" default= "1.0" >
2022-03-20 21:53:45 +08:00
Maximum distance a point can move off of its grid position. Set to [code]0[/code] for an even grid.
</member>
2022-04-20 01:48:25 +08:00
<member name= "cellular_return_type" type= "int" setter= "set_cellular_return_type" getter= "get_cellular_return_type" enum= "FastNoiseLite.CellularReturnType" default= "1" >
2022-03-20 21:53:45 +08:00
Return type from cellular noise calculations. See [enum CellularReturnType].
</member>
<member name= "domain_warp_amplitude" type= "float" setter= "set_domain_warp_amplitude" getter= "get_domain_warp_amplitude" default= "30.0" >
Sets the maximum warp distance from the origin.
</member>
<member name= "domain_warp_enabled" type= "bool" setter= "set_domain_warp_enabled" getter= "is_domain_warp_enabled" default= "false" >
If enabled, another FastNoiseLite instance is used to warp the space, resulting in a distortion of the noise.
</member>
<member name= "domain_warp_fractal_gain" type= "float" setter= "set_domain_warp_fractal_gain" getter= "get_domain_warp_fractal_gain" default= "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.
</member>
<member name= "domain_warp_fractal_lacunarity" type= "float" setter= "set_domain_warp_fractal_lacunarity" getter= "get_domain_warp_fractal_lacunarity" default= "6.0" >
Octave lacunarity of the fractal noise which warps the space. Increasing this value results in higher octaves producing noise with finer details and a rougher appearance.
</member>
<member name= "domain_warp_fractal_octaves" type= "int" setter= "set_domain_warp_fractal_octaves" getter= "get_domain_warp_fractal_octaves" default= "5" >
The number of noise layers that are sampled to get the final value for the fractal noise which warps the space.
</member>
<member name= "domain_warp_fractal_type" type= "int" setter= "set_domain_warp_fractal_type" getter= "get_domain_warp_fractal_type" enum= "FastNoiseLite.DomainWarpFractalType" default= "1" >
The method for combining octaves into a fractal which is used to warp the space. See [enum DomainWarpFractalType].
</member>
<member name= "domain_warp_frequency" type= "float" setter= "set_domain_warp_frequency" getter= "get_domain_warp_frequency" default= "0.05" >
Frequency of the noise which warps the space. Low frequency results in smooth noise while high frequency results in rougher, more granular noise.
</member>
<member name= "domain_warp_type" type= "int" setter= "set_domain_warp_type" getter= "get_domain_warp_type" enum= "FastNoiseLite.DomainWarpType" default= "0" >
Sets the warp algorithm. See [enum DomainWarpType].
</member>
<member name= "fractal_gain" type= "float" setter= "set_fractal_gain" getter= "get_fractal_gain" default= "0.5" >
Determines the strength of each subsequent layer of noise in fractal noise.
A low value places more emphasis on the lower frequency base layers, while a high value puts more emphasis on the higher frequency layers.
</member>
<member name= "fractal_lacunarity" type= "float" setter= "set_fractal_lacunarity" getter= "get_fractal_lacunarity" default= "2.0" >
Frequency multiplier between subsequent octaves. Increasing this value results in higher octaves producing noise with finer details and a rougher appearance.
</member>
<member name= "fractal_octaves" type= "int" setter= "set_fractal_octaves" getter= "get_fractal_octaves" default= "5" >
The number of noise layers that are sampled to get the final value for fractal noise types.
</member>
<member name= "fractal_ping_pong_strength" type= "float" setter= "set_fractal_ping_pong_strength" getter= "get_fractal_ping_pong_strength" default= "2.0" >
Sets the strength of the fractal ping pong type.
</member>
<member name= "fractal_type" type= "int" setter= "set_fractal_type" getter= "get_fractal_type" enum= "FastNoiseLite.FractalType" default= "1" >
The method for combining octaves into a fractal. See [enum FractalType].
</member>
<member name= "fractal_weighted_strength" type= "float" setter= "set_fractal_weighted_strength" getter= "get_fractal_weighted_strength" default= "0.0" >
Higher weighting means higher octaves have less impact if lower octaves have a large impact.
</member>
<member name= "frequency" type= "float" setter= "set_frequency" getter= "get_frequency" default= "0.01" >
The frequency for all noise types. Low frequency results in smooth noise while high frequency results in rougher, more granular noise.
</member>
<member name= "noise_type" type= "int" setter= "set_noise_type" getter= "get_noise_type" enum= "FastNoiseLite.NoiseType" default= "1" >
The noise algorithm used. See [enum NoiseType].
</member>
<member name= "offset" type= "Vector3" setter= "set_offset" getter= "get_offset" default= "Vector3(0, 0, 0)" >
Translate the noise input coordinates by the given [Vector3].
</member>
<member name= "seed" type= "int" setter= "set_seed" getter= "get_seed" default= "0" >
The random number seed for all noise types.
</member>
</members>
<constants >
<constant name= "TYPE_VALUE" value= "5" enum= "NoiseType" >
A lattice of points are assigned random values then interpolated based on neighboring values.
</constant>
<constant name= "TYPE_VALUE_CUBIC" value= "4" enum= "NoiseType" >
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.
</constant>
<constant name= "TYPE_PERLIN" value= "3" enum= "NoiseType" >
A lattice of random gradients. Their dot products are interpolated to obtain values in between the lattices.
</constant>
<constant name= "TYPE_CELLULAR" value= "2" enum= "NoiseType" >
Cellular includes both Worley noise and Voronoi diagrams which creates various regions of the same value.
</constant>
<constant name= "TYPE_SIMPLEX" value= "0" enum= "NoiseType" >
2024-10-07 19:41:18 +08:00
As opposed to [constant TYPE_PERLIN], gradients exist in a simplex lattice rather than a grid lattice, avoiding directional artifacts. Internally uses FastNoiseLite's OpenSimplex2 noise type.
2022-03-20 21:53:45 +08:00
</constant>
<constant name= "TYPE_SIMPLEX_SMOOTH" value= "1" enum= "NoiseType" >
2024-10-07 19:41:18 +08:00
Modified, higher quality version of [constant TYPE_SIMPLEX], but slower. Internally uses FastNoiseLite's OpenSimplex2S noise type.
2022-03-20 21:53:45 +08:00
</constant>
<constant name= "FRACTAL_NONE" value= "0" enum= "FractalType" >
No fractal noise.
</constant>
<constant name= "FRACTAL_FBM" value= "1" enum= "FractalType" >
Method using Fractional Brownian Motion to combine octaves into a fractal.
</constant>
<constant name= "FRACTAL_RIDGED" value= "2" enum= "FractalType" >
Method of combining octaves into a fractal resulting in a "ridged" look.
</constant>
<constant name= "FRACTAL_PING_PONG" value= "3" enum= "FractalType" >
Method of combining octaves into a fractal with a ping pong effect.
</constant>
<constant name= "DISTANCE_EUCLIDEAN" value= "0" enum= "CellularDistanceFunction" >
Euclidean distance to the nearest point.
</constant>
<constant name= "DISTANCE_EUCLIDEAN_SQUARED" value= "1" enum= "CellularDistanceFunction" >
Squared Euclidean distance to the nearest point.
</constant>
<constant name= "DISTANCE_MANHATTAN" value= "2" enum= "CellularDistanceFunction" >
Manhattan distance (taxicab metric) to the nearest point.
</constant>
<constant name= "DISTANCE_HYBRID" value= "3" enum= "CellularDistanceFunction" >
2024-08-19 00:51:37 +08:00
Blend of [constant DISTANCE_EUCLIDEAN] and [constant DISTANCE_MANHATTAN] to give curved cell boundaries.
2022-03-20 21:53:45 +08:00
</constant>
<constant name= "RETURN_CELL_VALUE" value= "0" enum= "CellularReturnType" >
The cellular distance function will return the same value for all points within a cell.
</constant>
<constant name= "RETURN_DISTANCE" value= "1" enum= "CellularReturnType" >
The cellular distance function will return a value determined by the distance to the nearest point.
</constant>
<constant name= "RETURN_DISTANCE2" value= "2" enum= "CellularReturnType" >
The cellular distance function returns the distance to the second-nearest point.
</constant>
<constant name= "RETURN_DISTANCE2_ADD" value= "3" enum= "CellularReturnType" >
The distance to the nearest point is added to the distance to the second-nearest point.
</constant>
<constant name= "RETURN_DISTANCE2_SUB" value= "4" enum= "CellularReturnType" >
The distance to the nearest point is subtracted from the distance to the second-nearest point.
</constant>
<constant name= "RETURN_DISTANCE2_MUL" value= "5" enum= "CellularReturnType" >
The distance to the nearest point is multiplied with the distance to the second-nearest point.
</constant>
<constant name= "RETURN_DISTANCE2_DIV" value= "6" enum= "CellularReturnType" >
The distance to the nearest point is divided by the distance to the second-nearest point.
</constant>
<constant name= "DOMAIN_WARP_SIMPLEX" value= "0" enum= "DomainWarpType" >
The domain is warped using the simplex noise algorithm.
</constant>
<constant name= "DOMAIN_WARP_SIMPLEX_REDUCED" value= "1" enum= "DomainWarpType" >
The domain is warped using a simplified version of the simplex noise algorithm.
</constant>
<constant name= "DOMAIN_WARP_BASIC_GRID" value= "2" enum= "DomainWarpType" >
The domain is warped using a simple noise grid (not as smooth as the other methods, but more performant).
</constant>
<constant name= "DOMAIN_WARP_FRACTAL_NONE" value= "0" enum= "DomainWarpFractalType" >
No fractal noise for warping the space.
</constant>
<constant name= "DOMAIN_WARP_FRACTAL_PROGRESSIVE" value= "1" enum= "DomainWarpFractalType" >
Warping the space progressively, octave for octave, resulting in a more "liquified" distortion.
</constant>
<constant name= "DOMAIN_WARP_FRACTAL_INDEPENDENT" value= "2" enum= "DomainWarpFractalType" >
Warping the space independently for each octave, resulting in a more chaotic distortion.
</constant>
</constants>
</class>