Почему портирование Doom на Neo Geo практически невозможно.
Архитектура графики, основанная на спрайтах, делает создание 3D-моделей от первого лица сложной задачей.
Обратите внимание на отсутствие картриджа Doom на этом фото. Источник: Wikimedia. Обратите внимание на отсутствие картриджа Doom на этом фото. Источник: Wikimedia.
Здесь, в Ars, мы с удовольствием рассказывали о версиях Doom, которые работают на всём подряд: от беспроводных наушников и принтеров до notepad.exe в Windows и даже внутри самого Doom. Поэтому, когда мы слышим, что игровое оборудование 90-х (или более поздних) не может запустить Doom, мы настораживаемся.
Речь идёт о Neo Geo, игровой консоли начала 90-х, которую игроки определённого возраста помнят по её заоблачной цене на старте продаж и относительно высокой для того времени производительности. Однако, несмотря на эту относительную мощность, в новом увлекательном видео от Modern Vintage Gamer утверждается, что архитектура Neo Geo делает её особенно непригодной для портирования известной своей лёгкостью в переносе игры от id Games.
На первый взгляд, Neo Geo кажется вполне подходящей для запуска Doom. Процессор Motorola 68000, установленный в консоли, — это тот же самый, что используется в Commodore Amiga, для которой за эти годы вышло немало самодельных портов Doom.
Но, помимо недостатка памяти, Neo Geo была разработана специально и исключительно для обработки спрайтовой 2D-графики, хранящейся на картридже. Центральный процессор просто записывает номера тайлов, позиции и «значения сжатия» (для масштабирования) в видеопамять, а затем позволяет видеопроцессору считывать соответствующие спрайты из ПЗУ символов для отображения. Это ПЗУ символов даже не адресуется шиной процессора 68000, а это значит, что система не может считывать текстуры или отдельные пиксели спрайтов для постобработки.
К сожалению для потенциальных разработчиков Doom, Neo Geo также не имеет режима растровой графики, который помог бы обойти эти ограничения, связанные со спрайтами. В системе нет буферов кадров или битовых плоскостей в стиле Amiga, которые позволили бы беспрепятственно отрисовывать пиксели в любой части экрана. Это означает, что даже полностью программный рендерер Doom на Neo Geo не будет иметь прямого способа отрисовать результаты на экране.
Нео Вольфенштейн
Хотя эти ограничения могут помешать портированию Doom на Neo Geo, система всё же может справиться с более простым шутером от первого лица, таким как Wolfenstein 3D. Modern Vintage Gamer подготовили простую демонстрацию трассировки лучей для Neo Geo в видеоролике, которая имитирует 90-градусные стены, плоские полы и потолки из этой игры.
В этой демонстрации с использованием трассировки лучей «стены» представляют собой просто спрайты шириной в 4 пикселя, масштабированные аппаратным обеспечением Neo Geo. Источник: Modern Vintage GamerПринцип работы трассировщика лучей заключается в отправке лучей из позиции игрока для определения расстояния до первой стены, которую игрок видит на этом участке. Затем эти данные определяют высоту и цвет каждого из 80 спрайтов шириной 4 пикселя, расположенных горизонтально по экрану, которые действуют как элементы стены. Поскольку аппаратное обеспечение масштабирования Neo Geo может эффективно растягивать эти спрайты по вертикали без значительных накладных расходов, данные трассировки лучей можно быстро преобразовать в приблизительное изображение вида от первого лица.
Простая, неоптимизированная система трассировки лучей Neo Geo от MVG в настоящее время работает всего на восьми кадрах в секунду при эмуляции без врагов из Wolfenstein 3D и игровой логики. И система трассировки лучей все равно будет совершенно недостаточной для таких элементов Doom, как приподнятые платформы, лестницы, лифты, текстурированные стены и потолки и т. д.
По всем этим причинам MVG считает, что единственный практический способ запустить Doom на Neo Geo — это установить в картридж дополнительное оборудование, например, чип Super FX2, который использовался в ограниченной версии игры для SNES. В противном случае, по его мнению, система, скорее всего, останется без Doom в обозримом будущем.
«Я не хочу говорить, что это невозможно, потому что как только вы скажете, что что-то невозможно, вызов брошен», — добавил МВГ.
Источник: arstechnica.com


Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.