Блум эффект в играх что это

XNA Draw: улучшаем графику игры

Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

Все мои восемь статьей на хабре — статьи о геймдеве, большая часть из них связана с таким замечательным фреймворком, как XNA. Первым знакомством с XNA была статья о создании музыкальной игрушки, потом сложность статей нарастала, я начал писать об системах частиц, а затем о шейдерах и еще шейдерах.

В целом — на шейдерах я и хотел закончить, однако, стоить немного дополнить их, я расскажу о нескольких алгоритмах для улучшения графики в игре. Примеры улучшений:

Если интересно — под хабракат.

Введение

Затронем мы опять 2D составляющую игр и будем работать только с пиксельными шейдерами.

Эта статья будет немного отличаться от других моих, тут сразу будет идти и теория и практика, подразумевается, что вы уже читали статьи о шейдерах тут и еще тут.

Рассмотрим все эффекты, которые использовались в игре и пару эффектов, которые там отсутствовали, видео довольно старое, а игра уже потерпела качественные изменения с тех пор.

Distortion (искажение)

Самый первый эффект, который бросается в глаза — искажения:
Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

Этот эффект не обрабатывается специальным шейдером, в целом, он такой же, какой и в статье, которую я писал ранее.

Давайте разберем тот эффект взрыва.

Тут используются следующие текстуры:
Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

В самом верхнем левом углу — текстура дыма, дым образует «кольца» вокруг взрыва, яркую область в взрыве, которая быстро гаснет и шлейф от ракеты. Является основной текстурой этого эффекта. Используется как видимая текстура и искажающая текстура.

Далее — точка, рядом с дымом, благодаря ей — есть молнии, которые исходят из центра взрыва. Так же, используется как видимая текстура и искажающая текстура.

Ну и для дополнительной красоты — частицы от взрыва, самая большая текстура на стрипе. Но тут стоит отметить, что игрок её никогда не увидит на прямую. Она является искажающей и довольно быстро исчезает.

HUD Distortion (искажение интерфейса)

Второй эффект, который можно было заметь в ролике — искажение интерфейса.
На этот эффект меня вдохновили такие игры, как, например, Crysis 2 и Deus Ex: Human revolution. Там, при гибели — интерфейсы начинали разнообразно искажаться. Мне это показалось интересным. Так же, я еще усилил искажения интерфейса при простом попадании.

К примеру, гибель игрока:
Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

Этот шейдер очень похож на тот, что был раньше — искажение изображения. Однако, в корню отличается от него. Искажения происходят не от карты искажений, а от математических формул, давайте рассмотрим код шейдер (шейдер максимально упрощен для понимания):

Код довольно прост, а сам по себе результат шейдера смотрится эффектно.

Static texture to dynamic texture

Создание «живых» текстур из менее живых. К примеру, мало кто заметил — мерцания далеких звезд в ролике выше. Хотя, сама текстура — является статической.

Рассмотрим этот шейдер:

Если яркость пикселя (grayscale) больше 20% — создается легкое мерцание, если больше 80% — сильное.
На картинке этого показать нельзя, все видно в ролике.

Ну и рассмотрим еще два эффекта, которых в ролике нет и реализованы они в более новых версиях.

Bloom (эффект свечения)

Эффект свечения знаком всем, так же именуется как Bloom (блюм).
Идея проста, извлекаем из изображения яркие области (введен некоторых порог), затем рисуем нашу сцену и поверх размытую сцену. Яркие области начинают светиться.

Примеры в картинках:
Яркость сцены:
Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

Оригинальная сцена:
Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

Готовая сцена:
Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

Рассмотрим код шейдера, он состоит из двух частей, шейдер который извлекает яркость и шейдер который формирует финальное изображение.
Листинг шейдера, который извлекает яркость:

Листинг шейдера, который дает финальный результат:

Motion Blur (размытие в движении)

Ну и последний эффект, это размытие в движении (motion blur), в совокупности с другими эффектами — придает им «мягкость», резко двигаем мышкой и:

Блум эффект в играх что это. image loader. Блум эффект в играх что это фото. Блум эффект в играх что это-image loader. картинка Блум эффект в играх что это. картинка image loader.

Реализуется он тоже, довольно просто:

Где direction_move — вектор движения.

Заключение

С помощью таких вот вещей — можно придать своей игре большую «изюминку», причем такие вещи делаются довольно просто.

На этом, я думаю, «курс» по 2D играм окончен, через некоторое время — начну писать о создании трехмерных игр.

Источник

Руководство. Тестирование производительности.Часть 2

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Ambient Occlusion

Под названием «Преграждение окружающего света» в меню скрывается Ambient Occlusion. Игра поддерживает HBAO+, более простой режим SSAO и режим без AO.

Блум эффект в играх что это. ZoQs3ta1HKaJzUG4sZCWCA. Блум эффект в играх что это фото. Блум эффект в играх что это-ZoQs3ta1HKaJzUG4sZCWCA. картинка Блум эффект в играх что это. картинка ZoQs3ta1HKaJzUG4sZCWCA.

Блум эффект в играх что это. 7RHHETc vXY4vqmnIko8iQ. Блум эффект в играх что это фото. Блум эффект в играх что это-7RHHETc vXY4vqmnIko8iQ. картинка Блум эффект в играх что это. картинка 7RHHETc vXY4vqmnIko8iQ.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Сразу отметим значительную разницу в картинке без AO и при простом SSAO. Второй вариант добавляет тени от мелких объектов и дополнительно усиливает тени в месте стыка предметов, например, между камнями. HBAO+ усиливает комплексное затенение в результате влияния объектов друг на друга. Усиливаются оттенение кустов и темные зоны между камнями. На древнем храме четче просматриваются колонны и детали архитектуры благодаря лучшей градации светлых и темных зон. При обычном SSAO затенение того же храма более равномерное.

Блум эффект в играх что это. PskMsO1Uq5kW F1E79mAOg. Блум эффект в играх что это фото. Блум эффект в играх что это-PskMsO1Uq5kW F1E79mAOg. картинка Блум эффект в играх что это. картинка PskMsO1Uq5kW F1E79mAOg.

Rise of the Tomb Raider

Между обычным AO и HBAO+ разница в производительности 5–6%. Между AO и самым простым режимом разница менее 3%. На слабых видеоадаптерах можно отказаться от HBAO+, но рекомендуется сохранить хотя бы простой режим AO.

PureHair

Технология PureHair позволяет реализовать пышные волосы из раздельных прядей с достоверной физической моделью поведения. Такие волосы рассыпаются по плечам, реагируют на движения.

Блум эффект в играх что это. Bsl fJVlOhooz6KCjHJrpg. Блум эффект в играх что это фото. Блум эффект в играх что это-Bsl fJVlOhooz6KCjHJrpg. картинка Блум эффект в играх что это. картинка Bsl fJVlOhooz6KCjHJrpg.

PureHair Very High

Блум эффект в играх что это. 3lXHddEnAjcSnI6kPaDlhw. Блум эффект в играх что это фото. Блум эффект в играх что это-3lXHddEnAjcSnI6kPaDlhw. картинка Блум эффект в играх что это. картинка 3lXHddEnAjcSnI6kPaDlhw.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Между простыми волосами и PureHair разница колоссальная. Это сильно влияет на образ Лары и ее восприятие. При этом между двумя уровнями качества PureHair особых различий нет, при максимальном качестве рендерится до 30000 отдельных волосков.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Rise of the Tomb Raider

Между разными уровнями качества PureHair минимальная разница в производительности. Хотя при крупных планах эта разница может быть более высокой. Отключение технологии придает ускорение около 5% в тестовой сцене.

Дополнительные визуальные эффекты

Различные визуальные эффекты, которые не предполагают разные уровни градации, рассмотрим вместе. Вначале изучим их влияние на картинку, а потом проведем единое сравнение производительности, где на одной диаграмме будут отображены изменения в случае отключения каждого из этих эффектов.

Размытие по краям экрана

Этот эффект (Vignette Blur) реализует некоторое размытие по краям в определенных ситуациях. Лучше всего это проявляется, когда Лара передвигается в скрытном режиме. Пример ниже.

Блум эффект в играх что это. glrGRCUynC7DD8KlYfmIwg. Блум эффект в играх что это фото. Блум эффект в играх что это-glrGRCUynC7DD8KlYfmIwg. картинка Блум эффект в играх что это. картинка glrGRCUynC7DD8KlYfmIwg.

Размытие при движении

Привычное размытие Motion Blur, которые смазывает контуры объектов при быстрых движениях, усиливая ощущение скорости и создавая определенный киношный эффект. Яркий пример ниже.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Тесселяция

Тесселяция используется для усложнения геометрии поверхности земли, поверхности грязи и талого снега. Тесселяция улучшает деформацию снега при ходьбе по сугробам, хотя при ее отключении следы в снегу не исчезают.

Ниже пример влияния тесселяции на поверхность земли. Эта технология делает ее более бугристой и выделяет некоторые камни.

Блум эффект в играх что это. KClZkTkLFjIG6GfaNo45Gw. Блум эффект в играх что это фото. Блум эффект в играх что это-KClZkTkLFjIG6GfaNo45Gw. картинка Блум эффект в играх что это. картинка KClZkTkLFjIG6GfaNo45Gw.

Блум эффект в играх что это. K1VFu5j48m7OqqWB7T iQ. Блум эффект в играх что это фото. Блум эффект в играх что это-K1VFu5j48m7OqqWB7T iQ. картинка Блум эффект в играх что это. картинка K1VFu5j48m7OqqWB7T iQ.

Еще один пример влияния тесселяции на поверхность снега.

Блум эффект в играх что это. xpvYq7U 0pTrRRXu5XtZDA. Блум эффект в играх что это фото. Блум эффект в играх что это-xpvYq7U 0pTrRRXu5XtZDA. картинка Блум эффект в играх что это. картинка xpvYq7U 0pTrRRXu5XtZDA.

Блум эффект в играх что это. K srZdgRsjl S34S8mDoZA. Блум эффект в играх что это фото. Блум эффект в играх что это-K srZdgRsjl S34S8mDoZA. картинка Блум эффект в играх что это. картинка K srZdgRsjl S34S8mDoZA.

С тесселяцией поверхность снега сложнее, больше бугров. Общее применение тесселяции практически повсеместное, поэтому ее влияние на производительность должно быть весомым. Результаты тестов будут ниже.

Bloom-эффект

Эффекты Bloom усиливают яркость света, добавляют ощущение объемного освещения и лучей, пробивающихся сквозь щели. В качестве примера два скриншота.

Блум эффект в играх что это. nS JVyOCiO44DHf7DsUfpA. Блум эффект в играх что это фото. Блум эффект в играх что это-nS JVyOCiO44DHf7DsUfpA. картинка Блум эффект в играх что это. картинка nS JVyOCiO44DHf7DsUfpA.

Блум эффект в играх что это. g3aV9LRb wyekrgT2OdKeQ. Блум эффект в играх что это фото. Блум эффект в играх что это-g3aV9LRb wyekrgT2OdKeQ. картинка Блум эффект в играх что это. картинка g3aV9LRb wyekrgT2OdKeQ.

Без Bloom пропадает ощущение мягкого плотного света, пробивающего сквозь щель, нет бликов на камнях в нижней части кадра. Конечно, некоторые не любят такие эффекты. Впрочем, некоторые не видят разницу и в картинке с тенями и без — лишь бы четко было. Но наша статья не про них, а про тех, кто умеет получать эстетическое удовольствие от красивой картинки.

Блики объектива

Добавляет эффекты бликов и цветовые разводы, как при наблюдении через объектив камеры. Этот эффект Lens Flares связан с эффектом Bloom. Давайте взглянем на прошлую сцену.

Блум эффект в играх что это. nS JVyOCiO44DHf7DsUfpA. Блум эффект в играх что это фото. Блум эффект в играх что это-nS JVyOCiO44DHf7DsUfpA. картинка Блум эффект в играх что это. картинка nS JVyOCiO44DHf7DsUfpA.

Блум эффект в играх что это. hgJ0acm82Yb LUXtlpNBUA. Блум эффект в играх что это фото. Блум эффект в играх что это-hgJ0acm82Yb LUXtlpNBUA. картинка Блум эффект в играх что это. картинка hgJ0acm82Yb LUXtlpNBUA.

Bloom, no Lens Flares

Без эффекта исчезают все блики в виртуальном объективе. А если в дополнение к этому отключить еще и Bloom, то получим совсем печальный эффект и изображение, лишенное какого-либо ощущения объемного освещения.

Блум эффект в играх что это. KIoEi8i6bYVu64AoeR8eFQ. Блум эффект в играх что это фото. Блум эффект в играх что это-KIoEi8i6bYVu64AoeR8eFQ. картинка Блум эффект в играх что это. картинка KIoEi8i6bYVu64AoeR8eFQ.

No Bloom, no Lens Flares

По итогам видно, что отключение обоих эффектов крайне негативно для итоговой картинки. Но если нужно чем-то жертвовать, то можно отключить блики объектива, Bloom рекомендуем сохранят в любых условиях.

Отражения пространства экрана

Этот параметр (в оригинале называется Screen Space Reflections) добавляет отражения на соответствующих поверхностях. Хорошо видно по воде и лужам, коих в игре много.

Блум эффект в играх что это. HsLqV0uT 4RPZDYkTUyuZw. Блум эффект в играх что это фото. Блум эффект в играх что это-HsLqV0uT 4RPZDYkTUyuZw. картинка Блум эффект в играх что это. картинка HsLqV0uT 4RPZDYkTUyuZw.

Screen Space Reflections ON

Блум эффект в играх что это. HsLqV0uT 4RPZDYkTUyuZw. Блум эффект в играх что это фото. Блум эффект в играх что это-HsLqV0uT 4RPZDYkTUyuZw. картинка Блум эффект в играх что это. картинка HsLqV0uT 4RPZDYkTUyuZw.

Screen Space Reflections OFF

Еще один пример ниже.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Screen Space Reflections ON

Блум эффект в играх что это. WuhPG0U9yiuaI71VSXUuFQ. Блум эффект в играх что это фото. Блум эффект в играх что это-WuhPG0U9yiuaI71VSXUuFQ. картинка Блум эффект в играх что это. картинка WuhPG0U9yiuaI71VSXUuFQ.

Screen Space Reflections OFF

Изменения явные, сильно влияют на восприятие. При достаточной мощности вашего видеоадаптера эффект лучше оставить включенным.

Эффекты экрана

Эффекты экрана (Screen Effects) добавляют пятна крови, грязи и дополнительные световые пятна в каких-то сюжетных сценах или при ранении. То есть проявляются только в определенные моменты. Влияние ясно, обойдемся без примеров.

Дополнительные эффекты. Тестирование

Перейдем к результатам тестирования. Напомним, что за основу бралась конфигурация очень высокого качества графики без сглаживания. Далее поочередно отключался один из параметров, остальные оставались неизменными.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Rise of the Tomb Raider

Наиболее серьезное влияние оказывает отключение тесселяции, что на GeForce GTX 960 позволяет выиграть более 6% производительности. Неплохой эффект оказывает отключение размытия по краям и размытия в движении, даже немного возрастает минимальный fps. Слабо влияет Bloom, но в тестовой сцене нет яркого солнца, при иных условиях влияние эффекта на производительность может быть серьезнее. При заметном влиянии на картинку отражения минимально сказались на уровне быстродействия. Блики объекта и эффекты экрана ожидаемо дают одинаковый результат с ними и без них, но это, опять же, связано с тем, что в тестовой сцене нет условий для проявления таких эффектов.

В качестве небольшого дополнения давайте сравним производительность при разных настройках. Не зря же предварительно изучалось влияние каждого отдельного параметра. Посмотрим, что предлагает игра при высоких предустановках, протестируем, и подберем режим максимального качества без потерь четкости и детализации, но с отключением некоторых эффектов.

Для режима ручных настроек было снижено качество мягких теней, глубина резкости, динамической листвы, эффекты размытия, блики и вместо HBAO+ выбран простой режим AO.

Блум эффект в играх что это. 4lF9bIPKoHXAQXLYtWbsqA. Блум эффект в играх что это фото. Блум эффект в играх что это-4lF9bIPKoHXAQXLYtWbsqA. картинка Блум эффект в играх что это. картинка 4lF9bIPKoHXAQXLYtWbsqA.

Rise of the Tomb Raider

Стандартные предустановки высокого качества не предусматривают отключение эффектов, но при этом снижается качество текстур, детализация и даже анизотропная фильтрация.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Rise of the Tomb Raider

Результаты сравнения очень высокого качества, ручных настроек и высоких предустановок ниже.

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Rise of the Tomb Raider

Отключение некоторых эффектов в сочетании с понижением мягкости теней и небольшого изменения плотности растительности дает ускорение в 14–15%. Между очень высоким и высоким уровнем качества разница 23–29%.

Качество отражения света

На днях игра обновилась. Патч добавил два новых пункта в меню настроек. Это качество отражения света, которое по умолчанию всегда стоит в обычном режиме, и фильтр Grain.

Блум эффект в играх что это. 4t0er6pEFF4jLo R4PGFyw. Блум эффект в играх что это фото. Блум эффект в играх что это-4t0er6pEFF4jLo R4PGFyw. картинка Блум эффект в играх что это. картинка 4t0er6pEFF4jLo R4PGFyw.

Rise of the Tomb Raider

Изучим влияние качества отражения света.

Блум эффект в играх что это. xsOmLzIl4ZBoH GUn2sNQA. Блум эффект в играх что это фото. Блум эффект в играх что это-xsOmLzIl4ZBoH GUn2sNQA. картинка Блум эффект в играх что это. картинка xsOmLzIl4ZBoH GUn2sNQA.

Reflection Quality Very High

Блум эффект в играх что это. . Блум эффект в играх что это фото. Блум эффект в играх что это-. картинка Блум эффект в играх что это. картинка .

Reflection Quality High

Блум эффект в играх что это. Vk 9EcLTGjg5P3IvLRemiw. Блум эффект в играх что это фото. Блум эффект в играх что это-Vk 9EcLTGjg5P3IvLRemiw. картинка Блум эффект в играх что это. картинка Vk 9EcLTGjg5P3IvLRemiw.

Reflection Quality Normal

Правильнее было бы данный параметр назвать качеством отражений, ведь именно в их четкости проявляется его влияние. Повышение качества улучшает детализацию отражений. Это хорошо заметно по лужам на земле. При этом блики на мокрой земле никак не меняются.

По итогам тестирования в новой версии наблюдался небольшой рост fps относительно первой версии игры, поэтому мы и вынесли это сравнение в конец нашей статьи. Вместо привычного сочетания 31/36,5 fps вышло 31/37 fps.

Блум эффект в играх что это. e iENkfF MS0owTEXDwlrg. Блум эффект в играх что это фото. Блум эффект в играх что это-e iENkfF MS0owTEXDwlrg. картинка Блум эффект в играх что это. картинка e iENkfF MS0owTEXDwlrg.

Rise of the Tomb Raider

Дополнительное повышение качества отражений на один пункт минимально сказывается на общем быстродействии. Максимальное качество бьет по производительности заметнее, снижая результаты на 3–5% относительно начального режима.

Film Grain

Добавляет фильтр зернистости. Некоторое подобие этого эффекта заметно в постановочных сценах, влияние минимальное. Из того что было нами замечено — слабое влияние на интенсивность свечения солнца в определенных сценах.

Блум эффект в играх что это. 4W96F7IP25z5PyB4s9HoqQ. Блум эффект в играх что это фото. Блум эффект в играх что это-4W96F7IP25z5PyB4s9HoqQ. картинка Блум эффект в играх что это. картинка 4W96F7IP25z5PyB4s9HoqQ.

Блум эффект в играх что это. qfj3h3TeYFRWW26zn2OGdQ. Блум эффект в играх что это фото. Блум эффект в играх что это-qfj3h3TeYFRWW26zn2OGdQ. картинка Блум эффект в играх что это. картинка qfj3h3TeYFRWW26zn2OGdQ.

Фильтр немного усиливает слепящий эффект солнца, и на фоне темных скал действительно проявляется некоторая зернистость. На общей производительности в нашей тестовой сцене не сказывается вообще.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *