Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Gradient
Успадковує: Resource < RefCounted < Object
Перехід кольору.
Опис
Цей ресурс описує перехід кольорів шляхом визначення набору кольорових точок і способів інтерполяції між ними.
Дивіться також Curve, який підтримує більш складні методи ослаблення, але не підтримує кольори.
Властивості
PackedColorArray |
|
|
|
||
|
||
PackedFloat32Array |
|
Методи
void |
|
get_offset(point: int) |
|
get_point_count() const |
|
void |
remove_point(point: int) |
void |
reverse() |
void |
|
void |
set_offset(point: int, offset: float) |
Переліки
enum InterpolationMode: 🔗
InterpolationMode GRADIENT_INTERPOLATE_LINEAR = 0
Лінійна інтерполяція.
InterpolationMode GRADIENT_INTERPOLATE_CONSTANT = 1
Постійна інтерполяція, колір різко змінюється в кожній точці та залишається однорідним між ними. У деяких випадках це може спричинити видиме згладжування при використанні для градієнтної текстури.
InterpolationMode GRADIENT_INTERPOLATE_CUBIC = 2
Кубічна інтерполяція.
enum ColorSpace: 🔗
ColorSpace GRADIENT_COLOR_SPACE_SRGB = 0
колірний простір sRGB.
ColorSpace GRADIENT_COLOR_SPACE_LINEAR_SRGB = 1
Лінійний колірний простір sRGB.
ColorSpace GRADIENT_COLOR_SPACE_OKLAB = 2
Колірний простір Oklab. Цей колірний простір забезпечує плавний і рівномірний перехід між кольорами.
Описи властивостей
PackedColorArray colors = PackedColorArray(0, 0, 0, 1, 1, 1, 1, 1) 🔗
void set_colors(value: PackedColorArray)
PackedColorArray get_colors()
Кольори градієнта як PackedColorArray.
Примітка: налаштування цієї властивості оновлює всі кольори одночасно. Щоб оновити будь-який колір окремо, використовуйте set_color().
Note: The returned array is copied and any changes to it will not update the original property value. See PackedColorArray for more details.
ColorSpace interpolation_color_space = 0 🔗
void set_interpolation_color_space(value: ColorSpace)
ColorSpace get_interpolation_color_space()
Колірний простір, що використовується для інтерполяції між точками градієнта. Він не впливає на повернені кольори, які завжди використовуватимуть нелінійне кодування sRGB.
Примітка: Цей параметр не діє, коли interpolation_mode встановлено на GRADIENT_INTERPOLATE_CONSTANT.
InterpolationMode interpolation_mode = 0 🔗
void set_interpolation_mode(value: InterpolationMode)
InterpolationMode get_interpolation_mode()
Алгоритм, що використовується для інтерполяції між точками градієнта.
PackedFloat32Array offsets = PackedFloat32Array(0, 1) 🔗
void set_offsets(value: PackedFloat32Array)
PackedFloat32Array get_offsets()
Зміщення градієнта як PackedFloat32Array.
Примітка: встановлення цієї властивості оновлює всі зміщення одночасно. Щоб оновити будь-яке зсув окремо, використовуйте set_offset().
Note: The returned array is copied and any changes to it will not update the original property value. See PackedFloat32Array for more details.
Описи методів
void add_point(offset: float, color: Color) 🔗
Додає зазначений колір до градієнта, з вказаним офсетом.
Повертає колір градієнта color за індексом point.
float get_offset(point: int) 🔗
Повертає зміщення кольору градієнта за індексом point.
Повертає кількість кольорів в градієнті.
void remove_point(point: int) 🔗
Видаляє колір за індексом point.
void reverse() 🔗
Змінює/дзеркалює градієнт.
Примітка. Цей метод відображає всі точки навколо середини градієнта, що може призвести до неочікуваних результатів, якщо interpolation_mode встановлено на GRADIENT_INTERPOLATE_CONSTANT.
Повертає інтерпольований колір, заданий параметром offset. Значення offset має бути між 0.0 та 1.0 (включно). Використання значення, меншого за 0.0, поверне той самий колір, що й 0.0, а використання значення, більшого за 1.0, поверне той самий колір, що й 1.0. Якщо ваше вхідне значення не знаходиться в цьому діапазоні, спробуйте використати @GlobalScope.remap() для вхідного значення з вихідними значеннями, встановленими на 0.0 та 1.0.
void set_color(point: int, color: Color) 🔗
Встановлює колір градієнта за індексом point.
void set_offset(point: int, offset: float) 🔗
Встановлює зміщення для кольору градієнта за індексом point.