mirror of
https://github.com/godotengine/godot.git
synced 2024-12-27 11:24:59 +08:00
4332a798f9
FastNoiseLite: Fix cellular jitter using incorrect default value
164 lines
11 KiB
XML
164 lines
11 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="FastNoiseLite" inherits="Noise" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
|
|
<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.
|
|
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].
|
|
</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>
|
|
<member name="cellular_jitter" type="float" setter="set_cellular_jitter" getter="get_cellular_jitter" default="1.0">
|
|
Maximum distance a point can move off of its grid position. Set to [code]0[/code] for an even grid.
|
|
</member>
|
|
<member name="cellular_return_type" type="int" setter="set_cellular_return_type" getter="get_cellular_return_type" enum="FastNoiseLite.CellularReturnType" default="1">
|
|
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">
|
|
As opposed to [constant TYPE_PERLIN], gradients exist in a simplex lattice rather than a grid lattice, avoiding directional artifacts.
|
|
</constant>
|
|
<constant name="TYPE_SIMPLEX_SMOOTH" value="1" enum="NoiseType">
|
|
Modified, higher quality version of [constant TYPE_SIMPLEX], but slower.
|
|
</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">
|
|
Blend of [constant DISTANCE_EUCLIDEAN] and [constant DISTANCE_MANHATTAN] to give curved cell boundaries
|
|
</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>
|