Чи має багаторазове зниження часу користь?


14

Тому я натрапив на цей сайт, і ви можете побачити ці рядки в першому та другому абзаці:

Щоб отримати сильний, але простий ефект, намалюйте яскраві ділянки сцени (наприклад, джерела світла) у ФБО, а потім кілька разів зніміть його за допомогою мінімізації GL_LINEAR . Для остаточного візуалізації просто комбінуйте оригінальну сцену з фронтовим фронтом.

У наступному прикладі оригінальна сцена розміром 128 x 128 та зменшена вибірка в 3 рази . Для цього потрібно 4 об'єкти кадру . Оригінальна сцена відображається у верхньому лівому куті, а кінцева візуалізація - у верхньому правому куті.

Чи є якась причина, що я повинен пробити вибірку кілька разів (128 -> 64 -> 32 -> 16), а не знизити вибірку один раз (128 -> 16)?

Якщо прокрутити більше вниз, вони навіть зменшують зразок, як 9 разів. (128 -> ... -> 16 -> 128 -> ... -> 16 -> тощо). Чому б не зробити це так (128 -> 16 -> 128 -> 16 -> і так далі)?


Воістину абсурдний підхід. Просто розмийте буфер і зменшіть зразок GL_NEAREST.
транзистор09

Відповіді:


23

Є дві основні переваги:

По-перше, якщо зменшити вибірку більш ніж в два рази, деякі пікселі в оригінальному зображенні не матимуть ніякого впливу на результат зображення. Використовуючи GL_LINEARкожен піксель призначення, вибиратимуть лише максимум 4 пікселі з вихідного зображення; інші пікселі просто відкидаються. Зменшуючи дискретизацію в два рази, ви гарантуєте, що кожен піксель із вихідного зображення мав рівний ефект на наступному шарі вниз.

По-друге, алгоритми, які обговорюються на цьому сайті, вимагають кожного з об'єктів фреймбуфера; Насправді вони потрібні всім, навіть якщо не було вагомих причин для зниження даного способу. Ви не можете пропустити зображення 64х64 або 32х32, оскільки ці зображення використовуються як частина побудови результату, розмитого в гауссі.

Нарешті, якщо ви прочитаєте статтю, то побачите, що вона не виступає за зменшення розміщення зображень 9 разів; він зменшує зразки лише три рази, а потім робить кілька операцій над тими знімками, що знімаються. Зображення, на які ви дивитесь, просто показують стан тих самих 3 зображень із зразком зображених нижче, після кожного кроку процесу, не показуючи окремих подій пониження даних.


Ах, це для мене зараз так багато сенсу. Дякую.
Greffin28

1
(До речі, ефект цвітіння, який я використовую у своїх власних іграх, ґрунтується на методі, описаному на пов’язаній сторінці. Особисто я знімаю зразок у 5 разів, а не в 3, оскільки я починаю із значно більшого початкового зображення, але все ж хочу приємного, широкого розмиття .)
Тревор Пауелл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.