NoiseTexture2D¶
继承: Texture2D < Texture < Resource < RefCounted < Object
由 Noise 对象生成的噪声所填充的 2D 纹理。
描述¶
使用 FastNoiseLite 库或其他噪声生成器来填充指定尺寸的纹理数据。 NoiseTexture2D 还可生成法线贴图纹理。
本类通过内部 Thread 线程生成纹理数据,因此若生成过程尚未完成,调用 Texture2D.get_image() 可能返回 null 。此时需要等待纹理生成完成后才能访问图像及其生成的字节数据:
var texture = NoiseTexture2D.new()
texture.noise = FastNoiseLite.new()
await texture.changed
var image = texture.get_image()
var data = image.get_data()
属性¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
resource_local_to_scene |
|
|
|
||
|
||
|
属性说明¶
如果为 true,产生的纹理包含一个由原始噪声创建的法线贴图,解释为凹凸贴图。
该纹理中使用的凹凸贴图的强度。更高的值会使凹凸贴图看起来更大,而更低的值会使它们看起来更柔和。
Gradient,用于将每个像素的亮度映射到一个颜色值。
bool generate_mipmaps = true 🔗
控制是否为此纹理生成mipmap(多级渐远纹理)。启用此功能可减少远距离下的纹理锯齿,但会增加约33%的内存占用,同时延长噪声纹理的生成时间。
注意:要使 generate_mipmaps 属性生效,使用该 NoiseTexture2D 的材质必须启用mipmap过滤功能。
生成的纹理的高度(单位为像素)。
决定是否在 3D 空间中计算噪声图像。可能会导致对比度降低。
如果为 true,则反转该噪声纹理。白变黑,黑变白。
Noise 对象的实例。
当设为 true 时,来自噪声生成器的噪声图像会被归一化到 0.0 至 1.0 的范围。
禁用归一化会影响图像对比度,但同时允许生成非重复的可平铺噪声纹理。
当设为 true 时,将从 Noise 资源请求生成无缝纹理。
注意:根据所使用的 Noise 资源不同,无缝噪声纹理的生成时间可能更长,且对比度可能低于非无缝噪声。这是因为部分实现会使用更高维度来生成无缝噪声。
注意:默认的 FastNoiseLite 实现使用备用路径生成无缝纹理。若使用的 width (宽度)或 height (高度)小于默认值,可能需要增大 seamless_blend_skirt (无缝混合边距)来提升无缝混合效果。
float seamless_blend_skirt = 0.1 🔗
该参数用于无缝纹理生成的默认/后备实现,决定接缝区域的混合过渡距离。数值过大会导致细节和对比度降低。详见 Noise 的进一步说明。
注意:若使用的 width (宽度)或 height (高度)小于默认值,可能需要增大 seamless_blend_skirt (无缝混合边距)来优化无缝混合效果。
生成的纹理的宽度(单位为像素)。