NoiseTexture2D
继承: Texture2D
< Texture
< Resource
< RefCounted
< Object
A 2D texture filled with noise generated by a Noise
object.
描述
Uses the FastNoiseLite
library or other noise generators to fill the texture data of your desired size. NoiseTexture2D can also generate normal map textures.
The class uses Thread
s to generate the texture data internally, so Texture2D.get_image
may return null
if the generation process has not completed yet. In that case, you need to wait for the texture to be generated before accessing the image and the generated byte data:
var texture = NoiseTexture2D.new()
texture.noise = FastNoiseLite.new()
await texture.changed
var image = texture.get_image()
var data = image.get_data()
属性
属性说明
bool
as_normal_map = false
If true
, the resulting texture contains a normal map created from the original noise interpreted as a bump map.
float
bump_strength = 8.0
Strength of the bump maps used in this texture. A higher value will make the bump maps appear larger while a lower value will make them appear softer.
Gradient
color_ramp
A Gradient
which is used to map the luminance of each pixel to a color value.
bool
generate_mipmaps = true
Determines whether mipmaps are generated for this texture. Enabling this results in less texture aliasing in the distance, at the cost of increasing memory usage by roughly 33% and making the noise texture generation take longer.
Note: generate_mipmaps
requires mipmap filtering to be enabled on the material using the NoiseTexture2D to have an effect.
int
height = 512
Height of the generated texture (in pixels).
bool
in_3d_space = false
Determines whether the noise image is calculated in 3D space. May result in reduced contrast.
bool
invert = false
If true
, inverts the noise texture. White becomes black, black becomes white.
Noise
noise
The instance of the Noise
object.
bool
normalize = true
If true
, the noise image coming from the noise generator is normalized to the range 0.0
to 1.0
.
Turning normalization off can affect the contrast and allows you to generate non repeating tileable noise textures.
bool
seamless = false
If true
, a seamless texture is requested from the Noise
resource.
Note: Seamless noise textures may take longer to generate and/or can have a lower contrast compared to non-seamless noise depending on the used Noise
resource. This is because some implementations use higher dimensions for generating seamless noise.
Note: The default FastNoiseLite
implementation uses the fallback path for seamless generation. If using a width
or height
lower than the default, you may need to increase seamless_blend_skirt
to make seamless blending more effective.
float
seamless_blend_skirt = 0.1
Used for the default/fallback implementation of the seamless texture generation. It determines the distance over which the seams are blended. High values may result in less details and contrast. See Noise
for further details.
Note: If using a width
or height
lower than the default, you may need to increase seamless_blend_skirt
to make seamless blending more effective.
int
width = 512
Width of the generated texture (in pixels).
本方法通常需要用户覆盖才能生效。
本方法无副作用,不会修改该实例的任何成员变量。
本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。
本方法用于构造某个类型。
调用本方法无需实例,可直接使用类名进行调用。
本方法描述的是使用本类型作为左操作数的有效运算符。
这个值是由下列位标志构成位掩码的整数。
无返回值。