Enduro, день второй: из куба вырос мотоцикл, а на нём райдер
Утром на экране был серый куб. К вечеру по площадке ездит оранжевый эндуро с гонщиком в джерси, делает вилли и прыгает с трамплина. Рассказываю, как это случилось за день, кто рисовал мотоцикл, не видя его, и почему мы свернули с симулятора на аркаду.
Вчера я хвастался кубом. Серый куб, белый пол, зато курки работают. Сегодня хвастаюсь этим:

Это не картинка из интернета, это наша игра, снимок из автотеста. За день. Ну, за день и ночь, если честно, коммиты есть в два часа ночи. Дальше по порядку.
Ночь: мотор, коробка и первые грабли
Сначала Codex сдал вторую задачу: двигатель, коробка и сцепление как отдельный код с тестами, без движка. Claude встроил это в мотоцикл: физическая рама, подвеска лучами, шины с кругом трения, автомат передач с автосцеплением, вибрация и курки. Мотоцикла при этом ещё не было видно, была физика без картинки.
Грабли этой ночи, чтобы вы знали, на что уходит время в геймдеве:
- Модель из Blender импортируется в метрах, а движок считает в сантиметрах. Мотоцикл размером с зажигалку, пока не домножишь на сто.
- Редактор в фоне режет частоту кадров до трёх в секунду. Пока окно Claude было впереди, физика считалась на трёх кадрах, и мотоцикл вёл себя как пьяный. Полчаса поисков, одна строка в настройках.
- Если закрыть редактор с несохранённым уровнем, он при следующем запуске виснет на диалоге «восстановить?», которого никто не видит. Теперь стартовая карта всегда сохранённая.
- Курки. Мы считали, что шкала силы от нуля до восьми, а движок на Mac делит её на 255. Поэтому вчерашние «три процента силы». Теперь пишем в низкоуровневую шкалу напрямую, и рычаг наконец сопротивляется по-настоящему.
3D-художник, который не видит своих работ
Модель мотоцикла мы отдали Codex. Тут важная деталь: у него нет рук и глаз. Он не может запустить Blender и посмотреть, что получилось. Поэтому договорились так: Codex пишет скрипт, который строит модель, я запускаю Blender, рендерю три ракурса и скидываю ему картинки. Он смотрит и правит скрипт. Четыре итерации.
Так появился оранжевый эндуро в духе KTM: полые ободы со спицами, бак, седло, крылья, глушитель с резонатором, витая пружина амортизатора, цепь со звездой. Шесть частей с опорными точками, чтобы вилка, маятник и колёса двигались от подвески и руля. Шестьдесят восемь тысяч треугольников. Модель стилизованная, заводским чертежам не соответствует, и это нормально: у нас не автосалон.
Ради этого мы переписали роли в дрим-тим. Было: Codex физика, Claude движок. Стало: Codex ещё и графика, Claude код и физика. Решение принял я после первых моделей, и агенты записали его в журнал решений с датой.
День: разворот на аркаду
Днём Claude собрал исследование по технике управления мотоциклом, а Codex сравнил четыре архитектуры физики и порекомендовал одну. Была поставлена задача на реалистичное руление и равновесие «по открытой математике». И вот тут я посмотрел на всё это и сказал: стоп.
Из всего, что нужно для езды, нам нужна только мотокросс-физика. Не симулятор, где мотоцикл падает от неправильного угла руля, а аркада, где приятно ехать, прыгать и делать вилли, а хард-эндуро со брёвнами и камнями будет потом. Правый стик руль с наклоном, левый стик тело: назад вилли, вперёд стоппи, в полёте управление. Курки как были: газ и сцепление. Треугольник поднять мотоцикл.
Задача про реалистичное руление в проект не влилась и лежит как задел. Агенты отметили это в решениях с условием «если вернёмся к реализму». Мне нравится, что ничего не выбросили.
Вечер: райдер
Мотоцикл без гонщика выглядит как призрак. Codex получил задачу: стилизованный райдер со скелетом. Та же схема: скрипт, мои рендеры, три итерации. В первой версии нагрудник торчал узкими полосками, во второй чёрные выступы на спине, в третьей всё село. Семнадцать костей, четыре тысячи треугольников, джерси, шлем, очки, боты.
Claude посадил его на мотоцикл и сделал позы процедурными: тело вперёд-назад от левого стика, корпус в поворот, голова смотрит по направлению, присед на ударе подвески. Руки на руле пока не через обратную кинематику, это следующий шаг.


Автотест вместо меня
Самая полезная вещь дня для процесса. Claude сделал автотест: файл с программой езды, игра запускается отдельным процессом без редактора, едет змейку, делает вилли, прыгает с трамплина, пишет телеметрию в лог и снимает экран. Редактор для проверки больше не нужен, и все картинки в этом посте сняты именно так, без моих рук.
Последний коммит дня: «знак момента тангажа исправлен: стик назад поднимает нос». То есть до этого вилли делалось стиком вперёд. Автотест это и поймал.
Что дальше
Мой отзыв по езде с геймпадом: руль, вилли, прыжок, райдер. Потом руки на руле и нога вперёд в повороте. Потом стилизованная трасса с бермами и рельефом, её тоже будет писать Codex скриптом, а рендерить я. Вчера я думал, что до мотоцикла неделя. Сегодня думаю, что до трассы, на которой интересно провести полчаса, тоже неделя. Посмотрим, кто из нас двоих ошибается.
Комментарии
Пока никто не написал. Будь первым.