Разработчик с помощью ИИ Claude создал впечатляющую веб-демку с деформируемым снегом и магией воды из "Аватара"

Браузерная демонстрация SNOWFLOW строится вокруг снега, который запоминает всё.

Следы, борозды от заклинаний и колея от сёрфинга остаются на поверхности и медленно затягиваются. И весь этот код от архитектуры до шейдеров написал Claude Code на модели Opus 5.

Работа заняла около девяти часов и примерно четыре миллиона токенов без учёта кэшированных. Начиналось всё не с готового шаблона, а с текстового техзадания, которое разработчик опубликовал целиком.

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

Само техзадание тоже писалось с помощью ИИ-модели. Разработчик задавал ключевые требования и просил превратить их в инструкции для кодящего агента, а приемлемый вариант плана получился примерно с пятнадцатой попытки.

Ядром всей конструкции служит буфер состояния поверхности, следующий за игроком. Это цель рендеринга размером 4096 на 4096 в формате R16F, покрывающая около 60–100 метров с разрешением порядка двух сантиметров на тексель. Буфер прокручивается тороидально по мере движения с привязкой к границам текселей, чтобы картинка не плыла.

В буфере лежат сразу несколько каналов, включая глубину вдавливания, вытесненную массу снега и состояния поверхности вроде уплотнения, влажности и льда. Деформация накапливается наложением кистей каждый кадр, а не пересчитывается из списка прошлых событий. Отдельный проход медленной диффузии постепенно заглаживает следы, причём параметры подобраны так, чтобы колея оставалась хорошо заметной спустя минуту.

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

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

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

Все пять заклинаний записываются в тот же буфер, что и шаги персонажа:

  • Sweep – волна слякоти и воды, прокладывающая канал с отвалами по краям

  • Ribbon – удерживаемая струя, следующая за рукой и прицелом и режущая тонкие дуги в снегу

  • Bloom – столб порошка и воды с воронкой и приподнятым краем, оседающий медленным занавесом

  • Crystallize – быстрая заморозка с ростом преломляющих кристаллов и переводом поверхности в глянцевый лёд

  • Vortex – вихрь, который снимает снег с земли кольцом, держит его в воздухе и даёт осесть обратно

Заклинания активируются нажатием цифры 1-5.

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

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

Одна строка техзадания вызвала особо много возмущения. Разработчик прямо запретил писать тесты, объяснив это тем, что время на тесты отнимается у шейдера снега. По его словам, Opus всё равно продолжал их писать, а смысл ограничения был в том, чтобы не потратить двадцать миллионов токенов на тесты и четыре на саму демонстрацию.

По словам разработчика, в Chrome на Windows 11 и RTX 5070 Ti с разрешением 2560×1440 симуляция выдает 90 кадров в секунду.

Исходный код можно скачать на GitHub. Интересно, что часть игроков жалуется на низкую производительность даже на RTX 4060.

Больше статей на Shazoo
Тэги:

Об авторе

Эксперт по Fallout
Главный редактор
Более 16 лет в индустрии освещения видеоигр, кино, сериалов, науки и техники. Особенно разбираюсь в серии Fallout, ценитель The Elder Scrolls. Поклонник Arcanum и Fallout Tactics. Больше всего играю в Civilization, Old World и градостроители. Изучаю ИИ и загадки космоса.