← Все отчёты

Раннер против образца — что смотреть и что делать

Разбор видео владельца покадрово, замер звука, сравнение с нашей игрой и план
8 мин чтения8 разделов3 таблицы27.09.2026 15:33 UTC
Содержание
  1. 1. Что в файле
  2. 2. Граница: что берём, что нет
  3. 3. Обстановка образца
  4. 4. Звук — числа
  5. 5. Наша игра — что уже есть
  6. 6. Где разрыв
  7. 7. Что делать — по приоритету
  8. 8. Что предлагаю

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

Разобрал видео SVID_20260927_181331_1.mp4 (70 с, 580×1280, 60 кадров/с) покадрово, замерил звук числами и снял нашу игру теми же глазами. Ниже — что в образце, что у нас и где именно разрыв.

1. Что в файле

Subway Surfers, мир Bali, версия 1.1.0.0 — видно на экране загрузки. Игра запущена внутри мини-аппа: сверху синяя полоса с крестиком и заголовком «Subway Surfers», как у нашего приложения в Telegram. Первые ~30 секунд — меню и награды, забег идёт с 31-й секунды.

Значит, образец — не «какая-то игра», а именно то, чем мы занимаемся: раннер в мини-аппе на телефоне. Сравнение честное.

2. Граница: что берём, что нет

Это ключевое, и я скажу прямо, потому что от этого зависит вся работа.

Чужой код, ассеты, персонажей, названия и уровни не копируем. Subway Surfers — собственность SYBO. Наши требования это уже запрещают:

R23. Все ассеты процедурные: геометрия из примитивов, текстуры рисуются в canvas. Ни одного внешнего файла.

R40. Персонажи — свои: заяц-бегун и ловчий волк… Ни внешность, ни имена не повторяют чужих произведений.

А вот уровень плотности, насыщенности и живости — берём целиком. Это не охраняется: сколько объектов на экране, как они читаются, как движется мир, как звучит забег. Именно этого владелец и просит словами «подобный уровень прорисовки», «поезда двигаются, а у нас ничего нет».

Так что задача не «сделать Subway Surfers», а «поднять нашу сцену до той же насыщенности своими средствами». Ниже — что конкретно для этого нужно.

3. Обстановка образца

Ключевые кадры образца
Шесть ключевых кадров: загрузка, вода, поезд в туннеле, улица с домами, туннель с двумя поездами, крыша поезда. Разные участки одной трассы — за 40 секунд мир меняется пять раз.

Мир меняется на ходу, и это видно

За один забег проходит пять разных участков:

  1. Вода — бирюзовая гладь с бликами, по бокам зелёные стены ущелья.
  2. Улица — песочная дорога, дома с соломенными крышами, цветные палатки рынка.
  3. Туннель — каменный портал, внутри светло-голубой свет, поезда навстречу.
  4. Станция — платформы, навесы, стойки с товаром, воздушные шары.
  5. Крыша поезда — игрок бежит по вагону, внизу шпалы.

Смена участка — не переключение уровня, а непрерывный переход: дальний план подъезжает и подменяет ближний. У нас смена локации тоже есть (переход занимает последние 12% участка), но между участками не меняется ничего, кроме декораций дальнего плана.

Поезда — центр всего

В образце поезда не декорация, а главный объект трассы:

Что делает поезд Кадр
Стоит поперёк, игрок бежит по крыше 1:06
Едет навстречу по соседнему пути 0:54
Стоит на пути, игрок уворачивается 0:35, 0:47
Виден в глубине туннеля, приближается 0:54

То есть поезд — это и препятствие, и поверхность, и событие. У нас вагон как препятствие есть (full — единственный тип, который обходится только сменой полосы), но он не читается вагоном: куб с полосами. И ничего не движется: весь мир статичен, кроме земли под ногами.

Насыщенность цвета

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

Наш высокий класс графики (снят ниже) — серо-пыльный: город в тумане, балласт пыльный, небо пасмурное. Это сделано нарочно («камень не должен спорить с поведением»), но читается как уныние.

4. Звук — числа

Разобрал дорожку целиком (22050 Гц, 70 с).

Что Замер
Темп ~172 уд/мин (автокорреляция потока энергии)
Меню (0–30 с) −59 дБ, яркость ~1200 Гц — тихо и глухо
Забег (31–69 с) −32 дБ, яркость ~3000 Гц — громко и звонко
Размах 44 дБ от тишины до пика
Пик −21.5 дБ на 31–33 с — вход музыки на старте

Что это значит на слух:

  1. Музыка входит ровно на старте забега — 31-я секунда, до этого меню почти молчит. Разница с нами не в наличии входа, а в уровне: у нас музыка играет с самого старта (playMusic(), шина на 0.34), плюс короткое арпеджио sfx.start().
  2. Темп 172 уд/мин держится весь забег — ровный драйв от первой секунды. У нас темп считается как 132 + интенсивность · 44: на старте 132, на пике погони 176. То есть наш потолок уже совпадает с образцом (176 против 172), а разница — в исходном темпе: у нас спокойный старт и разгон, у образца драйв сразу.
  3. Яркость 3000 Гц против 1200 Гц — в забеге много высоких: тарелки, шипение, звоны. Именно это читается как «драйв». У нас есть слой выше 0.35 интенсивности, но яркость дорожки я не мерил — сравнивать нечем.
  4. 44 дБ размаха — образец не боится тишины в меню и громкости в игре.
Вырезка 30–69 с: вход музыки на старте и весь забег с событиями. Звук в дорожке сохранён — темп и яркость слышны (средний уровень −30.9 дБ, пик −3.9 дБ).

5. Наша игра — что уже есть

Прежде чем что-то просить, снял нашу сцену. Ниже — высокий класс графики (?gfx=high), не низкий: судить игру по худшему классу нечестно.

Наша игра, высокий класс
Наш забег, высокий класс: заяц, рельсы со шпалами, город с окнами, фонари, разметка, монеты, искры. Локация «Сортировочная», день.

Что тут есть, если смотреть честно: рельсы со шпалами и балластом, город с зажжёнными окнами по обе стороны, фонари, жёлто-чёрная разметка на препятствиях, монеты с искрами, бегущий заяц, HUD со счётом и паузой, подпись локации и времени суток. Это не «ничего» — это сцена.

А вот наш низкий класс той же игры — для сравнения, насколько велика разница между классами:

Наша игра, низкий класс
Низкий класс: туман ближе, меньше монет и объектов.
Образец
Образец: вода, поезд, ущелье — насыщенно и плотно.

6. Где разрыв

Образец У нас Разрыв
Поезда едут, стоят, служат поверхностью один тип-куб, стоит большой
Объекты на трассе поезда, отбойники, шлагбаумы, рампы, арки, тележки, шары low, high, full — три формы большой
Смена участка мир перестраивается пять раз за забег меняются только декорации дальнего плана средний
Движение в мире поезда навстречу, флажки, вода мир статичен, движется только земля большой
Насыщенность цвета ярко, контрастно, тепло серо, пыльно, пасмурно средний
Персонаж крупный, с одеждой, анимация бега крупный, читается, бежит малый
HUD счёт, множитель, монеты, пауза счёт, монеты, пауза, звук, fps малый
Звук 172 уд/мин ровно весь забег 132 на старте → 176 на пике погони малый
Рампа (прыжок вверх) есть нет средний

Самое крупное — поезда и движение в мире. Владелец именно это и назвал: «там даже поезда двигаются, а у нас ничего нет». Он прав.

7. Что делать — по приоритету

Первое: движущиеся поезда. Это одна правка, дающая больше всего. Поезд, который едет навстречу по соседнему пути, — это и событие, и опасность, и жизнь в кадре. Нужно: вагон как объект (корпус, окна, тележки), движение по фиксированному пути, гудок, встречная волна воздуха. Он не должен ломать проходимость: путь занят только в стороне от полос игрока.

Второе: плотность объектов. Сейчас на трассе три формы. Добавить читаемые предметы, которые уже есть в образце: шлагбаум, отбойник, рампа, арка, стойка с товаром, воздушный шар. Каждый — из примитивов, в стиле сцены.

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

Четвёртое: рампы. В образце есть подъём на крышу вагона. У нас есть прыжок (высота 1.6) и подкат, но нет поверхности, на которую можно встать выше уровня земли. Это отдельная механика, крупнее остальных.

Пятое: звук — и тут я себя поправлю. Сначала я записал «поднять темп к 172», но это неверно: наш потолок уже 176, то есть на пике погони мы совпадаем с образцом. Разница только в исходном темпе — 132 против 172 ровного. Наш разгон сделан нарочно (напряжение растёт с погоней) и по-своему лучше: у образца драйв не меняется вообще. Так что это не дефект, а выбор. Если владелец хочет «драйв сразу» — это одна константа, а не работа.

8. Что предлагаю

Пункты 1–3 — это quick spec (1–3 дня): поезда, плотность, палитра. Они не трогают правила проходимости и не ломают существующие проверки.

Пункт 4 (рампы) — отдельная фича со своими требованиями: меняется физика приземления и высота земли, а от неё зависит подкат под высокое препятствие. Её надо делать отдельной спекой.

Границу держим: свои модели, свои имена, своя трасса — R23 и R40 в силе. Берём насыщенность и живость, а не чужой мир.

Скажи, с чего начинаем: поезда (даст больше всего) или сразу все три пункта quick-спеки.