Емулятор Red Viper отримав повноцінну підтримку кольору для Virtual Boy

Відродження експерименту Nintendo 90-х років
Коли Nintendo випустила Virtual Boy у 1995 році, його унікальний червоний стереоскопічний дисплей на чорному фоні став як перевагою, так і суттєвим обмеженням. Пройшло три десятиліття, і спільнота любителів домашнього програмування знайшла спосіб подолати це обмеження. Остання версія Red Viper, емулятора Virtual Boy для Nintendo 3DS, представляє повноцінний режим переробки кольору в 16 біт — за межами звичних червоних відтінків, вражаюче оновлюючи такі ігри, як Wario Land, Jack Bros. та домашні клони Mario Kart.
Чому колір має значення: від обмежень LED до сучасних дисплеїв
Апаратура оригінального Virtual Boy
- Роздільна здатність: Подвійні монохромні LED-панелі 384×224 (1 біт на піксель).
- Колір: Одновимірні червоні LED, обрані через їхню вартість та доступність у середині 90-х.
- Графічний конвеєр: Простий рендерер тайлів і спрайтів з мінімальною кількістю регістрів палітри.
- Система на чіпі: Ядро NEC uPD77xx на 20 МГц, 1 КБ VRAM на око.
Ці характеристики пояснюють, чому інженери Nintendo були обмежені чотирма відтінками червоного: “Темний”, “Середній”, “Світлий” та “Найтемніший”. Гравці того часу цінували ефект паралаксу, але відсутність кольорової різноманітності виявилася застарілою в порівнянні з градацією сірого Game Boy.
Техніки кольорової мапінга в емуляції
Сучасні емулятори подолають апаратні обмеження за допомогою програмних шейдерів, які переінтерпретують значення інтенсивності пікселів. Режим “Багатокольоровість” у Red Viper відображає кожен з чотирьох оригінальних відтінків на довільні RGB-значення, що дозволяє:
- Справжнє призначення 24-бітного кольору через налаштовуваний колірний вибірник.
- Слайдери яскравості та насиченості в реальному часі для тонкої настройки.
- Опційні алгоритми дотування (упорядковане або Флойда-Стейнберга) для симуляції плавних градієнтів.
Технічні деталі: реалізація багатокольорового режиму в Red Viper
Red Viper використовує libctru на 3DS для доступу до шейдерних ядер GPU. Спеціальний шейдер, схожий на GLSL, перехоплює глибину та індекс відтінку кожного пікселя, застосовує таблицю кольорів користувача (CLUT) та виводить новий RGB-триплет. Ключові технічні деталі:
- Пам’ять палітри: Емуляція як 4×24-бітна CLUT, збережена в VRAM банку C на 3DS.
- Шейдерний конвеєр: Мінімальний прохід вершин та конверсія фрагментів, оптимізовані до ~300–400 циклів на фрагмент на GPU PICA200 з тактовою частотою 268 МГц.
- Вплив на продуктивність: Частота кадрів знижується на 5–10% у багатокольоровому режимі в порівнянні з монохромним, все ще залишаючись комфортно вище 50 fps.
- Тривалість батареї: Додаткове споживання енергії на 15–20% через підвищене використання GPU, зменшене завдяки опційному режиму “Низька потужність Дотування”.
Стереоскопічна емуляція на 3DS та фільтри відображення
Red Viper продовжує зберігати характерний ефект паралаксу Virtual Boy, рендерячи зображення для кожного ока на верхньому LCD 3DS та нижній панелі паралаксу. Вбудований фільтр “NVL Mode” імітує червоне світло LED VB, але користувачі можуть його вимкнути, щоб відобразити повністю насичені кольори.
Відродження спільноти домашнього програмування
Окрім офіційних ігор, спільнота домашнього програмування Virtual Boy створила порти Street Fighter II, Super Mario Bros. 3 та оригінальні проекти, такі як Fish Polo і шутер з гамбургерами Burgertime VB. Підтримка повного кольору має негайні переваги:
- Покращена читабельність: Зелені черепахи більше не зливаються з чорним фоном.
- Покращена естетика: Космічні шутери отримують глибину завдяки ніжним зіркам кольору туманності.
- Чіткість ігрового процесу: Головоломки та елементи HUD виділяються завдяки кольоровому кодуванню.
Експертні думки: інтерв’ю з розробниками та відгуки спільноти
“Наша мета полягала в тому, щоб вшанувати оригінальне обладнання, надаючи гравцям нові способи переживання цих ігор,” говорить головний розробник Мартін “ViperDev” Еріксон. “Відкриваючи гнучку CLUT у меню налаштувань, ми надаємо користувачам можливість створювати палітри, що відповідають настрою кожної гри.”
Утримувач RetroArch розробник Libretro ‘slash’ нещодавно об’єднав подібний шейдер у основний репозиторій, що дозволяє кольорову емуляцію VB на настільних та мобільних пристроях через сотні ядер. За даними спільноти, кольорові версії RetroArch на середньому ПК досягають >90 fps при 1080p.
Перспективи на майбутнє та офіційні рішення
Хоча Red Viper залишається проектом домашнього програмування, ходять чутки, що патенти Nintendo на стереоскопічні дисплеї та LED-матриці можуть знову стати актуальними — можливо, в рамках сучасного VR-гарнітура. Тим часом емуляційні платформи, такі як Mednafen, планують офіційну підтримку для заміни індексованих палітри у майбутніх релізах 1.30.
Незалежно від того, чи через поліпшені емулятори, чи нове обладнання, спадщина Virtual Boy продовжує еволюціонувати. Наразі Red Viper пропонує як давнім шанувальникам, так і новачкам яскравий вхід у один з найунікальніших розділів ігрової історії.
“Колір надав мені причину знову пройти Wario Land. Це як знову відкривати мистецтво за кожним пікселем,”