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...
Туманні шейдери
Шейдери туману використовуються для визначення того, як туман додається (або віднімається) від сцени в певній області. Туманні шейдери завжди використовуються разом із FogVolumes та об’ємним туманом. Шейдери туману мають лише одну функцію обробки, функцію fog()
.
Роздільна здатність шейдерів туману залежить від роздільної здатності фроксельної сітки об’ємного туману. Відповідно, рівень деталізації, який може додати туманний шейдер, залежить від того, наскільки близько FogVolume знаходиться до камери.
Туманні шейдери — це спеціальна форма обчислювального шейдера, яка викликається один раз для кожного фрокселя, якого торкається вирівняна по осі обмежувальна рамка пов’язаного FogVolume. Це означає, що фрокселі, які ледве торкаються заданого FogVolume, все одно будуть використовуватися.
Вбудовані
Values marked as in
are read-only. Values marked as out
can optionally
be written to and will not necessarily contain sensible values. Samplers cannot
be written to so they are not marked.
Глобальні вбудовані функції
Глобальні вбудовані засоби доступні скрізь, у тому числі в користувацьких функціях.
Вбудований |
Опис |
---|---|
In float TIME |
Global time since the engine has started, in seconds. It repeats after every |
у float PI |
Константа |
у float TAU |
Константа |
у float E |
Константа |
Вбудовані протитуманки
Усі вихідні значення об’ємів туману перекривають одне одного. Це дозволяє ефективно відтворювати FogVolumes, оскільки всі вони можуть бути намальовані одночасно.
Вбудований |
Опис |
---|---|
In vec3 WORLD_POSITION |
Положення сучасної клітини фрокселя у світовому просторі. |
In vec3 OBJECT_POSITION |
Положення центру поточного FogVolume у світовому просторі. |
In vec3 UVW |
3-dimensional UV, used to map a 3D texture to the current FogVolume. |
In vec3 SIZE |
|
In vec3 SDF |
Поле відстані зі знаком до поверхні FogVolume. Негативний, якщо внутрішній об’єм, позитивний – інакше. |
Out vec3 ALBEDO |
Вихідне значення базового кольору, взаємодія зі світлом для створення остаточного кольору. Записується лише на туманну гучність, якщо використовується. |
Out float DENSITY |
Вихідне значення щільності. Може бути негативним, щоб дозволити віднімання одного обсягу від іншого. Щільність повинна використовуватися для туманного шейдера, щоб взагалі щось написати. |
Out vec3 EMISSION |
Вихідне значення кольору випромінювання, додане до кольору під час проходження світла для отримання остаточного кольору. Записується лише на туманну гучність, якщо використовується. |