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...
Зонди відображень
Як зазначено в Standard Material 3D і ORM Material 3D, об’єкти можуть демонструвати відбите та/або розсіяне світло. Відбиваючі зонди використовуються як джерело відбитого і навколишнього світла для об’єктів у зоні їх впливу. Вони можуть бути використані для забезпечення точніших відображень, ніж VoxelGI та SDFGI, але є досить дешевими системними ресурсами.
Оскільки зонди відбиття також можуть зберігати навколишнє світло, їх можна використовувати як недорогу альтернативу VoxelGI та SDFGI, коли baked lightmaps непридатні (наприклад, на рівнях, згенерованих процедурою).
Зонди відбиття також можна використовувати одночасно з відображеннями екранного простору для забезпечення відображення об’єктів поза екраном. У цьому випадку Godot змішує відбиття екранного простору та відбиття від відбивачів.
Дивись також
Не впевнені, що ReflectionProbe відповідає вашим потребам? Перегляньте Яку техніку глобального освітлення слід використовувати? для порівняння методів GI, доступних у Godot 4.
Візуальне порівняння
Зонд відбиття вимкнено. Небо середовища використовується як запасний варіант.
Увімкнено зонд відбиття.
Зонд відбиття ввімкнуто з LightmapGI, що використовується одночасно. Світлова карта з’являється у відображенні.
Поєднуючи зонди відображення з відображенням екранного простору, ви можете отримати найкраще з обох світів: високоякісні відображення для загальної структури кімнати (які залишаються присутніми, коли поза екраном), а також мати відображення в реальному часі для дрібних деталей.
Відображення в кімнаті лише за допомогою ReflectionProbe. Зверніть увагу на те, як дрібні деталі не мають відблисків.
Відображення в кімнаті лише за допомогою відображень екранного простору. Зверніть увагу на те, що відображення на стінах кімнати частково відсутні через те, що вони знаходяться поза кадром.
Відображення в кімнаті за допомогою ReflectionProbe і відображень екранного простору разом. Відображення екранного простору змішуються з зондом відбиття, діючи як запасний варіант у ситуаціях, коли зонд відбиття не відображає жодного відображення.
Налаштування ReflectionProbe
Додайте вузол class_ReflectionProbe.
Налаштуйте розміри ReflectionProbe в інспекторі відповідно до вашої сцени. Для отримання досить точних відображень, як правило, потрібно мати один вузол ReflectionProbe на кімнату (іноді більше для великих кімнат).
Порада
Пам’ятайте, що екстенти ReflectionProbe не обов’язково мають бути квадратними, і ви навіть можете повертати вузол ReflectionProbe, щоб відповідати кімнатам, які не вирівнюються з сіткою X/Z. Використовуйте це на свою користь, щоб краще покривати кімнати без необхідності розміщувати занадто багато вузлів ReflectionProbe.
Властивості ReflectionProbe
Режим оновлення: контролює оновлення датчика відбивання. Once рендерить сцену лише один раз під час кожного переміщення ReflectionProbe. Це значно пришвидшує рендеринг порівняно з режимом оновлення Завжди, який змушує зонд повторно рендерити все навколо кожного кадру. Залиште цю властивість Один раз (за замовчуванням), якщо вам не потрібен зонд відображення для оновлення кожного кадру.
Інтенсивність: яскравість відблисків і зовнішнього освітлення. Зазвичай не потрібно змінювати значення за замовчуванням
1.0, але ви можете зменшити його1.0, якщо виявите, що відблиски виглядають надто сильними.Максимальна відстань: контролює максимальну відстань, яку використовує внутрішня камера ReflectionProbe. Відстань завжди принаймні дорівнює Протяжкам, але її можна збільшити, щоб зробити об’єкти, розташовані за межами протяжностей, видимими у відображеннях. Ця властивість не впливає на максимальну відстань, на якій видно сам ReflectionProbe.
Обсяги: область, на яку впливатимуть освітлення та відбиття ReflectionProbe.
Зсув походження: Початок координат, який використовуватиметься для внутрішньої камери, що використовується для рендерингу зонда відбиття. Він завжди має бути обмежений Обсягами. За потреби налаштуйте це, щоб запобігти загостренню відбиття твердим об'єктом, розташованим точно в центрі зонда відбиття.
Бокс-проекція: визначає, чи потрібно використовувати корекцію паралакса під час візуалізації зонда відображення. Це регулює вигляд відображення залежно від положення камери (відносно датчика відбиття). Це має невелику вартість продуктивності, але підвищення якості часто того варте в приміщеннях коробчатої форми. Зауважте, що цей ефект працює не дуже добре в кімнатах з менш правильною формою (наприклад, кімнатах у формі еліпса).
Інтер’єр: якщо ввімкнути, навколишнє освітлення не буде надходити з навколишнього неба, а фонове небо не відтворюватиметься на датчику відбиття.
Увімкнути тіні: контролює, чи мають відтворюватися світлотіні в режимі реального часу в зонді відображення. Увімкніть це, щоб покращити якість відображення за рахунок продуктивності. Це слід залишити вимкненим для зондів відображення з режимом Завжди, оскільки дуже дорого відображати відображення з тінями в кожному кадрі. Цей параметр не впливає на тіні Fully baked light, і вони незалежно від цього будуть відображені в зонді відбиття.
Cull Mask: контролює, які об’єкти видно у відображенні. Це можна використовувати для покращення продуктивності, виключаючи дрібні об’єкти з відображення. Це також можна використовувати, щоб запобігти артефактам самовідбиття об’єкта в ситуаціях, коли Origin Offset не можна використовувати.
Меша LOD: автоматичний рівень деталізації, який використовується для візуалізації сіток у відображенні.й Це впливає лише на сітки, для яких автоматично створюються LOD. Вищі значення можуть підвищити ефективність за рахунок використання менш детальної геометрії, особливо для об’єктів, які знаходяться далеко від джерела відображення. Візуальна різниця використання менш деталізованих об’єктів зазвичай не дуже помітна під час гри, особливо в грубих відображеннях.
Категорія Ambient містить кілька властивостей для налаштування освітлення навколишнього середовища, відтвореного ReflectionProbe:
Режим: Якщо встановлено значення Вимкнено, зонд не додає навколишнє освітлення. Якщо встановлено значення Оточення, колір навколишнього освітлення автоматично вибирається з навколишнього неба (якщо Інтер’єр вимкнено) і середнього кольору відображення. Якщо встановлено значення Постійний колір, замість нього використовується колір, указаний у властивості Колір. Режим Постійний колір можна використовувати як наближення освітлення зони.
Колір: Колір для використання, коли для режиму зовнішнього освітлення встановлено Постійний режим.
Енергія кольору: Коефіцієнт множення для спеціального Коліру зовнішнього освітлення. Це діє лише тоді, коли для режиму зовнішнього освітлення вибрано Користувацький колір.
Змішування ReflectionProbe
Щоб зробити переходи між джерелами відбиття плавнішими, Godot підтримує автоматичне змішування зонда:
До 4 ReflectionProbes можна змішати в одному місці. ReflectionProbe також плавно зникає до освітлення навколишнього середовища, коли він не торкається жодного іншого вузла ReflectionProbe.
SDFGI та VoxelGI плавно поєднуються з ReflectionProbes, якщо вони використовуються. Це дозволяє розміщувати ReflectionProbes стратегічно, щоб отримати більш точні (або повністю реальні) відображення там, де це необхідно, маючи при цьому грубі відображення, доступні в зоні впливу VoxelGI або SDFGI.
Щоб кілька ReflectionProbe змішувалися один з одним, вам потрібно, щоб частина кожного ReflectionProbe перекривала область один одного. Екстенти мають якомога менше перекриватися з іншими зондами відображення, щоб покращити продуктивність візуалізації (зазвичай кілька одиниць у 3D-просторі).
Обмеження
Використовуючи інструмент візуалізації Forward+, Godot використовує підхід кластеризації для візуалізації зонда відображення. Можна додати скільки завгодно зондів відбиття (якщо дозволяє продуктивність). Проте все ще існує обмеження за замовчуванням у 512 згрупованих елементів, які можуть бути присутніми в поточному поданні камери. Кластерним елементом є всесвітній світильник, прожектор, decal або reflection probe. Цей ліміт можна збільшити, налаштувавши Max Clustered Elements в Project Settings > Rendering > Limits > Cluster Builder.
У разі використання мобільного рендерера лише 8 зондів відображення можна застосувати до кожного окремого ресурсу Mesh. Якщо на одну сітку впливає більше зондів відображення, не всі вони відображатимуться на сітці.
Подібним чином, якщо використовується рендерер сумісності, можна застосувати до 2 зондів відбиття на одну сітку. Якщо більше ніж 2 зонди відбиття впливають на одну сітку, додаткові зонди не відображатимуться.