NoiseTexture

Inherits: Texture < Resource < Reference < Object

使用 OpenSimplexNoise 填充的纹理。

描述

使用 OpenSimplexNoise 填充纹理数据。您可以指定纹理大小,但请记住,较大的纹理将需要更长的时间来生成,并且无缝噪声仅适用于方形大小的纹理。

NoiseTexture 还可以生成法线贴图纹理。

该类内部使用线程 Thread 来生成纹理数据,因此如果生成过程尚未完成,Texture.get_data 可能会返回 null。在这种情况下,您需要在访问数据之前等待纹理生成:

  1. var texture = preload("res://noise.tres")
  2. yield(texture, "changed")
  3. var image = texture.get_data()

属性

bool

as_normalmap

false

float

bump_strength

8.0

int

flags

7 (overrides Texture)

int

height

512

OpenSimplexNoise

noise

Vector2

noise_offset

Vector2( 0, 0 )

bool

seamless

false

int

width

512

属性说明

Default

false

Setter

set_as_normalmap(value)

Getter

is_normalmap()

如果 true,产生的纹理包含一个由原始噪声创建的法线贴图,解释为凹凸贴图。


Default

8.0

Setter

set_bump_strength(value)

Getter

get_bump_strength()

此纹理中使用的凹凸贴图的强度。较高的值会使凹凸贴图看起来更大,而较低的值会使它们看起来更柔和。


Default

512

Setter

set_height(value)

Getter

get_height()

生成的纹理的高度。


Setter

set_noise(value)

Getter

get_noise()

用来生成噪声的 OpenSimplexNoise 实例。


Default

Vector2( 0, 0 )

Setter

set_noise_offset(value)

Getter

get_noise_offset()

用于指定生成噪声左上角的噪声空间坐标的偏移量。如果启用了 seamless,则忽略此值。


Default

false

Setter

set_seamless(value)

Getter

get_seamless()

纹理是否可以平铺而没有可见的接缝。生成无缝纹理需要更长的时间。

注: 与非无缝噪声相比,无缝噪声具有较低的对比度。这是由于噪声使用更高维度来生成无缝噪声的方式。


Default

512

Setter

set_width(value)

Getter

get_width()

生成的纹理的宽度。