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...
VisualShaderNodeColorOp
Успадковує: VisualShaderNode < Resource < RefCounted < Object
Оператора Color для використання в графі візуального відтінку.
Опис
Застосовує operator до двох кольорових вхідних даних.
Властивості
|
Переліки
enum Operator: 🔗
Operator OP_SCREEN = 0
Створіть екранний ефект за такою формулою:
result = vec3(1.0) - (vec3(1.0) - a) * (vec3(1.0) - b);
Operator OP_DIFFERENCE = 1
Створіть ефект відмінності за такою формулою:
result = abs(a - b);
Operator OP_DARKEN = 2
Створіть ефект затемнення за такою формулою:
result = min(a, b);
Operator OP_LIGHTEN = 3
Створіть ефект освітлення за допомогою такої формули:
result = max(a, b);
Operator OP_OVERLAY = 4
Створіть ефект накладання за такою формулою:
for (int i = 0; i < 3; i++) {
float base = a[i];
float blend = b[i];
if (base < 0,5) {
result[i] = 2,0 * base * blend;
} else {
result[i] = 1,0 - 2,0 * (1,0 - blend) * (1,0 - base);
}
}
Operator OP_DODGE = 5
Створіть ефект освітлення за такою формулою:
result = a / (vec3(1.0) - b);
Operator OP_BURN = 6
Створіть ефект опіку за допомогою такої формули:
result = vec3(1.0) - (vec3(1.0) - a) / b;
Operator OP_SOFT_LIGHT = 7
Створіть ефект м’якого світла за такою формулою:
for (int i = 0; i < 3; i++) {
float base = a[i];
float blend = b[i];
if (base < 0.5) {
result[i] = base * (blend + 0.5);
} else {
result[i] = 1.0 - (1.0 - base) * (1.0 - (blend - 0.5));
}
}
Operator OP_HARD_LIGHT = 8
Створіть ефект жорсткого світла за такою формулою:
for (int i = 0; i < 3; i++) {
float base = a[i];
float blend = b[i];
if (base < 0.5) {
result[i] = base * (2.0 * blend);
} else {
result[i] = 1.0 - (1.0 - base) * (1.0 - 2.0 * (blend - 0.5));
}
}
Operator OP_MAX = 9
Представляємо розмір об’єкту Operator.
Описи властивостей
Оператор, який буде застосовано до вхідних даних.