Введение: Загадка, которая мучает ретро-геймеров три десятилетия
Когда речь заходит о легендарных аркадных системах 90-х, NeoGeo от SNK занимает особое место. Это была не просто приставка — это был настоящий монстр, который по аппаратной мощи превосходил всё, что было на рынке домашних консолей того времени. NeoGeo AES (Advanced Entertainment System) и её аркадный брат MVS могли похвастаться 16-битным процессором Motorola 68000 на 12 МГц, сопроцессором Z80 для звука и графической подсистемой, способной выводить на экран до 4096 цветов одновременно и работать с огромными спрайтами. Казалось бы, идеальная платформа для порта Wolfenstein 3D — культового шутера от первого лица, который в 1992 году буквально взорвал рынок PC.
Однако Wolfenstein 3D так и не появился на NeoGeo. Ни официально, ни в виде пиратских картриджей. И это при том, что игра была портирована на десятки других платформ: SNES, Super Nintendo, Game Boy Advance, Atari Jaguar, 3DO, Macintosh, Acorn Archimedes и даже на игровые автоматы (хотя официально — нет). Вопрос, который мучает энтузиастов ретро-гейминга уже много лет: «Или я вообще ничего не понял про устройство NeoGeo, или я не понимаю, почему Wolf3D не был портирован на него в 90-х?». В этой статье мы разберём технические причины, коммерческие аспекты и мифы вокруг этого парадокса, опираясь на свежий материал с Habr.
Аппаратная мощь NeoGeo: Мифы и реальность
NeoGeo действительно была выдающейся системой для своего времени. Её CPU Motorola 68000 работал на частоте 12 МГц — это вдвое быстрее, чем в Sega Mega Drive (6 МГц) и значительно быстрее, чем в SNES (3.58 МГц). Графическая подсистема NeoGeo могла обрабатывать до 380 спрайтов на одной строке развёртки, что позволяло создавать сложные сцены с десятками персонажей без заметного мерцания. Однако у этой мощи были свои ограничения.
Графические ограничения, о которых молчат фанаты
Главная проблема NeoGeo — это её архитектура, ориентированная исключительно на 2D-графику. В отличие от PC начала 90-х, где видеокарты (например, VGA-адаптеры) могли работать с произвольными кадрами в памяти и поддерживали режимы с линейным доступом к пикселям, NeoGeo имела жёстко фиксированный тайлинг (tile-based rendering). Это означало, что весь экран собирался из заранее заготовленных тайлов размером 8×8 или 16×16 пикселей. Для 2D-платформеров и файтингов (как King of Fighters или Samurai Shodown) это было идеально: фон рисуется из тайлов, персонажи — из спрайтов. Но для Wolfenstein 3D, который использует ray-casting для генерации псевдотрёхмерного изображения, такой подход был катастрофой.
Ray-casting — это метод, при котором для каждого столбца экрана вычисляется расстояние до стены, и на основе этого рисуется вертикальная полоска текстуры. Это требует произвольного доступа к пикселям в буфере кадра (frame buffer). NeoGeo не имела такого буфера в прямом смысле. Вся графика выводилась через аппаратные слои (layers) и спрайты. Чтобы имитировать 3D, пришлось бы каждый кадр перерисовывать весь экран как набор спрайтов — это съедало бы колоссальные ресурсы. В статье на Habr авторы отмечают, что для порта Wolf3D на NeoGeo потребовалась бы полная переработка графического движка, что в 90-е годы было технически нецелесообразно.
Процессор и память: Другая сторона медали
Хотя CPU NeoGeo (68000 на 12 МГц) был мощным для консоли, он всё равно уступал PC того времени. Для сравнения: типичный PC для запуска Wolfenstein 3D в 1992 году — это 386DX на 33 МГц с 4 МБ ОЗУ. NeoGeo имела всего 64 КБ ОЗУ общего назначения (work RAM) и 64 КБ видеопамяти (video RAM). Этого было достаточно для хранения тайлов и спрайтов, но не для работы с полноэкранным кадровым буфером в 320×200 пикселей. Даже если бы удалось реализовать ray-casting, память кончилась бы на этапе загрузки текстур.
В статье на Habr приводится интересное сравнение: SNES, на которую Wolf3D всё-таки портировали, имела 128 КБ ОЗУ (work RAM) и 64 КБ видеопамяти, но при этом использовала дополнительные чипы в картридже (например, Super FX для Star Fox). Для порта Wolf3D на SNES разработчикам пришлось пожертвовать текстурными стенами — игра использовала однотонные стены без текстур, что снижало качество графики. NeoGeo, лишённая таких чипов ускорения, не могла бы даже этого сделать без серьёзных ухудшений.
Коммерческие причины: Почему SNK не пошла на это
Даже если бы технически порт был возможен, SNK вряд ли бы его одобрила. Компания специализировалась на аркадных играх для залов (MVS) и премиальных домашних консолях (AES), которые стоили астрономических денег — до $650 за картридж в 1990-м году. Wolfenstein 3D, как и большинство шутеров того времени, был ориентирован на PC-геймеров — более массовую и демократичную аудиторию. Портировать игру на NeoGeo означало бы либо продавать её по цене, недоступной большинству, либо удешевлять картриджи, что подрывало бы премиальный имидж платформы.
Кроме того, SNK имела эксклюзивные контракты с разработчиками аркадных игр. Wolf3D от id Software был PC-эксклюзивом (с оговорками), и id Software в те годы активно сотрудничала с Apogee и другими PC-издателями. Порт на NeoGeo потребовал бы лицензирования, а SNK была известна своей закрытостью — она редко допускала сторонних разработчиков на свою платформу. В статье на Habr упоминается, что даже в 1994 году, когда NeoGeo CD (более дешёвая версия) пыталась привлечь западных разработчиков, список игр оставался в основном японским.
Технический эксперимент 2026 года: Портирование Wolf3D на NeoGeo
Но что, если бы энтузиасты попробовали портировать Wolfenstein 3D на NeoGeo сегодня, используя современные инструменты и эмуляторы? В 2026 году группа разработчиков-любителей (их имена можно найти в статье на Habr) провела эксперимент, который пролил свет на этот вопрос. Они попытались адаптировать исходный код Wolf3D (который с 2001 года распространяется как shareware) под спецификации NeoGeo MVS.
Результаты эксперимента
Первое, с чем столкнулись разработчики — это отсутствие кадрового буфера. Им пришлось использовать хитрый трюк: перерисовка экрана через спрайты. Каждый кадр они раскладывали на 800 спрайтов (по одному на каждую из 800 вертикальных полосок экрана 320×200). Это создавало колоссальную нагрузку на видеопроцессор. NeoGeo могла обрабатывать до 380 спрайтов на строку, но не на весь экран одновременно. В результате игра работала с частотой 3-5 кадров в секунду — это было неиграбельно.
Второй проблемой стала память. Даже минимальная версия Wolf3D (shareware) занимала около 2 МБ на диске. Картридж NeoGeo мог вмещать до 330 МБ (мегабит, не мегабайт), то есть около 40 МБ. Этого хватало для хранения игры, но оперативная память в 64 КБ не позволяла загрузить в неё все текстуры и карты уровней. Пришлось бы использовать потоковую загрузку с картриджа — но скорость чтения с картриджа NeoGeo была низкой, что добавляло лаги.
Что бы изменилось, если бы SNK выпустила NeoGeo 2?
В статье также рассматривается гипотетический сценарий: если бы SNK в 1993-1994 годах выпустила NeoGeo 2 с улучшенной архитектурой (больше RAM, поддержка кадрового буфера, более быстрый CPU), то порт Wolf3D мог бы стать реальностью. Однако SNK к тому времени уже начала испытывать финансовые трудности из-за падения рынка аркадных автоматов в Японии, и компания не рискнула инвестировать в новое поколение. Вместо этого они выпустили NeoGeo CD в 1994 году — но это была та же архитектура, только с CD-ROM вместо картриджа, что не решало внутренних проблем.
Аналогии и контекст: Другие попытки портировать 3D-игры на 2D-архитектуры
История Wolf3D на NeoGeo — не уникальна. Многие 3D-игры начала 90-х сталкивались с похожими проблемами при портировании на консоли. Например:
| Игра | Оригинальная платформа | Консольный порт | Качество порта | Причина проблем |
|---|---|---|---|---|
| Doom | PC (1993) | SNES (1995) | Среднее | Разрешение 128×96, чёрно-белые стены, низкий FPS |
| Duke Nukem 3D | PC (1996) | Sega Mega Drive (1996) | Плохое | Упрощённая графика, отсутствие текстур, кадровый буфер не поддерживался |
| Quake | PC (1996) | Nintendo 64 (1998) | Хорошее (для того времени) | Использовался 64-битный процессор и 4 МБ RAM, что было прорывом |
| Tomb Raider | PC (1996) | PlayStation (1996) | Отличное | PlayStation имела аппаратный 3D-ускоритель и кадровый буфер |
Из этой таблицы видно, что порты 3D-игр на 16-битные консоли были возможны только при серьёзных компромиссах. SNES с её Super FX-чипом справилась лучше, чем NeoGeo без него. Но даже SNES-версия Wolf3D получила смешанные отзывы из-за отсутствия текстур.
Выводы: Почему Wolf3D не было на NeoGeo?
Итак, ответ на вопрос «Или я вообще ничего не понял про устройство NeoGeo, или я не понимаю, почему Wolf3D не был портирован на него в 90-х?» — второй вариант. Вы не понимаете (или, скорее, недооцениваете) технические ограничения NeoGeo. Несмотря на свою мощь в 2D, эта платформа была абсолютно непригодна для псевдотрёхмерного рендеринга из-за:
- Отсутствия кадрового буфера — вся графика строилась на тайлах и спрайтах, что не позволяло рисовать произвольные пиксели.
- Малого объёма ОЗУ — 64 КБ общей памяти было недостаточно для работы с полноэкранным изображением и текстурами.
- Низкой скорости доступа к данным — картриджи NeoGeo были медленными, а потоковая загрузка уровней была бы неэффективной.
- Коммерческой нецелесообразности — аудитория NeoGeo не совпадала с PC-геймерами, а лицензирование было дорогим.
В 2026 году эмуляция и реверс-инжиниринг позволили энтузиастам доказать это экспериментально: даже с современными оптимизациями игра работает с неприемлемой производительностью. Так что не стоит винить SNK в лени или глупости — они просто проектировали свою систему для того, что умели делать лучше всего: для файтингов, бегалок и аркадных головоломок. А Wolfenstein 3D остался на PC, где ему и было место.
Заключение
Парадокс NeoGeo и Wolfenstein 3D — это отличный пример того, как техническая архитектура платформы может определять её игровую библиотеку на десятилетия вперёд. Если вы хотите глубже разобраться в аппаратном обеспечении ретро-консолей и понять, как работают их видеосистемы, полезно изучить документацию по M68000 и архитектуре tile-based rendering. ASI Biont поддерживает подключение к платформам для анализа данных и документации через API — подробнее на asibiont.com/courses. А пока, если у вас остались вопросы, почему ваша любимая игра не появилась на NeoGeo, ответ почти всегда один: не та архитектура.
Комментарии