Path of Exile: Предстоящие Улучшения Использования Видеопамяти

Предстоящие Улучшения Использования Видеопамяти
Опубликовано 13 Май, 2021 0 likes

В ближайшем будущем мы внесем некоторые улучшения в то, как Path of Exile использует вашу видеопамять. В этом посте объясняется, какое влияние это окажет на ваш игровой процесс и когда ожидать патча.

Видеокарты имеют определенный объем видеопамяти (VRAM), которая используется для хранения различных ресурсов, которые мы рендерим для текущей игровой сцены. Если у вас закончится VRAM во время игры под управлением DirectX 11, нашего средства визуализации по умолчанию, игра все равно будет работать, но частота кадров снизится, поскольку она должна отображать ресурсы, находящиеся в системной памяти. Графический драйвер также будет перемещать ресурсы между основной памятью и VRAM, что еще больше замедлит работу. Для пользователей, у которых недостаточно VRAM, производительность под DirectX11 довольно ужасна.

В то время как API рендеринга Vulkan обладает всеми преимуществами производительности, у него нет резервной копии по умолчанию для системной памяти, которая присутствовала в DirectX 11, и его поведение по умолчанию-просто сбой при нехватке памяти. Когда мы впервые выпустили бета-версию нашего рендерера Vulkan, некоторые пользователи испытывали сбои во время интенсивного игрового процесса с памятью.

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

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

Однако что вы показываете, когда текстура еще не загружена? Чтобы не отображать полностью черную текстуру, мы добавили метод, называемый потоковой передачей текстур, при котором у нас всегда есть самые низкие уровни mip (т. Е. версии с низкой детализацией) каждой текстуры в памяти, чтобы мы могли быстрее отображать что-то приблизительно правильное. Это более желательно, чем альтернативы со значительным падением частоты кадров или вообще без рисования. Хотя потоковая передача текстур является безвредной визуальной оптимизацией, ее часто неправильно приписывают проблемам, которые на самом деле связаны с тем, что игра выгрузила актив, которого на самом деле не должно было быть.

Несколько абзацев назад мы описали наше использование VRAM в этой системе как консервативное. Это означает, что наша текущая реализация не агрессивно использует всю вашу VRAM, и это приводит к тому, что игроки расстраиваются из-за того, что активы излишне выгружаются слишком рано (например, когда вы замечаете, что некоторые элементы выглядят размытыми в течение короткого времени).

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

Наш первоначальный план состоял в том, чтобы развернуть это обновление в следующем патче движка, который ранее был запланирован на неделю или две до развертывания 3.15 в июле. Однако мы очень недовольны текущей ситуацией, поэтому мы работаем над тем, чтобы вытащить эту функцию для развертывания в ближайшем будущем (в идеале на следующей неделе, но мы обновим эту оценку по мере продолжения тестирования).

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

0 Комментарии:

оставьте ответ

Ваш электронный адрес не будет опубликован.

Смотрите также в категории Игры