+344.48
Рейтинг
1080.83
Сила

Alex

Полноэкранная графика на NES

Пользователи ZX Spectrum и других домашних компьютеров 80-х привыкли к красочным полноэкранным заставкам, показываемым во время загрузки игры. Сама возможность отображения таких заставок им справедливо кажется естественной. И казалось бы, такая довольно мощная для своего времени игровая система, как NES, должна с лёгкостью с этим справляться — ведь показывает же она во время игры прокрутку полного экрана с крупными спрайтами со скоростью 50/60 кадров в секунду. Однако, если задуматься, можно вспомнить, что полноэкранные заставочные картинки едва ли встречались в играх, а по большей части это был чёрный экран с относительно небольшим по площади изображением. Конечно же это не случайно. Углубимся в тему.


Читать дальше →

Пишем для NES. Краткая версия.

Изложено в формате 'нет времени объяснять'. Подробное раскрытие каждого небольшого пункта потребует статьи большего объёма, чем этот обзор. Это будет сделано впоследствии, если у читателей обнаружатся конкретные интересы.

Хотите написать игру или демо для NES, Famicom, Денди?

Изучаем. Кладезь актуальной мудрости — NesDev Wiki. Вводные для начинающих — Nerdy Nights на английском, другая на русском. Помним, что старые описания неполны и неточны. Отдельно изучаем 6502. Книг и статей много, поиск начинаем отсюда.

Выбираем между ассемблером и C. Тысяча игр на ассемблере, десятки на C. Код на ассемблере в разы эффективнее, на C пишется в разы быстрее. С ассемлером проще получить помощь зала. Для отчаянных есть экзотика, от BASIC до минимальных Lisp и Python.

Выбираем ассемблер. Три популярных, десятки других. NESASM стар, имеет искусственные ограничения (пришёл с MS-DOS, перепилен с PCE/TG16) и мелкие глюки. Легко освоить, большинство старых уроков под него, выдержит средний проект. Современная альтернатива — ASM6, прост в освоении, но не так популярен. Выбор профессионала — CA65. Мощен и гибок, но сложен в освоении (линкер и конфигурация памяти).

Выбираем компилятор C — CC65. Для работы с железом есть библиотеки neslib и KNES, либо пишем свою. По скорости потолок чистого C — подобие Super Mario Bros. Можно писать частично на C, частично на ассемблере, переписывать фрагменты кода по ходу дела. Очень удобно для прототипирования.

Пишем код. Любимый текстовый редактор, bat или make файлы. Есть развитая IDE для CC65 — NESICIDE, но WIP и почти никем не используется.

Рисуем. Отдельные тайлы редактируем непосредственно в YY-CHR, NES Screen Tool, Tile Layer Pro и других, более сложные изображения импортируем из обычных форматов там же. Для сложных проектов может понадобиться свой велосипед. Без трюков NES не может отобразить полноценную картинку на весь экран, аналога Art Studio не ищите.

Музыка и звуки. Два основных трекера, но нужен проигрыватель, выбирается в зависимости от используемого ассемблера. Пишем в FamiTracker, играем FamiTone или Gradual Games Sound Engine. Пишем в Musetracker, играем MUSE. Штатного плеера FamiTracker хватит для простого демо, но не для игр. По желанию пишем свой плеер, оба трекера имеют текстовый экспорт. Для отчаянных есть древности и экзотика.

Делаем уровни. Готовых решений нет. Набираем вручную, пишем конвертер для универсальных редакторов, изобретаем свой редактор.

Для среднего или большого проекта наверняка понадобятся особые конвертеры и утилиты. Пишем на чём угодно, лишь бы работало. Обычно C++ или Python.

Отлаживаем в эмуляторах. Средства отладки развиты в FCEUX и NintendulatorDX. Высокая точность эмуляции в Nestopia и puNES, но отладчика в них нет. Даже самые точные эмуляторы не показывают всех глюков, проверяем во всех четырёх. Если пишем на C с готовой низкоуровневой библиотекой, на железе наверняка заработает. Выжимаем максимум на ассемблере — обязательно проверяем на железе при помощи Flash-картриджей (EverDrive N8, InviteNES, PowerPak — ищем в интернете) или самодельного картриджа и программатора ПЗУ.

Успехов!

Phaser2 в 1tracker

То, чего давно ждали немногие энтузиасты, наконец свершилось — появился редактор для биперного движка Phaser2, разработанного ещё в 2011 году и до сих пор никем ни разу не использованного. К сожалению, это не Beepola, а всего лишь 1tracker, но уже лучше, чем ничего. Напомню, по причине использования в движке гибко настраиваемых тональных инструментов и ударных конвертор из XM или других форматов не имел бы практического смысла.

Скачать 1tracker


Читать дальше →

1bitstudio - набор VST-плагинов для однобитной музыки

Наконец-то дошли руки до реализации давней задумки. Публикую набор VST-плагинов для обработки и генерации 1-битного звука, которые могут пригодится для создания стилизованной по звучанию музыки в современных DAW, таких как FL Studio, Cubase, Reaper, и им подобных.

На текущий момент набор включает шесть плагинов. Четыре из них являются синтезаторами звука, два для ударных и два для тона. Они покрывают большую часть спектра звучания всех известных биперных движков. Остальные два плагина придают однобитное звучание другим инструментам, таким как гитара.

Появляется возможность узнать, как может звучать биперная музыка, использующая комбинацию разных звуковых движков и типов синтеза — и не только 1-битных, не имеющая ограничений по полифонии и нежелательных артефактов в звуке, типа слышимой несущей или щелчков, имеющая частотную и пространственную обработку для лучшего звучания, при этом сохраняющая эстетику настоящего биперного звука.

Скачать без регистрации и SMS

Дополнение: theandroidvision написал демонстрационный трек. В нём используется только часть плагинов из набора и никаких посторонних инструментов или обработки.

Hype NES Intro

С приходом на этот ресурс у меня были планы написать серию постов о программировании для 8-битной игровой приставки NES. Для вводного поста и в качестве примера для дальнейшего разбора было сделано это простейшее интро. Но объём работы оказался велик, свободного времени мало, мотивация низка, и когда до этого всего дойдут руки — неясно. Поэтому планы были отложены на светлое будущее, а пока я решил опубликовать то, что есть, чтобы оно не потеряло актуальность окончательно.

ROM и исходник без единого комментария: shiru.untergrund.net/files/nes/hype.zip

  • avatar
  • [просмотров: 2754]
  • 9
  • +23

Процедурная графика на ZX Spectrum

Статья была написана в августе 2011 года для не вышедшего журнала krik12.


Краткая история

На демопати ASCiI 2008 впервые и пока единственный раз в истории ZX сцены был проведён конкурс процедурной графики. В нём приняли участие всего два человека, я и Tiboh. Я также предлагал проведение конкурса на ArtField 2009 и сделал работу, но инициатива не была поддержана другими участниками. Ещё одна работа для ZX Spectrum от n-Discovery была выставлена на Chaos Constructions 2009 в совмещённом конкурсе, вместе с работами для PC. Таким образом, дисциплина процедурной графики успела немного засветиться на ZX сцене, но пока не получила поддержки и популярности. Тем не менее, думаю, что она могла бы немного разбавить традиционный набор ZX конкурсов, и потому расскажу о ней подробно.

Читать дальше →