- Описание концепции vdp
- 3 плоскости графики
- Анимация
- Игры для sega genesis, которые стоит изучить
- Официальные устройства с эмуляцией
- Портативные ретроконсоли
- Пример эффекта циклической смены палитр для мерцающих полос берсерка в zombie football league
- Рекомендуемые инструменты для отладки и создания графики
- Сми: sega готова потратить 882 млн долларов на разработку «суперигры»
- Современные версии классических консолей
- Сохранение на sega или картриджи для мажоров
- Спрайты
Описание концепции vdp
Слева: NTSC Model 2 Sega Genesis,справа: PAL Model 2 Mega Drive (европейская)
3 плоскости графики
2 плоскости скроллинга
Plane B — плоскость фона. Отображает тайловую графику при помощи тайловых карт.
Plane A — плоскость переднего плана. Отображает тайловую графику при помощи тайловых карт. Window subplane — подплоскость для Plane A, графика которой не скроллится с остальной плоскостью.
Каждая строка тайлов рендерится столбец за столбцом. Тайлы на каждой плоскости могут иметь приоритет: высокий или низкий.
Тайлы для спрайта, отрендеренные в обычном формате (4×4 тайла)
1 спрайтовая плоскость
Отрисовывает спрайтовую тайловую графику.
Внутри консоли спрайты рендерятся в обратном порядке, т.е. каждый столбец тайлов рендерится по строкам.
Спрайты располагаются в виртуальном пространстве 512×512 пикселей, где координаты (128,128) совпадают с верхним левым углом телеэкрана.
Genesis одновременно может отображать на экране до 80 аппаратных спрайтовGenesis может отображать примерно 20 спрайтов в одной растровой строке, при большем количества возникают проблемы с переполнением спрайтов и они перестают отображаться.
Для аппаратных спрайтов размеры ограничены (w x h), где w — ширина, h — высота, принимающие значения 1-4 тайла.
Спрайты больше размеров аппаратных спрайтов можно получить при помощи нескольких спрайтов.
Как и в случае с плоскостями, тайлы для спрайтов могут иметь низкий или высокий приоритет. Спрайты с низким приоритетом отображаются под тайлами с высоким приоритетом других слоёв. (На самом деле всё немного сложнее, но в целом концепция такова).
Тайлы для спрайта внутри консоли рендерятся в спрайтовом формате (перемещённые и размером 4×4 тайла)Наглядное представление приоритета слоёв плоскостей
Анимация
Бегущий бронированный минотавр-футболист из Zombie Football League
В большинстве игр графика анимируется, а не является простыми статичными спрайтами. Постепенно изменяя кадры спрайтов, можно создать иллюзию движения, и использовать её для отображения ходьбы, атак и так далее. Художникам игр для Sega Genesis необходимо было помнить о количестве спрайтов и тайлов каждой анимации, чтобы слишком большое количество не привело к замедлению игры.
Сегодня среди разработчиков ROM-хаков Sonic the Hedgehog распространена техника под названием “Dynamic Pattern Load Cues” (DPLC). Она заключается в динамической загрузке тайлов для спрайтов во VRAM на лету вместо хранения всех тайлов для кадров спрайтов во VRAM одновременно.
Очень часто детализированные спрайты (например, спрайты главного героя), занимают слишком большое количество тайлов во VRAM, используемых для кадров спрайтов. Если загружать в видеопамять только те тайлы, которые необходимы для текущего отрисовываемого кадра спрайта, можно экономить ограниченную память VRAM и занять её другой тайловой графикой.
К сожалению, тайлы, используемые для DPLC, необходимо распаковывать в ROM, чтобы загрузка во VRAM была быстрой и не замедляла игру. (Распаковка сжатой графики тратит ресурсы процессора и занимает слишком много его циклов.) Функции спрайтового движка SGDK (в файле заголовка <sprite_eng.h>) обычно используют техники DPLC для вырезания неиспользуемых тайлов.
Игры для sega genesis, которые стоит изучить
Существует множество красивых игр для Sega Genesis, из которых можно почерпнуть различные техники и спецэффекты. В том числе:
Заметьте, как разные игры используют аппаратные ограничения Genesis и как некоторые игры выжимают из железа максимум. В Streets of Rage и Batman превосходно показаны суровые городские локации. В играх Sonic присутствуют очень яркие, контрастные цвета, которые позволяют распознавать окружение даже несмотря на высокую скорость Соника. В Aladdin и Earthworm Jim реализованы плавные и забавные анимации, хорошо подчёркивающие характеры персонажей.
Официальные устройства с эмуляцией
Благодаря Nintendo, выпустившей NES Mini в 2021 году, рынок пополнился официальными ретроустройствами от различных производителей. Не все из них сейчас так уж просто достать, но большинство по-прежнему находится в свободной продаже. Ниже приведен список самых интересных девайсов из этой категории.
NES Mini (примерно ₽3 990)
Миниатюрная версия легендарной NES, американской версии Famicom, в России выходившей под пиратским брендом «Денди». Все самое главное в комплекте: устройство имеет аутентичный вид, геймпады один в один повторяют знакомые с детства, а в числе предустановленных игр для полного счастья разве что «Танчиков» не хватает.
Упущение скрашивает наличие Super Mario Bros., Super Contra, Castlevania, Ninja Gaiden и других — в общей сложности консоль предлагает три десятка тайтлов на любой вкус. Плюс к этому от устройства можно добиться куда больше при не самом сложном вмешательстве в прошивку, но это тема для отдельного разговора.
SNES Mini (примерно ₽15 990)
Еще одна официальная ретроконсоль от Nintendo, в России известная куда меньше. Впрочем, и здесь есть на что обратить внимание: среди по-настоящему культовых предустановленных игр числятся Super Castlevania IV, Super Metroid, Star Fox, Super Mario RPG, Secret of Mana и EarthBound.
Главный недостаток консоли — цена: SNES Mini неприлично быстро разобрали и сейчас перепродают раза в три дороже заявленной стоимости. Стоит ли оно того — решать каждому самостоятельно.
Nintendo Switch (от ₽15 490 за lite-версию)
Switch не является ретродевайсом сама по себе, но при наличии подписки Switch Online игроки получают доступ к сборникам NES Classic и SNES Classic. Список игр отличается от тех, что доступны на отдельных устройствах выше, но не менее интересен: к примеру, в приложении SNES Classic доступны три части Donkey Kong Country, по праву считающиеся одними из лучших двухмерных платформеров в истории.
Кроме того, на Switch в достатке и других эмуляторов — от портов классических аркад до коллекции SEGA Mega Drive Classics, в которую входит более полусотни тайтлов. При желании можно прикупить сборники лучших битемапов от Capcom или полные коллекции классических Contra и Castlevania.
C64 Mini (примерно ₽9 900)
Пожалуй, самое странное устройство в списке. C64 эмулирует «тот самый» Commodore 64, один из первых популярных домашних ПК в истории. Уменьшенная версия позволяет воспроизводить большинство игр для платформы, причем их можно официально скачивать из интернета и устанавливать на консоль без каких-либо трудностей.
Однако к дизайну есть ряд больших вопросов, самый животрепещущий из которых — отсутствие физической клавиатуры. Представленная на устройстве несет чисто декоративные функции и является монолитным куском пластика, а поставляемый в комплекте джойстик не вызывает ничего, кроме горького разочарования.
К тому же из-за отсутствия необходимых лицензий на консоли отсутствуют игры вроде Maniac Mansion, Ultima, Wasteland и Elite, ради которых некоторые действительно были бы готовы прикупить устройство. Тем не менее C64 Mini — неплохой вариант для тех, кто заинтересован в знакомстве с ретрогеймингом на ПК и не готов возиться с настройкой эмуляторов.
PlayStation Classic (примерно ₽7 500)
Ответ Sony на устройства Nintendo не заставил себя долго ждать, и вскоре на рынок поступила мини-версия оригинальной PlayStation. Внешне девайс повторяет «толстую» версию консоли, но уменьшен примерно в два раза, а идущие в комплекте геймпады — и вовсе точная копия самых первых устройств ввода, никакой вибрации и аналоговых стиков ждать не стоит.
В комплекте предустановлены 20 игр, самыми интересными из которых являются Final Fantasy VII, Grand Theft Auto, Metal Gear Solid, Tekken 3, Twisted Metal, Resident Evil и Syphon Filter. Главная проблема — низкая производительность: некоторые из предустановленных игр идут с явными просадками частоты кадров. Что совсем смешно, взломанная версия SNES Mini справляется с теми же играми куда лучше устройства от Sony.
SEGA Mega Drive Mini (примерно ₽8 500)
Миниатюрная «Сега» не только обладает классическим обликом и двумя геймпадами на три или шесть кнопок в зависимости от версии устройства (Mega Drive или Genesis соответственно). Главным плюсом девайса является «родная» библиотека: SEGA не поскупилась и предоставила геймерам «из коробки» 42 игры, в том числе Road Rash 2, Sonic the Hedgehog, Comix Zone, Streets of Rage 2, Contra:
Neo-Geo Mini (примерно ₽9 500)
Этот девайс идет в немного другой категории, но и к портативным его не причислить. Дело в том, что Neo-Geo Mini — миниатюрная версия аркадного кабинета не только со встроенными играми, но и с собственным экраном с диагональю 3,5″. При большом желании устройство можно подключить и к телевизору, но и сама по себе консоль справляется на отлично.
Retro-Bit Super Retro-Cade (примерно ₽5 800 доставка)
Еще один эмулятор аркадных автоматов с лицензированными играми от Capcom, Data East, Technos и других компаний. Поставляется в виде небольшой коробочки, подключаемой к ТВ, а управление ведется с помощью стандартных джойстиков — увы, никаких аркадных стиков. Зато библиотека здесь любому на зависть: от классики вроде 1942 до аркадных Double Dragon и Bad Dudes.
Atari Flashback 8 (от ₽4 800 доставка в зависимости от комплектации)
Мини-версия устройства, положившего начало популярности домашних консолей. Atari Flashback 8 предлагает точную эмуляцию легендарной Atari 2600 и около сотни тайтлов для нее (в издании Deluxe количество игр и вовсе доходит до 120). Устройство точно воспроизводит внешний вид оригинала и, в зависимости от комплектации, может поставляться с двумя беспроводными джойстиками и paddle-геймпадами.
Портативные ретроконсоли
Многие ретроигры словно созданы для игры в дороге, и здесь как нельзя кстати приходят на помощь портативные консоли. Рынок ими полон: кроме официальных девайсов, уже упомянутых выше, присутствуют «серые» устройства со встроенными эмуляторами. О них и поговорим.
Anbernic RG280V (примерно ₽3 000)
Вертикальная портативная консоль с необычным дизайном и самым малым размером среди устройств в списке. RG280V не обладает какими-то мощными наворотами — у нее даже стиков нет, но все же устройство без проблем справляется играми от консолей вплоть до PS1 и помещается в любой карман.
PocketGo S30 (примерно ₽4 500)
Стилизованный под контроллер SNES девайс является одним из оптимальных по соотношению цены и качества. При цене до ₽6 тыс. он без проблем справляется с большинством платформ вплоть до PS1, оснащен крупным 3,5″-экраном и выдерживает до пяти часов непрерывной игры. «Из коробки» идет сразу настроенным.
Powkiddy RGB20 (примерно ₽7 000)
Относительно компактное вертикальное решение с неплохим железом, позволяющим несколько больше предыдущих устройств из списка. RGB20 способна запускать некоторые из игр Dreamcast и PSP. В остальном все привычно: экран 3,5″, D-pad и клавиши управления, а в качестве бонуса — один аналоговый стик. Хватает уже не на все поддерживаемые эмуляторы, но при довольно скромной цене устройства грех жаловаться.
Powkiddy RGB10 Max (примерно ₽10 000)
В отличие от предыдущего устройства компании, RGB10 Max обладает крупным 5,5″-экраном, а также премиальным внешним видом и качеством сборки. Девайс оснащен двумя стиками, аналогичными тем, что стоят в Switch, и железом, позволяющим запускать игры из библиотек консолей вплоть до Dreamcast и PSP, пусть и с определенными ограничениями: тяжелые тайтлы вряд ли выдадут больше 10 FPS. Впрочем, все консоли до середины 1990-х здесь эмулируются без нареканий.
Anbernic RG351P / RG351M / RG351V (примерно ₽8 000 / ₽10 500 / ₽8 500)
На первый взгляд, устройство мало отличается от RGB10 Max, но дьявол кроется в деталях. Семейство RG351 выделяется качеством сборки — в частности, бамперы сделаны куда лучше в сравнении с аналогом от Powkiddy. Главным же плюсом является встроенная оболочка:
Anbernic выпускает собственное ПО, которое довольно удобно «из коробки» и не требует детальной настройки от пользователей, плюс к тому энтузиасты регулярно выпускают новые версии прошивки с расширенным функционалом и оптимизацией игр. Версии P и M отличаются друг от друга только корпусом, пластиковым и металлическим соответственно.
Retroid Pocket 2 (примерно ₽7 000)
В отличие от девайсов Anbernic, Retroid Pocket 2 работает на Android, что позволяет консоли без особых трудностей расширять количество эмулируемых устройств, играть по сети с другими владельцами устройства и устанавливать стандартные Android-тайтлы.
По производительности ничего неожиданного нет: игры вплоть до тех, что были на PS1 и N64, работают без нареканий, но тайтлы с более новых консолей могут идти с просадками частоты кадров. При этом энтузиасты регулярно дорабатывают эмуляцию, но обновление алгоритмов требует уже более гораздо больше усилий от владельцев консоли.
Пример эффекта циклической смены палитр для мерцающих полос берсерка в zombie football league
Растровые эффекты
заменяют все или некоторые цвета строки палитры после определённой растровой строки. Мы не будем подробно рассматривать эту технику, но по сути она заключается в замене части всех цветов CRAM после прохождения электронного луча телевизора определённой горизонтальной строки развёртки.
Sonic the Hedgehog
Рекомендуемые инструменты для отладки и создания графики
Поиск хорошего ПО для создания ретро-графики, разделения пиксель-арта на тайлы и снижение количества цветов до 4bpp может оказатся сложной задачей. Ниже представлен список рекомендуемого ПО для создания ретро-графики, а также специализированных эмуляторов, позволяющих пользователю изучать содержимое VRAM и плоскостей.
ПО для создания графики:
- RetroGraphicsToolkit
- Irfanview
- PCXpal
- Полезное ПО, позволяющее выполнять конвертацию между несколькими разными форматами палитр.
- Полезно для преобразования из/в палитры Megadrive .bin и формат палитр Irfanview JASC
- Форматы импорта
- Форматы экспорта
- Информационные ссылки
Рекомендуемые специализированные эмуляторы для отладки VDP
Сми: sega готова потратить 882 млн долларов на разработку «суперигры»
Современные версии классических консолей
Особняком от эмуляторов стоят консоли, основанные на программируемых устройствах (FPGA). В отличие от описанных выше девайсов, они позволяют играть в «родные» картриджи и вместо эмуляции софта занимаются воспроизведением оригинального железа с небольшими дополнениями.
RetroUSB AVS (примерно ₽14 000 доставка)
Устройство от энтузиастов, позволяющее запускать оригинальные картриджи NES/Famicom, использовать «родные» контроллеры (до четырех сразу!) и любые официальные расширения вплоть до Famicom Disc System. В комплекте, увы, ничего, кроме самой консоли, нет, но на официальном сайте можно приобрести геймпады — или подключить, например, 8BitDo N30, воспроизводящий дизайн и ощущения от лицензионного контроллера NES с современными нотками вроде диагонального расположения функциональных клавиш. Все привычные сегодня вещи, в том числе вывод в 1080p и минимальная задержка ввода, в наличии.
Analogue Super Nt (примерно ₽14 000 доставка)
Этот девайс предназначен для игр со SNES / Super Famicom. Вновь полная поддержка оригинальных картриджей и геймпадов соседствует с поддержкой беспроводных устройств и разрешениями вплоть до 1080р. Поставляется в четырех цветовых схемах с соответствующими геймпадами от 8BitDo.
Analogue Mega Sg (примерно ₽14 000 доставка)
Если до этого речь шла о консолях Nintendo, то на этот раз компания Analogue добралась до SEGA. Mega Sg поддерживает картриджи от Genesis, Mega Drive и Master System. В остальном все как обычно: 1080p, ввод без задержки, беспроводной геймпад 8BitDo M30, повторяющий дизайн пада SEGA Genesis, и поддержка оригинальных расширений вроде SEGA CD.
Analogue Pocket (примерно ₽15 000 доставка)
Портативная консоль, поддерживающая «из коробки» все поколения Game Boy: оригинал, Color и Advance. Кроме того, с помощью специальных расширений можно увеличить количество поддерживаемых консолей, добавив к ним Game Gear, Neo Geo Pocket, Atari Lynx и другие.
Девайс оснащен 3,5″ LCD-экраном с разрешением 1600×1440. При желании можно докупить док-станцию и играть на телевизоре с подключенными геймпадами от 8BitDo, а также в духе классических Game Boy соединять устройства между собой с помощью специального шнура — например, для обмена покемонами, как в 1990-х.
Evercade VS и Evercade Handheld (примерно ₽11 000 и ₽6 000 пересылка соответственно)
Устройства этого производителя стоят немного в стороне от других в категории, так как используют не официальные картриджи старых консолей, а собственные, созданные специально для консолей Evercade. Впрочем, коллекция поддерживаемых игр впечатляет: на момент публикации материала количество доступных картриджей перевалило за 20, и каждый из них является сборником, включающим от двух до пары десятков игр.
Хиты прошлого от Atari, Namco, Interplay, Technos, Intellivision и Data East здесь соседствуют, например, с коллекцией классических игр франшиз Worms и Dizzy. На данный момент для покупки доступна только портативная версия устройства, домашняя консоль поступит в продажу в ноябре 2021-го.
Сохранение на sega или картриджи для мажоров
#461030
#461316
#454546
#438341
#438567
Спрайты
Спрайт позы Эшли из Coffee Crisis
Спрайты в Sega Genesis задаются как изображения с размером (w x h), где w — ширина в тайлах, а h — высота в тайлах, которые могут принимать значения 1-4 тайлов. Каждый спрайт одновременно может использовать только одну строку палитры.
Аппаратные спрайты могут иметь максимальный размер 4×4 тайлов. Sega Genesis может обрабатывать до 80 экранных спрайтов, по 20 спрайтов на одну растровую строку, однако чтобы избегать тормозов, лучше не достигать этого предела. Чтобы обойти ограничение на размеры аппаратных спрайтов, многие игры используют несколько спрайтов, собирая из них одного персонажа/объект.
Принцип создания классического пиксель-арта заключается в том, чтобы выбрать достаточно большое разрешение для обеспечения нужной детализации и читаемости изображения, но достаточно малое, чтобы его можно было легко анимировать. Вся графика тайлов Sega Genesis всегда должна делиться на 8 пикселей, чтобы соответствовать размерам тайлов.
Спрайты могут зеркально отображаться по горизонтали («hflip») и/или по вертикали («vflip»), а также иметь флаг высокого или низкого приоритета. Этот параметр определяет, должен и спрайт отображаться под или над тайлами других плоскостей (которые также имеют параметр высокого или низкого приоритета).
Аппаратные спрайты также могут иметь значение «link»; каждый спрайт должен иметь собственное уникальное значение link. Среди прочего, оно влияет на отрисовку: спрайты с низкими значениями link отрисовываются поверх спрайтов с высокими значениями link.
