NoiseTexture3D

Успадковує: Texture3D < Texture < Resource < RefCounted < Object

3D текстура, наповнена шумом, створеним об'єктом Noise.

Опис

Використовує бібліотеку FastNoiseLite або інші генератори шуму для заповнення даних текстури бажаного розміру.

Клас використовує Thread для внутрішньої генерації даних текстури, тому Texture3D.get_data() може повернути null, якщо процес генерації ще не завершено. У такому випадку вам потрібно дочекатися створення текстури, перш ніж отримати доступ до зображення:

var texture = NoiseTexture3D.new()
texture.noise = FastNoiseLite.new()
await texture.changed
var data = texture.get_data()

Властивості

Gradient

color_ramp

int

depth

64

int

height

64

bool

invert

false

Noise

noise

bool

normalize

true

bool

seamless

false

float

seamless_blend_skirt

0.1

int

width

64


Описи властивостей

Gradient color_ramp 🔗

Gradient, який використовується для відображення блиску кожного пікселя до значення кольору.


int depth = 64 🔗

  • void set_depth(value: int)

  • int get_depth()

Глибина генерованої текстури (у пікселях).


int height = 64 🔗

  • void set_height(value: int)

  • int get_height()

Висота генерованої текстури (у пікселях).


bool invert = false 🔗

  • void set_invert(value: bool)

  • bool get_invert()

Якщо true, інвертує текстуру шуму. Білий стає чорним, чорний стає білим.


Noise noise 🔗

Приклад об'єкта Noise.


bool normalize = true 🔗

  • void set_normalize(value: bool)

  • bool is_normalized()

Якщо true, зображення шуму, що надходить від шумогенератора, нормалізовано до діапазону 0.0 до 1.0.

Увімкнути нормалізацію можна на контрасті і дозволяє створювати не повторювані кахельні фактури шуму.


bool seamless = false 🔗

  • void set_seamless(value: bool)

  • bool get_seamless()

Якщо true, безшовна текстура запитується з ресурсу Noise.

Примітка: Безшовні текстури шуму можуть зайняти довше, щоб генерувати та/або можуть мати нижчий контраст у порівнянні з безшовним шумом залежно від використовуваного Noise ресурсу. Це тому, що деякі впровадження використовують більш високі розміри для створення безшовного шуму.

Примітка: За замовчуванням FastNoiseLite використовує шлях знепаду для безшовного покоління. Якщо ви використовуєте width, height або depth нижче, ніж за замовчуванням, ви можете збільшити seamless_blend_skirt, щоб зробити безшовний блендер більш ефективним.


float seamless_blend_skirt = 0.1 🔗

  • void set_seamless_blend_skirt(value: float)

  • float get_seamless_blend_skirt()

Використовується для реалізації безшовної текстури. Визначається відстань, над яким з'єднуються шви. Високі значення можуть призвести до меншої кількості деталей та контрастності. Див. Noise для подальших деталей.

Примітка: Якщо за допомогою width, height або depth нижче за замовчуванням, вам може знадобитися збільшити seamless_blend_skirt, щоб зробити безшовний блендер більш ефективним.


int width = 64 🔗

  • void set_width(value: int)

  • int get_width()

Ширина генерованої текстури (у пікселях).