MOUNT AND BLADE 2 BANNERLORD: глобальное освещение


Bannerlord 

Приветствую воинов Кальрадии!

Освещение - чрезвычайно важный аспект любой современной игры. При плохом освещении самые детализированные модели и текстуры кажутся тусклыми и безжизненными, в то время как хорошее освещение помогает объединять различные визуальные элементы на экране, обеспечивая более реалистичную и эстетически привлекательную полировку. Это то, что мы хорошо знаем, и именно это привело к появлению Global Illumination (GI) в нашем игровом движке некоторое время назад (о чем мы кратко упоминали в то время в нашем блоге "Обновление движка 1.4").

 

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

Итак, что такое GI? Проще говоря, GI - это система, которая моделирует, как свет отражается от поверхностей на другие поверхности, или, другими словами, непрямое освещение. Это позволяет свету, излучаемому источником, например факелом, взаимодействовать с окружающими объектами более естественным образом, при этом часть света поглощается объектом, а остальная часть отражается на других объектах. Конечный результат - гораздо более реалистичное представление о том, как свет действует в реальном мире.

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

 

Для нашей реализации мы черпали вдохновение из нескольких методов. В основном алгоритме освещения используется метод из предварительно рассчитанной передачи излучения для рендеринга в реальном времени в условиях динамического освещения низкой частоты (Sloan, et al, 2002). В дополнение к этому мы внедрили в игру офлайн трассировщик лучей, чтобы обеспечить правильное освещение в соответствии с основной правдой. После этого мы изменили некоторые уравнения, чтобы на игровой процесс не оказывалось негативного влияния (например, увеличивая окружающий свет факелов).

При использовании методов на основе зондов, таких как тот, который использует наш движок, основной проблемой является утечка света, которая может резко снизить качество изображения. Чтобы решить эти проблемы с утечками, мы используем алгоритм карты теней, описанный в слайде «Облучение и освещение» на слайде «Видимость» (Morgan McGuire, 2017). Однако наиболее сложной и трудоемкой задачей было внедрение процесса, который может автоматизировать размещение зонда, размещение карты теней световых утечек и процесс выпекания.

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

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

 

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

MOUNT BLADE 2 BANNERLORD (основное)
Об игре




- используйте эту кнопку если вы обнаружили ошибку/искажение содержимого/отсутствие контента в новости или если хотите сообщить администрации о выходе новой версии мода и т.п.

Комментариев 8

Друг сообщества
Дима Гончар
Титул: Король Британии
Офлайн 9 ноября 2019 00:27 поделиться
Блох после сушки: Теперь освещение в сценах делается нажатием одной кнопки в редакторе и имеет очень хорошую оптимизацию


Царь
syabr
Титул: Главный динозавр и ГГ сайта
Офлайн 9 ноября 2019 00:54 поделиться
Ужасно. Тоесть, если мне надо будет осветить один угол в каком-нибудь логове или пещере, осветится всё пространство?((( Ааа, верните обратно ручное управление! smile18 


Танки грязи не боятся, сама отвалится
Я на Всадниках Кальрадии: https://rusmnb.ru/index.php?action=profile;u=18932
Офлайн 9 ноября 2019 07:54 поделиться
syabr, факел в помощь)


Друг сообщества
Дима Гончар
Титул: Король Британии
Офлайн 9 ноября 2019 08:49 поделиться
syabr, да, факел поставь. Теперь не надо возиться с "лампочками" разных видов


Царь
syabr
Титул: Главный динозавр и ГГ сайта
Офлайн 9 ноября 2019 10:57 поделиться
Старый Пердун 23,Дима Гончар, вся прелесть лампочек в том, что можно сделать разный по насыщенности свет. Сам факел без лампочки освещать не будет. Можно было сделать ярче или "теплее", а теперь видимо будет одинаково((


Танки грязи не боятся, сама отвалится
Я на Всадниках Кальрадии: https://rusmnb.ru/index.php?action=profile;u=18932
Дружинник
Alkov
Офлайн 10 ноября 2019 12:20 поделиться
может еще доработают.....


Мододел
Гончий Пёс
Офлайн 11 ноября 2019 10:31 поделиться
 А блог про освещение вроде уже был..


Царь
syabr
Титул: Главный динозавр и ГГ сайта
Офлайн 11 ноября 2019 12:14 поделиться
Так у них всё по второму разу, а осады аж по третьему)


Танки грязи не боятся, сама отвалится
Я на Всадниках Кальрадии: https://rusmnb.ru/index.php?action=profile;u=18932
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Онлайн

Сейчас на сайте: 46
Гостей: 44

Пользователи: 
- отсутствуют

Последние комментарии

MOD Napoleon: Conquest Europe
kitel, 8 октября 2024 20:54
вопрос такой. А чем выделился этот мод по сравнению с орлом? я понимаю что этот мод давно заброшен...
Mount & Blade II: Bannerlord - лошади
Ivamar, 7 октября 2024 08:35
Играю на коне, прокачал верховую езду на 270, каждый день битвы но сидя в городе заметил: за неделю...
MOD Between Empires
Onsl, 6 октября 2024 23:43
kitel,  Заходишь в папку Modules,выбираешь нужный тебе мод,нажимаешь на него,находишь потом папку...
MOD Between Empires
kitel, 5 октября 2024 12:48
нет а где их найти чтобы удалить?...
MOD Between Empires
Onsl, 5 октября 2024 10:39
kitel, Удалял файлы font.data и font.dds?...
MOD WB: Restart!
Sparta_azazel, 4 октября 2024 13:41
Версия 2.6 выглядит очень неиграбельно. Постоянные вылеты в любой точке карты...
MOD Between Empires
kitel, 4 октября 2024 13:13
поставил руссификатор но вместо слов точки или пустота. в чем дело?...
Прохождение мода A CLASH OF KINGS
Чикабой, 28 сентября 2024 23:17
Павел Романов, Обычно такое если праздники, либо  у фракций 1 город остался, и они не могут...
Mount & Blade - Эпоха турниров (Warband) 1.174
Чикабой, 28 сентября 2024 23:16
зашел я на сервер Триолдов в нативе, этоже надо так было угробить сервак, чтобы сделать ограничение...