Любой проект проще и экономичнее выполнять, при условии что изначально сразу ответить на вопрос для себя: зачем он вообще нужен. В случае игровых автоматов это принципиально — без ясной цели несложно уйти в бесконечно идущие правки, дополнения и апгрейды, и все это никогда не заканчиваются.
По этой причине перед тем как покупать детали, заказывать фанеру и загружать игровые системы, я выделил для своего проекта стартовые требования к автомату.
Первое на что я обратил внимание — формат использования. Не теоретический «аркадный автомат мечты», а максимально приземленный вариант:
Я хотел получить устройство в формате «пришли гости — нажали кнопку — играем». Без всяких рассказов, руководств и обучения пользователей.
Классические аркадные автоматы кажутся впечатляюще, но для комнаты это не самый удобный вариант. Из-за этого я исключил от идеи классического напольного автомата и остановился на компактный вариант.
Ключевые требования по габаритам корпуса сформулировались так:
Такое решение автоматически задало ограничения по экрану, по глубине корпуса и вес конструкции.
Далее был принципиальный момент — игровой контент. Я сразу определил, что автомат создается совсем не «для архива игр», а в первую очередь для живой игры.
Из этого появились практичные требования:
Лучше всего под такой набор условий подпадают файтинги, beat ’em up, аркадные гонки и старые добрые шутеры.
Комфорт от автомата в большой степени формируются от управления. Можно использовать очень мощный компьютер и хороший дисплей, но если кнопки «нечеткие», а джойстик управления нечеткий — нормальной игры не будет.
Если подбирать как сделать игровой автомат, в этом случае минимальный список параметров выглядит так:
По числу кнопок я анализировал два сценария: 4 либо 6 на игрока. В конце концов я выбрал шесть кнопок — это гибче и подходит комфортно играть в файтинги.
На данной стадии я не определил окончательных габаритов корпуса, но уже понимал, какие детали стоит учитывать:
Подобные детали сложно просчитать «на глаз», поэтому я заранее предусмотрел шаг с прототипом, о котором я расскажу далее.
Даже когда устройство используется дома и используется бережно, он в любом случае должен оставаться простым в обслуживании. Я изначально предусмотрел несколько обязательных условий:
После того как все эти требования были записаны, прояснилось, в какую сторону нужно идти. Следующим шагом стало планирование и сборка первого прототипа.
После того как общие требования стали понятны, было ясно, что делать «финальный» автомат — неудачная идея. Без опыта очень легко ошибиться с размерами, наклонами и размещением деталей. В результате следующим шагом оказалось создание прототипа.
В голове и на схеме все почти всегда выглядит идеально. Фактически же выясняется, что на самом деле:
Макет необходим не для красоты, а именно для практической проверки. Главная задача прототипа — дать ответ на вопрос: комфортно ли играть на практике.
Самый простой и дешевый вариант проверить компоновку — использовать бумагу и картон. Я вырезал:
Все это раскладывалось на столе в разных конфигурациях. Я пробовал менять дистанцию между участниками, угол экрана, ширину панели и смотрел, как это ощущается на практике.
Уже тогда стало ясно, что некоторые идеи из головы не работают на практике.
После этапа с бумагой я перешел сделать черновой тестовый контроллер. Без корпуса, без дизайна — только чтобы оценить ощущения от кнопок и джойстиков.
Для этого потребовалось:
Я смонтировал кнопки и джойстики в коробку, соединил все элементы к плате и запустил пару игр на большом экране. Такой тест дал намного больше понимания, чем любые чертежи.
Спустя нескольких вечеров тестирования стали очевидны моменты, о таких вещах раньше не задумываешься:
Этот шаг сохранил для меня много времени и бюджета на следующих этапах. Исправлять бумагу — почти бесплатно. Исправлять корпус из фанеры — больно и дорого.
Когда базовая компоновка стала понятна, я перенес все ее в трехмерную модель. Это помогло:
На этой стадии внешний вид еще не раз менялся, но ключевое уже было ясно: устройство будет комфортным, компактным и ориентированным на двух игроков.
Затем можно было перейти к подбору электроники и «мозга» автомата.
После того как прояснилось, каким образом устройство должно выглядеть и чувствоваться в реальности, настал момент определиться, с тем будет внутри. От подбора «основного блока напрямую зависит сложность сборки, надежность и объем времени, который нужно будет потратить на запуск.
Изначально я перебирал несколько популярных вариантов:
Десктоп и ноутбук отпали на раннем этапе: они занимают большой объем, требуют больше питания и усложняют сборку. Мне хотелось компактное, простое в сборке и предсказуемое подход.
По итогу я выбрал именно Raspberry Pi. Не из-за того, что это «единственно правильный вариант», а потому, что он хорошо подходил под мои требования:
Для аркадных и старых консольных игр прошлых поколений производительности Raspberry Pi более чем достаточно.
С экраном все оказалось не таким простым. Хотелось поймать баланс между размером, ценой и удобством.
Ключевые условия сформировались такие:
Я сознательно не гнался за максимальным разрешением — для старых игр оно не требуется.
На этом этапе пытаться сэкономить не рекомендуется. Недорогие кнопки могут работать некорректно, а некачественные джойстики — иметь люфт буквально через пару недель.
Я отбирал элементы управления по таким параметрам:
Лучше взять не самый дешевый вариант, чтобы потом не разбирать автомат по мелким причинам.
Для того чтобы Raspberry Pi распознавал органы управления в виде обычный геймпад или клавиатуру, применяются USB-энкодеры.
Это платы, к которым напрямую подключаются:
Дальше все это через один кабель подсоединяется к Raspberry Pi, после чего система определяет контроллеры автоматически.
Даже при небольших решений возникают нюансы:
Нагрев для Raspberry Pi не является критичным для аркадных игр, но правильнее сразу предусмотреть отверстия вентиляции либо малошумный вентилятор.
Когда все компоненты была выбрана и куплены, можно было перейти к следующему шагу — к сборке тестовой системы и конфигурации программной части.
Прежде чем встраивать электронику в корпус, я принял решение собрать все в максимально упрощенном виде и убедиться, что все работает корректно так, как задумано. Этот этап позволяет поймать основные ошибки без риска повредить корпус или переделывать заново готовую конструкцию.
Здесь не имеет значения дизайн. Критична только работоспособность.
Я выложил на столе:
Кнопки и джойстики были подключены вне корпуса — исключительно ради проверки логики работы и ощущений.
Для софта я выбрал готовый образ с эмуляторами игр. Такой подход сильно экономит время настройки: не требуется вручную ставить каждый компонент и конфигурировать каждый отдельно.
Последовательность действий выглядел к следующему:
После старта ПО сразу предлагает привязать кнопки — достаточно нажать их в нужной последовательности.
Этот этап — один из критичных моментов. Даже когда все собрано правильно, в реальности часто всплывают неприятные мелочи:
Я запускал разные типы игр и проверял, удобно ли играть, не приходится ли тянуть рука к кнопкам и не задевают ли игроки друг другу.
Базовая система идет без игр, и потому игры загружаются отдельно. Заранее подготовил небольшой набор:
Важно здесь не стараться загрузить «весь каталог». Небольшой набор игр помогает сконцентрироваться на тестировании эргономики, а не на переборе из сотен вариантов.
Без сложностей, естественно, не получилось обойтись. В процессе тестов прояснилось:
Все эти проблемы было легко исправить именно сейчас, поскольку ничто не встроено в конструкцию.
После нескольких вечера тестов система оказалась стабильной и предсказуемой. Контроллеры работало ровно так, как было задумано, игры запускались быстро, ничего не зависало и не просило дополнительных настроек.
Это означало, что можно двигаться к самому сложному этапу — проектированию и изготовлению корпусной части.
Корпус автомата — это самая наиболее трудоемкая и самая «физическая» часть проекта. Именно корпус задает визуальный облик устройства, а также его массу, прочность и удобство эксплуатации. Промахи на этой стадии обходятся дороже всего, поэтому к выбору материалов я подошел отдельно.
Перед тем как подбирать материалы, я определил ключевые требования к конструкции:
Корпус должен оставаться утилитарным, и не выставочным экспонатом.
Первым и самым очевидным выбором стала фанера. Это классический выбор для игровых корпусов, и у него имеется ряд понятных преимуществ:
Я выбирал фанеру толщиной 10–15 мм. По итогу я остановился на компромиссном решении — такая толщина обеспечивает достаточную прочность, но не превращает корпус слишком тяжелый объект.
Идея изготовить корпус из массива дерева выглядит заманчиво, но на практике у такого решения много недостатков:
Для начального проекта это неоправданно сложен и затратно.
Также я рассматривал идею частично использовать 3D-печать. Такой подход хорошо работает в случае:
Целиком печатать весь корпус не имеет смысла: это долго, дорого и часто не достаточно прочнo.
Геометрия непосредственно зависела от выбранного формата устройства. В моем случае использовался компактный формат, поэтому:
Я сознательно старался не использовать сложных криволинейных форм — чем проще форма, тем легче производство и монтаж.
После того как геометрия и материалы были определены, я подготовил первичные чертежи. Эти чертежи не получились окончательными, и при этом пару раз дорабатывались в процессе, однако давали понимание:
С такими схемами стало возможным переходить к изготовлению корпусных деталей и сборке конструкции.
Когда материалы были выбраны и схемы были готовы, стартовала наиболее осязаемая часть всей работы — сборка конструкции. Именно здесь из набора деталей устройство начинает превращаться в реальный объект, а не абстрактную идею.
Все элементы корпуса я предварительно нарезал по размерам. Это возможно разными способами:
Я остановился на способе с ЧПУ — в этом случае элементы выходят точнее, а отверстия для кнопок и экран сразу соответствуют с проектом. Однако такой способ не обязателен, особенно когда устройство делается в единственном экземпляре.
Прежде чем что-либо фиксировать и закручивать намертво, я сделал «пробную» сборку деталей — без использования клея и без финального крепежа.
Такой подход позволил:
На этой стадии обычно всплывают небольшие ошибки в размерах, и такие ошибки проще исправить сейчас, чем потом после финальной сборки.
После сухой сборки корпус был разобран и собирался уже окончательно.
Для соединения деталей я использовал:
Важно не переборщить с фиксацией и оставить возможность при необходимости разобрать корпус конструкцию позже.
Особого внимания требует панель управления. В ней:
Я не раз примерял панель управления перед финальной фиксацией, чтобы, что пользоваться действительно удобно.
Дисплей крепится внутри конструкции таким образом, чтобы:
В большинстве случаев хватает обычных деревянных планок либо металлических уголков.
Я заранее предусмотрел доступ внутрь корпуса. С этой целью задняя стенка:
Такое решение сильно упрощает обслуживание системы, смену кнопок управления и любые работы с начинкой.
Когда корпус автомата был собран, можно было перейти к монтажу электроники и внутренней разводке.
На этом этапе устройство уже смотрелся как готовое устройство, однако без корректной настройки ПО он оставался обычной коробкой с кнопками управления. Основная цель была простой: подать питание и сразу попасть в меню игр, без лишних меню и шагов.
С самого начала предполагал что автоматом пользуются не только я. Значит:
По сути устройство должен вести себя как бытовой прибор: включил — и оно работает.
После завершения окончательного монтажа электроники я заново прошел конфигурацию управления в ПО. Это важно, так как после укладки проводов часто появляются мелкие нюансы.
Я проверил:
Если этого не сделать некоторые игры будут управляться «зеркально» либо некомфортно.
Чем меньше всего элементов меню видит пользователь, тем лучше. Я исключил все ненужное:
В результате получился небольшой набор проверенных игр, в которые действительно хочется играть вдвоем.
Я сделал настройку ПО таким образом, чтобы:
Такой подход особенно актуально, если устройство используется разные люди или стоит в общем пространстве.
Перед тем как считать проект готовым, я пару вечеров подряд просто играл на устройстве:
Именно в таком режиме всплывают мелкие детали, которые сложно учесть заранее: где-то некомфортно дотягиваться к кнопке, в другом хочется другой очередность игр, а где-то — более быстрый выход в меню.
На этом этапе автомат получился ровно тем, чем я и планировал в самом начале. Это уже устройство, который не нуждается объяснений и функционирует предсказуемо.
Если подытожить всю работу, то как сделать игровой автомат — это не столько про электронику или фанеру, сколько про грамотно продуманную последовательность шагов: от идеи до финальных проверок в реальных условиях.
Далее я расскажу о реальной эксплуатации, ошибках и выводах, которые возникли в процессе использования устройства в жизни, а не в теоретических условиях.