Разработчик показал «бесшовный открытый мир без загрузочных экранов на железе N64»

N64 открытый мир движок ретро Junkrunner 64 tomshardware.com

Разработчик продемонстрировал движок открытого мира для игры Nintendo 64, предлагающий «бесшовный, массивный мир с нулевыми экранами загрузки» на оригинальном оборудовании, преодолевая ограничения консоли. — tomshardware.com

Разработчик продемонстрировал движок открытого мира в игре для Nintendo 64, который обеспечивает «бесшовный, массивный мир с нулевыми экранами загрузки» на оригинальном оборудовании. По сути, Джеймс Ламберт и несколько других участников проекта Junkrunner 64 заставили 30-летнюю N64 обеспечить дальность прорисовки, сопоставимую с масштабами Skyrim. В видео ниже объясняется, как был достигнут этот подвиг. Большая часть этого видео демонстрирует игровой процесс и функции Junkrunner 64. Вы увидите, как милый персонаж ходит и ездит на джетбайке по гигантской среде с открытым миром в реальном времени, с обширной дальностью прорисовки. По сути, игрок может стоять в одном углу карты и видеть весь мир целиком. Любой, у кого есть опыт владения или игры на N64, знает о проблеме дальности прорисовки этой ретро-консоли. Это старая консоль своей эпохи, а системные ресурсы скудны по сравнению с тем, что ожидают разработчики в первую эру игр с открытым миром и далее. Типичные визуальные проблемы в мирах, которые пытаются быть слишком амбициозными, включают всплывающие объекты (pop-ups) и проникание (clipping). В частности, на расстоянии видео Ламберта подчеркивает феномен Z-fighting, когда некоторые объекты, более близкие к пользователю, фактически могут быть скрыты объектами, находящимися дальше. Разработчик объясняет, что N64 имеет 15-битный Z-буфер, который может хранить ~32 000 уникальных значений. Но в его тестах разработки игр около 90% этих значений используются для объектов, находящихся очень близко к камере. Ресурсов не хватает для множества удаленных объектов в игре с открытым миром, что приводит к Z-fighting. Что можно сделать, чтобы исправить всплывающие объекты и бороться со случаями, когда более близкие объекты скрываются за более удаленными? «Решение состоит в том, чтобы я просто дважды отрисовывал мир. Сначала я отрисовываю все, что находится далеко, уменьшенное примерно в 100 раз, а затем я делаю отдельный проход, в котором отрисовываю все, что находится близко», — объясняет Ламберт. «Таким образом, я получаю лучшее из обоих миров. Я могу отрисовывать большие объекты в малом масштабе, где детали не имеют значения. А затем, когда я отрисовываю объекты близко, я могу сохранить эту ближнюю плоскость отсечения и рендерить объекты более детально». Итак, это одно решение, но ограничения памяти и соображения производительности остаются. Еще одно новшество, которое было внедрено в Junkrunner 64 для смягчения нехватки вычислительной мощности и памяти, — это реализация в движке тайлов мира с различными уровнями детализации, хитро наложенных друг на друга. Текстурирование в демонстрационной игре было выполнено при участии коллеги-разработчика Pyroxene с использованием техники, называемой запеканием (baking). Это реализация освещения и деталей материалов непосредственно в текстурах, особенно на моделях с низкой детализацией. Кроме того, Pyroxene работал над новым типом тумана для N64: реализацией градиентов тумана со смешанными RGB-цветами на расстоянии, а также локально окрашенного тумана. Это еще больше улучшает визуальные эффекты открытого мира. В Junkrunner 64 карта изначально скрыта, как и во многих современных играх с открытым миром, и исследование окружения постепенно раскрывает карту. К счастью, есть сверхбыстрый ховерцикл со скоростью 180 миль в час, который можно получить и улучшить, чтобы передвигаться. Ближе к концу видео мы видим небольшой сегмент игрового процесса, демонстрирующий исследование карты на ховерцикле. Ламберт завершает видео, анонсируя новую (безымянную) полноценную игру, которая выйдет для N64, ModRetro и Analogue 3D. Она, разумеется, будет использовать вышеупомянутые технологии. Вы можете скачать код демонстрационной версии Junkrunner 64, которая была основной темой видео. Версия 2.1 теперь доступна на GitHub в виде файла z64 размером 16,5 МБ для ваших эмуляторов, флэш-карт и т. д. Исходный код также там.

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

Похожие новости: