Згладжування в іграх. Що це та яке вибрати?
Згладжування (англ. Anti-Aliasing) - це технологія, що використовується при обробці комп'ютерної графіки для усунення "ступінчастості" на краях об'єктів, щоб вони не виглядали, як ряди блоків Minecraft. Згладжування значно покращує візуальну якість ігор, роблячи межі об'єктів більш плавними та природними. При цьому існують різні методи згладжування, кожен з яких має свої переваги та недоліки.
Основні види згладжування
Різновидів графічного згладжування чимало, але ми розглянемо найпоширеніші, один або кілька з яких зустрінуться вам практично в кожній грі, а потім розповімо про те, як вибрати найбільш підходящий тип.
FXAA (Fast Approximate Anti-Aliasing)
Метод FXAA був розроблений компанією NVidia і є одним із найшвидших. Він застосовує фільтр до повного кадру після його рендерингу (відмальовки), щоб усунути ступінчасті краї графічного об'єкта. Через це FXAA може іноді призводити до деякого розмиття текстур, але перевага FXAA полягає в тому, що він має мінімальний вплив на продуктивність. З інших особливостей FXAA можна відзначити, що цей метод непогано справляється зі згладжуванням геометрично складних об'єктів, проте майже не допомагає при поліпшенні якості тонких елементів — наприклад, дротів, які, як і раніше, висітимуть «драбинкою». Тим не менш, у FXAA є кілька рівнів якості, які дозволяють знижувати спотворення зображення.
MSAA (MultiSample Anti-Aliasing)
MSAA вважається традиційнішим методом згладжування.Він працює шляхом збільшення кількості вибірок кольору в кожному пікселі, що дозволяє точніше визначити, який відтінок повинен бути у даного пікселя. MSAA зазвичай забезпечує вищу якість зображення порівняно з FXAA. Але при цьому потребує більше ресурсів, що може зменшити загальну продуктивність гри на старих відеокартах. Сучасні графічні процесори не надто «напружаться» навіть у тому випадку, якщо ви виставите максимальний рівень якості MSAA — x8.
SSAA (SuperSample Anti-Aliasing)
Незважаючи на свій «поважний» вік, це один із найякісніших методів згладжування. SSAA працює шляхом рендерингу гри в роздільній здатності, що значно перевищує обране, а потім зменшує його до потрібного. Це дозволяє отримати дуже гладкі краї та високу якість текстур, коли навіть віддалені об'єкти виглядають чітко, а брижі повністю зникають. Крім того, SSAA підтримує фактично будь-який дозвіл (навіть вище, ніж у будь-яких моніторів, що є у продажу). Однак він є найбільш ресурсомістким із усіх методів згладжування, і його включення може призвести до суттєвого зниження частоти кадрів (FPS), особливо у нових іграх.
SMAA (Subpixel Morphological Anti-Aliasing)
Технологія SMAA була розроблена на основі FXAA і набула широкого поширення завдяки більшій ефективності та настільки ж низькій вимогливості до обчислювальних ресурсів. SMAA для досягнення згладжування країв зображення використовує комбінацію FXAA та інших, менш поширених методів. Він включає попереднє згладжування і застосування спеціального фільтра до згладженого зображення.Цей фільтр аналізує крайні пікселі та використовує відповідну корекцію кольору для поліпшення якості картинки.
DSR (Dynamic Super Resolution)
Ще одна технологія згладжування від NVidia, яка дозволяє покращити якість графіки на екрані шляхом віртуального збільшення роздільної здатності зображення перед відображенням на моніторі в реальному розмірі. Наприклад, якщо у вас є монітор зі стандартною сучасною роздільною здатністю 1080p (1920×1080 пікселів), і ви включаєте DSR, ви можете вибрати вищу віртуальну роздільну здатність, таку як 1440p (2560×1440 пікселів) або навіть 4K (3840×216) . Потім, коли картинка рендерується в вищій роздільній здатності, вона масштабується назад до роздільної здатності вашого монітора, за рахунок чого створюється більш чітке та деталізоване зображення. DSR допомагає усунути «зубчастість» та пікселізацію на краях об'єктів, роблячи їх більш плавними та реалістичними. Також DSR покращує читаність тексту та деталізацію дрібних об'єктів в іграх та додатках. Однак для його використання потрібна досить потужна відеокарта, тому що робота з вищими дозволами вимагає і більше обчислювальних потужностей.
Вибір методу згладжування
Виходячи з опису найпоширеніших методів згладжування, ви вже, напевно, зрозуміли, який краще підійде вашій моделі відеокарти. Вочевидь, вибір типу згладжування переважно залежить від наявного заліза. Якщо у вас слабка відеокарта, найкращим вибором буде FXAA або SMAA, оскільки вони мають мінімальний вплив на продуктивність.Однак, якщо ваш графічний процесор здатний витримувати велике навантаження і вам важлива якість зображення, вам підійде MSAA, DSR або навіть SSAA, з якими, при правильно виставлених налаштуваннях, картинка стане максимально реалістичною.
При цьому важливо пам'ятати, що не всі ігри підтримують навіть декілька з описаних методів згладжування. експериментувати з різними налаштуваннями згладжування, щоб знайти ті, які найкраще підходять для вашої системи та відповідають вашим уподобанням.
Короткий огляд згладжування в іграх
Ні для кого не секрет, що в більшості сучасних ігор рівня ААА багато налаштувань графіки. Але не всі знають, який параметр за що відповідає, який рівень встановити найкраще і скільки він може відібрати ресурсів у ПК.
Що таке згладжування? Найпростішу відповідь дає Вікіпедія.
Згладжування (anti-aliasing, AA, антиалязинг, антиалайзинг і тд) - технологія, що використовується для усунення ефекту «зубчастості», що виникає на краях одночасно виводиться на екран безлічі окремих один від одного плоских, або об'ємних зображень. технологічному інституті в Architecture Machine Group.
Що б вам не довелося багато читати, відразу наведу основні варіанти згладжувань. Так само вони зазвичай позначаються і в іграх.
SSAA, MSAA, CSAA, NFAA, FXAA, DLAA, MLAA, SMAA, TXAA.
Почну з найкрутішого, правильного якісного і найжорсткішого згладжування - SSAA або по-іншому - Super-Sampling.Простий приклад споживаних ресурсів цим методом згладжування: для роздільної здатності 1280х1024 з SSAA 4x необхідний екранний буфер такого ж розміру, як при роздільній здатності 2560х2048 без SSAA. Розмиття картинки – НІ. Ще цей спосіб згладжування називають FSAA. Рекомендую застосовувати власникам тільки топових ПК (відеокарт).
MSAA – покращений варіант суперсемплінгу (SSAA). Практично такий самий за якістю, але вимагає менше ресурсів відеокарти, порівняно з SSAA. Розмиття картинки - дуже незначне, практично не вловиме. І хоча цей метод згладжування вимагає менше ресурсів, ніж його перший побратим, цей варіант АА також рекомендується власникам топових відеокарт.
CSAA – розробка NVIDIA. Вдосконалений (трохи) MSAA. Якість картинки приблизно на рівні MSAA 8x, але за ресурсами їсть як MSAA 4x. Розмиття картинки - незначне, практично не вловиме. З останніх ігор, у яких його використав – Star Wars Battlefront (DICE).
FXAA – відомий своїм низьким вимогам до відеосистеми. Згладжує цілком пристойно, я сказав би добре. Але є один недолік, який помітний, скажімо, при порівнянні з MSAA - "замилювання" картинки. Воно більше, ніж середнє. Підійде для тих, хто не терпить драбинки, але не може дозволити собі попередні алгоритми згладжування.
MLAA – маловідомий алгоритм згладжування. Єдиний алгоритм, який працює за рахунок процесора, а чи не відеокарти. Він не залежить від складності сцени, тому можна гарантувати відсутність «підгальмовування» у будь-який момент. Intel позиціонує MLAA як конкурента MSAA. Якщо судити об'єктивно, MSAA працює трохи повільніше, а й якісніше.У порівнянні MLAA з FXAA перший буде повільнішим, але при цьому якість картинки – без помітного «замилювання».
SMAA – суміш FXAA та MLAA. За швидкістю знаходиться між FXAA та MSAA. За якістю – картинку практично не скидає.
TXAA – новий алгоритм згладжування. Поєднує переваги MSAA та FXAA. Розробка NVIDIA. Згладжує дуже якісно. TXAA 4x = MSAA 8x. Хоча часом перший навіть кращий. АЛЕ. TXAA «миле» картинку. «Блюрить» її. І якщо порівнювати з MSAA – останній виглядає краще.
Підсумок: Чіткий, але найдавніший алгоритм згладжування - SSAA. MSAA – дуже хороший за якістю, але є помітно багато ресурсів. CSAA – практично такий самий за якістю, але ресурсів їсть менше. FXAA – якщо відеокарта не дозволяє, але «згладжувати» хочеться, цей варіант для вас. MLAA – на нього можете забити. SMAA - нормальний варіант, можете його випробувати. TXAA – дуже добре згладжує. Дуже. Але блюр дуже дратує. Тому можу рекомендувати цей алгоритм, якщо вам начхати на «замилювання».
До речі. У роздільній здатності 4k згладжування часом зовсім не потрібно. Або можна застосувати найпростіше CSAA або MSAA 2x. Не більше. Цікаво, як складеться картина років через 5-7, коли 4k дозвіл набуде масовості. Я спеціально не став наводити приклади комбінування різних методів згладжування, щоб не викликати у вас плутанини. Достатньо цих алгоритмів, щоб ви могли визначитися, яке згладжування підходить для вашої системи і для вашого сприйняття.
Згладжування в іграх: як розробники роблять картинку приємнішою та який тип згладжування вибрати?
Щоб прибрати піксельні драбинки в кадрі, розробники використовують технологію згладжування в іграх. Розповідаємо, що це та як працює.
Якщо ви коли-небудь заглядали в налаштування графіки в іграх, то, найімовірніше, помічали параметр згладжування. І якщо інші налаштування, такі як дальність промальовування або якість тіней, є досить інтуїтивними, то з розумінням згладжування можуть виникнути проблеми.
Навіщо потрібне згладжування в іграх?
Будова екрану монітора є матрицею квадратних пікселів. Нескладно здогадатися, що в такому випадку ідеально правильними будуть малюватись тільки горизонтальні та вертикальні лінії. Як тільки комп'ютер спробує змалювати похилу лінію — з'являється зубчастість пікселів.
Лісочка пікселів при малюванні похилих ліній
Цю проблему можна вирішити придбанням монітора з більшою роздільною здатністю. Швидше за все, якщо у вас не сучасна відеокарта, то доведеться оновити її. Але такий варіант влаштує далеко не кожного.
Тому розробники додають у свої ігри технологію згладжування. Вона була придумана ще в 1972 році, але популярність в ігровій індустрії почала набирати лише через кілька десятків років. Суть згладжування полягає в тому, щоб зафарбувати сусідні від зазубреності пікселі у проміжний колір (або градієнт кольорів). У такому разі перехід здаватиметься не таким різким, тим самим згладжуючи кордон.
Приклад згладжування похилої лінії
Примітка Згладжування застосовується у іграх, а й у інтерфейсах програм і навіть у операційних системах. Крім зображень, алгоритм обробляє і текст, роблячи невеликий шрифт більш читаним.
Домогтися згладжування можна у різний спосіб. Нижче наведено 8 основних та популярних алгоритмів згладжування, проте в іграх можуть потрапити й інші типи.
SSAA (SuperSample Anti-Aliasing)
Найпростіший, але водночас найефективніший тип згладжування, який у іграх дає найприємнішу картинку. На жаль, він дуже знижує продуктивність. Відеокарта віртуально збільшує роздільну здатність екрана в кілька разів. Після відображення кадру зображення стискається назад до оригінальних розмірів, середні кольори віртуальних пікселів у відповідні реальні пікселі. Якщо роздільна здатність екрана Full HD (1920×1080), а згладжування працює у чотириразовому режимі, то кадр буде відображатися у роздільній здатності 4K (3840×2160).
Примітка Усереднення пікселів – це просто знаходження середнього кольору від кількох віртуальних пікселів. Наприклад, у SSAA x 4 роздільна здатність збільшується вдвічі. Тоді кожному реальному пікселю будуть відповідати 4 віртуальні. Ось приклади того, як відбуватиметься усереднення:
Приклади усереднення квітів
Такий тип згладжування прибирає драбинку, робить дрібні об'єкти вдалині більш помітними, а саму картинку просто приємнішою для очей.
На жаль, далеко не у всіх іграх реалізовано такий тип згладжування. Алгоритм SSAA найкраще підійде для несучасних ігор, де ресурсозатратність такого згладжування компенсуватиметься великою продуктивністю гри.
Однак іноді в налаштуваннях може потрапити згладжування SSAA x 0,5. При його використанні роздільна здатність зображення віртуально зменшується вдвічі, а при малюванні на екран назад розтягується. Якість картинки у разі погіршується, тоді як продуктивність гри навпаки збільшується.
MSAA (MultiSample Anti-Aliasing)
На практиці згладжування не потрібно застосовувати абсолютно до всього кадру.Воно доречне там, де є похилі лінії, контрастні межі полігонів чи дрібні об'єкти далекої відстані. Тому заміну ресурсомісткому SSAA прийшов легший MSAA.
Цей тип згладжування працює за подібним алгоритмом: збільшує віртуальний дозвіл певної ділянки кадру, промальовує його, а потім зменшує роздільну здатність до оригіналу.
Результат чотириразового згладжування MSAA
Але таке згладжування неефективне в іграх, де потрібно малювати багато дрібних об'єктів: траву, листя чи волосся — все те, що розробники так затято намагаються деталізувати. У таких випадках цей тип згладжування стає ідентичним своєму попереднику, а отже — таким ресурсозатратним.
FXAA (Fast approXimate Anti-Aliasing)
Суть цього алгоритму полягає у усередненні кольорів сусідніх реальних (не віртуальних) пікселів.
Результат згладжування FXAA
FXAA сильно милить зображення, зате потребує мінімум ресурсів. Не найкращий варіант, проте один із найпопулярніших. При його використанні варто розуміти, що будь-які чіткі елементи або контрастні межі розмиваються, що в деяких випадках робить картинку не дуже приємною для очей. Тому вам належить зробити вибір між замиленим зображенням та драбинками пікселів.
Блокнот, Excel та осцилограф: де ще можна робити ігри? Добірка ігор на незвичайних двигунах
MLAA (MorphoLogical Anti-Aliasing)
Цей тип згладжування є аналогом FXAA Intel. Алгоритм працює після фінального відтворення кадру, тому може виконуватися вже не на відеокарті, а на центральному процесорі. Це дозволяє суттєво знизити навантаження на відеокарту.
Принцип розбиття зображення на структуру.
MLAA визначає місця з різким переходом кольорів за 3 різними патернами: Z, U і L. Потім ділянка градуюється за кольорами за заздалегідь заданими алгоритмами, властивими кожному з патернів.
SMAA (Subpixel Morphological Anti-Aliasing)
Це згладжування, створене на основі FXAA та MLAA. Є покращеною версією MLAA, але працює не на ЦП, але в відеокарті, отже, витрачає її ресурси.
Тепер визначення контурів алгоритм використовує як різниця кольорів, а й яскравість пікселів. Патерни Z, U і L залишаються, а також з'являються діагональні патерни. Це допомагає точніше малювати гострі грані об'єктів.
Результат згладжування SMAA. Зверніть увагу на дерево та листя біля будівлі
На жаль, як і два попередники, цей тип згладжування в іграх теж замилює картинку, тому деякі окремі дрібні об'єкти (такі як частинки бруду або подряпини) розмиваються.
TXAA/TAA (Temporal Anti-Aliasing)
Цей тип згладжування, розроблений Nvidia, не лише бореться із зазубринами пікселів, а й усуває непотрібне тремтіння об'єктів.
Перша проблема вирішується поєднанням та оптимізацією двох типів згладжувань: MSAA та SMAA. З тремтінням алгоритм бореться за допомогою аналізу кількох попередніх кадрів. Тому цей тип ще називають тимчасовим згладжуванням (оскільки він аналізують кадри, які були деякий час тому).
Результат роботи згладжування TAA
Таке згладжування відмінно працює при статичному або майже статичному зображенні. Як тільки сцена стає динамічною, алгоритм починає споживати багато ресурсів. До того ж можуть почати з'являтися артефакти, викликані залишковим зображенням минулих кадрів.
DSR (Dynamic Super Resolution)
Згладжування теж прямо від Nvidia. Алгоритм нагадує SSAA.Різниця в тому, що DSR просто запускає гру в більшій роздільній здатності екрану. Після цього, як і SSAA, він малює кадр, а потім зменшує картинку до оригінального дозволу.
З переваг, що випливають: ви зможете робити 4К скріншоти на Full HD моніторі, наприклад. Однак, якщо гра не до кінця оптимізована під цей тип згладжування, то інтерфейс гри та чутливість миші можуть зменшитися, так як по суті ви граєте на більшій роздільній здатності, ніж у вашого монітора.
CSAA/CFAA (Coverage Sampling Anti-Aliasing/Custom-Filter Anti-Aliasing)
Поліпшена версія MSAA. Дає якість картинки на рівні MSAA x 8, але при цьому споживає ресурси, як MSAA x 4. Замилювання майже немає.
Поліпшення алгоритму досягнуто тим, що в розрахунок беруться дані про сусідні пікселі. Це дозволяє більш точно провести згладжування, не торкаючись дрібних об'єктів, які не повинні розмиватися.
Результат восьмиразового згладжування CSAA
Примітка Багато алгоритмів згладжування під час обробки зображення враховують не тільки сусідні пікселі, а й окремо їх субпікселі (так-так, ті самі R, G і B канали) - все залежить від будови та особливостей матриці вашого монітора.
На зображенні нижче видно, що згладжуванні тексту беруть участь не повноцінні пікселі, лише деякі їх канали: червоний, синій і жовтий (суміш червоного і зеленого).
Технологія субпіксельного рендерингу Clear Type
Яке згладжування вибрати у грі?
Якщо ви – власник потужного ігрового комп'ютера, а в налаштуваннях графіки бачите SSAA-згладжування – без роздумів вибирайте його. Але якщо ви переоцінили сили вашого ПК, і таке рішення сильно вдарило по частоті кадрів, спробуйте знайти SMAA або TXAA (TAA).
Якщо ваш комп'ютер бюджетніший, завжди є варіанти використання FXAA, MLAA або MSAA.
До того ж, крім експериментів із типом згладжування, можна намагатися змінювати ступінь згладжування (якщо таке передбачено розробником).
Отже, з цієї статті ви дізналися багато різних наборів букв. Перевірте, чи вдалося щось запам'ятати. ?