Сайт использует файлы cookie — для входа в кабинет и обезличенной статистики. Подробности — в политике обработки данных.
Игра для iOS · аркада + веб-версия

«Орбита»

Аркада на реакцию: корабль летит вокруг планеты по одной из двух орбит, касание разворачивает, смахивание перебрасывает на соседнюю. В проекте нет ни одного спрайта и ни одного звукового файла — вся графика и весь звук считаются кодом при запуске.

Роль: игра «под ключ»iOS + веб-версияРусский и английский
«Орбита»
СтекSwift 5SpriteKitCore GraphicsJavaScriptCanvas 2DWeb AudioPWA

О проекте

Корабль идёт по круговой орбите вокруг планеты. Касание в любом месте экрана мгновенно разворачивает его, смахивание перебрасывает на соседнюю орбиту. Нужно успевать к золотым ядрам, ловить бонусы и уходить от астероидов — красные дуги заранее показывают, где камень пересечёт каждую орбиту.

Физического движка в игре нет: движение считается в полярных координатах — угол и радиус, кратчайший угловой путь, плавный переход между орбитами. Попадание проверяется допуском по углу и по орбите, а не столкновением тел.

Графика и звук — целиком свои. 30 текстур рисуются кодом при запуске и пересобираются только при смене размера экрана: туманность, три слоя звёзд, газовый гигант с поясами и терминатором, корабль с выхлопом, девять вариантов камней. Восемь звуков считаются формулами в буферы — синусы с огибающими, шум для крушения.

Возможности

01

Две орбиты и один жест

Всё управление — касание и смахивание. Касание разворачивает корабль, смахивание меняет орбиту; радиус сближается плавно, а не скачком.

02

Предупреждение вместо неожиданности

Красные дуги заранее показывают, где астероид пересечёт каждую орбиту. Игрок проигрывает по своей ошибке, а не потому, что камень появился внезапно.

03

Графика без единой картинки

В проекте три PNG, и все три — иконки. Туманность, звёзды, планета, корабль, ядра, дуги опасности, кольцо щита, вспышки рисуются кодом в текстуры.

04

Звук без единого файла

Восемь эффектов синтезируются формулами по сэмплам при старте: разворот, смена орбиты, сбор, пролёт впритык, бонус, щит, уровень, крушение.

05

Сложность растёт ступенями

Вид астероида выбирается от уровня: быстрые мелкие с третьего, крупные разваливающиеся с шестого, второй камень в залпе с девятого. Крупный на подлёте делится на два.

06

Веб-версия на своём рендере

В браузере каждая текстура — отдельный холст, на кадре только перенос изображений через одну функцию. Ни игровых движков, ни сборщика: файлы отдаются как есть.

Экраны игры

Стек технологий

iOS
Swift 5SpriteKitCore Graphics (30 процедурных текстур)AVAudioEngine (синтез 8 звуков)iOS 17+, iPhone и iPadТёмная тема
Веб-версия
JavaScript (ES-модули, без сборщика)Canvas 2D, свой рендер через offscreen-холстыWeb Audio APIWeb App Manifest (установка на домашний экран)localStorage
Особенности
Ни одного спрайта в проектеНи одного звукового файлаФизический движок не используетсяСторонних зависимостей: 0

Результат

3 008
строк своего кода
30
текстур рисуются кодом
8
звуков синтезируются формулами
0
спрайтов и звуковых файлов

Хотите так же?

Соберём сайт, платформу или мобильное приложение под вашу задачу — быстро, под ключ и с личным кабинетом. Бесплатная оценка сроков и цены — обычно отвечаем в течение часа в рабочее время.

Обсудить проект
Такую же задачу закрываем услугой