Студия PEAK открыла издательскую программу с условиями, которых инди обычно не дают
Aggro Crab, авторы PEAK с 20 млн игроков, 1 сентября запустили Aggro Crab Presents. Берут небольшие команды с бюджетом до $500 000 и сроком до двух лет, подписывают 1–2 игры в год, жанровых рамок нет, приоритет «стилизованные игры с характером». Генеративные ИИ-ассеты запрещены прямым текстом.
Главное в условиях. Без 100% recoup: издатель не забирает всю выручку до возврата аванса. Финальный платёж за релизный milestone не удерживают до дня выхода, хотя этим приёмом издатели обычно страхуются. Milestone можно переносить, платежи разбивать. Для Subway Midnight, которую Бабби Даркстар делал три года в одиночку, издатель не брал ничего до 10 000 продаж.
Доля выручки после возврата аванса, права на IP и география команд на сайте не названы, и выплаты в долларах для команд из России стоит выяснять до подачи. Форма заявки открыта. Что ещё стоит спросить у издателя, разобрали на сайте.
@make_game
Aggro Crab, авторы PEAK с 20 млн игроков, 1 сентября запустили Aggro Crab Presents. Берут небольшие команды с бюджетом до $500 000 и сроком до двух лет, подписывают 1–2 игры в год, жанровых рамок нет, приоритет «стилизованные игры с характером». Генеративные ИИ-ассеты запрещены прямым текстом.
Главное в условиях. Без 100% recoup: издатель не забирает всю выручку до возврата аванса. Финальный платёж за релизный milestone не удерживают до дня выхода, хотя этим приёмом издатели обычно страхуются. Milestone можно переносить, платежи разбивать. Для Subway Midnight, которую Бабби Даркстар делал три года в одиночку, издатель не брал ничего до 10 000 продаж.
Доля выручки после возврата аванса, права на IP и география команд на сайте не названы, и выплаты в долларах для команд из России стоит выяснять до подачи. Форма заявки открыта. Что ещё стоит спросить у издателя, разобрали на сайте.
@make_game
🔥11🤣3❤1👎1🤗1
Команда из шести человек продала 12 000 копий при 11 000 вишлистов, и 90% купил Китай
One Last Hand, многопользовательская карточная party-игра, вышла в Steam 14 августа. За две недели около 16 500 покупок до возвратов и около 12 000 чистых, валовая выручка примерно $59 000, после возвратов, chargeback и налогов около $47 000 до доли Steam. В первый день ушло больше 4500 копий, потом продажи резко упали.
Самое интересное в разбивке по регионам: примерно 90% продаж пришлись на Китай, и он был сильнейшим регионом ещё на этапе демо. Запад команда, по её словам, так и не освоила. Возвраты и падение после старта разработчики связывают с проблемами подключения и стабильности мультиплеера в первые дни.
Из маркетинга: реклама на Reddit, работа с авторами контента и офлайн-мероприятия. Вывод команды прямой: число вишлистов само по себе ничего не предсказывает, важно, откуда они. Полный отчёт с вопросами к сообществу на Reddit.
@make_game
One Last Hand, многопользовательская карточная party-игра, вышла в Steam 14 августа. За две недели около 16 500 покупок до возвратов и около 12 000 чистых, валовая выручка примерно $59 000, после возвратов, chargeback и налогов около $47 000 до доли Steam. В первый день ушло больше 4500 копий, потом продажи резко упали.
Самое интересное в разбивке по регионам: примерно 90% продаж пришлись на Китай, и он был сильнейшим регионом ещё на этапе демо. Запад команда, по её словам, так и не освоила. Возвраты и падение после старта разработчики связывают с проблемами подключения и стабильности мультиплеера в первые дни.
Из маркетинга: реклама на Reddit, работа с авторами контента и офлайн-мероприятия. Вывод команды прямой: число вишлистов само по себе ничего не предсказывает, важно, откуда они. Полный отчёт с вопросами к сообществу на Reddit.
@make_game
😍1
Квартал Сан-Франциско на чистом Three.js, собранный агентами из открытых данных, можно клонировать и разобрать
PhiloLabs выложила fable51-worlds: проходимую копию Юнион-сквер, которую, по заявлению авторов, по одному промпту построили агенты Claude Fable 5.1. Игрового движка нет. Контуры 453 зданий взяты из OpenStreetMap, рельеф из USGS, 206 GLB-модулей сгенерированы офлайн скриптами на Blender как библиотеке и весят 5,1 МБ. 220 пешеходов ходят по навграфу из 1398 узлов, 109 машин встают на красный, в магазины Apple и Nintendo можно зайти.
Полезное для геймдева тут в конвейере: фасады описаны JSON-спецификацией и собираются в геометрию при загрузке, а качество проверяется скриншотами с 34 ракурсов против фотографий. На HN заметили, что модели выдают избыточно полигональную геометрию, и 7–8 млн треугольников на кадр для одного квартала с этим согласуются. Как это собрано и что не получилось, написали на сайте.
@make_game
PhiloLabs выложила fable51-worlds: проходимую копию Юнион-сквер, которую, по заявлению авторов, по одному промпту построили агенты Claude Fable 5.1. Игрового движка нет. Контуры 453 зданий взяты из OpenStreetMap, рельеф из USGS, 206 GLB-модулей сгенерированы офлайн скриптами на Blender как библиотеке и весят 5,1 МБ. 220 пешеходов ходят по навграфу из 1398 узлов, 109 машин встают на красный, в магазины Apple и Nintendo можно зайти.
Полезное для геймдева тут в конвейере: фасады описаны JSON-спецификацией и собираются в геометрию при загрузке, а качество проверяется скриншотами с 34 ракурсов против фотографий. На HN заметили, что модели выдают избыточно полигональную геометрию, и 7–8 млн треугольников на кадр для одного квартала с этим согласуются. Как это собрано и что не получилось, написали на сайте.
@make_game
😱1
SteamDB теперь принадлежит владельцу Nexus Mods, и это касается тех, кто смотрит по ней продажи
xPaw тянул SteamDB с 2013 года почти в одиночку, объём работы дорос до полной занятости, и в январе он начал искать партнёра. Итог объявили 2 сентября: сайт становится частью структуры Nexus Mods. Обещания в FAQ: имя и адрес остаются, текущие бесплатные функции не уходят за paywall, рекламных сетей не будет.
Для разработчика важны две вещи. Первая: история билдов и манифестов SteamDB, которой больше десяти лет, поедет в мод-менеджеры Nexus, чтобы предупреждать игроков об обновлении, которое сломает моды, и фиксировать точную версию игры в коллекциях. Если ваша игра поддерживает моды, жалоб «после патча всё сломалось» должно стать меньше. Вторая: API для разработчиков и издателей обещан со словами «скорее всего», условий нет, а значит, парсинг страниц может однажды закрыться. Что ещё обещали и чего не сказали, на сайте.
@make_game
xPaw тянул SteamDB с 2013 года почти в одиночку, объём работы дорос до полной занятости, и в январе он начал искать партнёра. Итог объявили 2 сентября: сайт становится частью структуры Nexus Mods. Обещания в FAQ: имя и адрес остаются, текущие бесплатные функции не уходят за paywall, рекламных сетей не будет.
Для разработчика важны две вещи. Первая: история билдов и манифестов SteamDB, которой больше десяти лет, поедет в мод-менеджеры Nexus, чтобы предупреждать игроков об обновлении, которое сломает моды, и фиксировать точную версию игры в коллекциях. Если ваша игра поддерживает моды, жалоб «после патча всё сломалось» должно стать меньше. Вторая: API для разработчиков и издателей обещан со словами «скорее всего», условий нет, а значит, парсинг страниц может однажды закрыться. Что ещё обещали и чего не сказали, на сайте.
@make_game
😭3👍2
BLARM анимирует статичную 3D-модель по обычному видео без рига и скелета
Девять авторов из Roblox, UMass Amherst и Технического университета Крита выложили на arXiv метод, который берёт статичную сетку и монокулярное видео и возвращает согласованную по времени анимацию. Ни скелета, ни cage, ни весов скиннинга: движение раскладывается на 31 обучаемый жёсткий компонент плюс корневой, с постоянными весами вершин к компонентам.
Скорость для такого класса задач непривычная: 16 кадров на RTX 4080 за 3,13 секунды. ActionMesh на том же тесте тратит 350 секунд, Mesh4D 55,33. По метрикам на ActionBench: CD-3D 1,71, CD-4D 3,07, CD-Motion 7,15. Обучение заняло 1,5 дня на восьми H200.
Ограничения авторы показывают честно: ошибки на соседних визуально похожих участках и при неподходящей топологии сетки, длинные видео обрабатываются авторегрессионно. Кода и весов пока нет, статья под CC BY 4.0. Для техартистов это повод следить за репозиторием: пайплайн «снял на телефон, получил анимацию ассета» перестаёт быть фантастикой. Статья на arXiv.
@make_game
Девять авторов из Roblox, UMass Amherst и Технического университета Крита выложили на arXiv метод, который берёт статичную сетку и монокулярное видео и возвращает согласованную по времени анимацию. Ни скелета, ни cage, ни весов скиннинга: движение раскладывается на 31 обучаемый жёсткий компонент плюс корневой, с постоянными весами вершин к компонентам.
Скорость для такого класса задач непривычная: 16 кадров на RTX 4080 за 3,13 секунды. ActionMesh на том же тесте тратит 350 секунд, Mesh4D 55,33. По метрикам на ActionBench: CD-3D 1,71, CD-4D 3,07, CD-Motion 7,15. Обучение заняло 1,5 дня на восьми H200.
Ограничения авторы показывают честно: ошибки на соседних визуально похожих участках и при неподходящей топологии сетки, длинные видео обрабатываются авторегрессионно. Кода и весов пока нет, статья под CC BY 4.0. Для техартистов это повод следить за репозиторием: пайплайн «снял на телефон, получил анимацию ассета» перестаёт быть фантастикой. Статья на arXiv.
@make_game
👍2❤1😇1
Сегодня в 21:00 по Москве Epic покажет, как один человек собрал сетевую игру на Blueprint за семь дней
В эфире Inside Unreal Кристофер Мэйн разберёт свой рабочий процесс: онлайн-игра в жанре puzzle extraction, ретро-эстетика, мультиплеер, всё на Blueprints без C++. Заявлены концепт, 3D-моделирование и риггинг, анимация, текстуры и звук, то есть полный пайплайн от идеи до сетевого прототипа за неделю. Анонс и ссылка на трансляцию на форуме Epic.
Это анонс, а не отчёт: как поведёт себя такой прототип под нагрузкой и что пришлось выкинуть ради срока, узнаем только в эфире. Если делаете сетевой прототип в одиночку, час на этот стрим окупится хотя бы списком того, чего не делать :)
@make_game
В эфире Inside Unreal Кристофер Мэйн разберёт свой рабочий процесс: онлайн-игра в жанре puzzle extraction, ретро-эстетика, мультиплеер, всё на Blueprints без C++. Заявлены концепт, 3D-моделирование и риггинг, анимация, текстуры и звук, то есть полный пайплайн от идеи до сетевого прототипа за неделю. Анонс и ссылка на трансляцию на форуме Epic.
Это анонс, а не отчёт: как поведёт себя такой прототип под нагрузкой и что пришлось выкинуть ради срока, узнаем только в эфире. Если делаете сетевой прототип в одиночку, час на этот стрим окупится хотя бы списком того, чего не делать :)
@make_game
🗿6🔥1🤨1
Бесплатные ассеты рассортировали по тому, насколько опасно тащить их в коммерческую игру
Скачать бесплатно и иметь право продать игру с этим внутри две разные вещи, и ловит людей именно лицензия. Автор поста в r/gamedev собрал каталог по уровням риска. Самый спокойный ярус, CC0 и public domain без обязательного указания авторства: Poly Haven (модели, текстуры, HDRI), ambientCG (тысячи PBR-материалов без аккаунта), Kenney (3D-наборы, спрайты, UI, аудио), Quaternius (low-poly, многое уже под риг).
Смешанные лицензии, где условия меняются от файла к файлу: Sketchfab, OpenGameArt, itch.io, где правила задаёт конкретный автор. Со звуком отдельное предупреждение: на бесплатных аудиосайтах рядом с CC0 попадаются перезалитые дорожки из фильмов, игр и YouTube; Freesound смешивает CC0 и CC BY, а бандлы Sonniss с GDC названы профессиональными и чистыми по лицензии. В конце бесплатный софт (Blender, Godot, Krita, Blockbench, Pixelorama, Material Maker) и учебные ресурсы. Автор раскрыл, что два ресурса из списка принадлежат ему, и обещает поддерживать список.
@make_game
Скачать бесплатно и иметь право продать игру с этим внутри две разные вещи, и ловит людей именно лицензия. Автор поста в r/gamedev собрал каталог по уровням риска. Самый спокойный ярус, CC0 и public domain без обязательного указания авторства: Poly Haven (модели, текстуры, HDRI), ambientCG (тысячи PBR-материалов без аккаунта), Kenney (3D-наборы, спрайты, UI, аудио), Quaternius (low-poly, многое уже под риг).
Смешанные лицензии, где условия меняются от файла к файлу: Sketchfab, OpenGameArt, itch.io, где правила задаёт конкретный автор. Со звуком отдельное предупреждение: на бесплатных аудиосайтах рядом с CC0 попадаются перезалитые дорожки из фильмов, игр и YouTube; Freesound смешивает CC0 и CC BY, а бандлы Sonniss с GDC названы профессиональными и чистыми по лицензии. В конце бесплатный софт (Blender, Godot, Krita, Blockbench, Pixelorama, Material Maker) и учебные ресурсы. Автор раскрыл, что два ресурса из списка принадлежат ему, и обещает поддерживать список.
@make_game
✍3👍1
Разработчик с двадцатилетним стажем прошёл всю Gamescom и записал, куда смещается рынок
Восемь дней, больше 1700 экспонентов, 70% из-за пределов Германии, инди-зона выросла на 16% до 420 студий; официальная пресс-служба потом насчитала 368 тысяч посетителей из 131 страны. На этом фоне автор описывает главное ощущение инди: внимание стало самым дефицитным ресурсом, и маленький стенд конкурирует не с соседом, а с тридцатиминутным роликом GTA VI, вышедшим прямо во время выставки, и с How To Fish, продавшей миллион копий за два дня.
Из трендов: аутсорс-разработка и сервисные подрядчики растут, студии из Саудовской Аравии нанимают западных ветеранов удалённо, а спрос на ИИ, по словам автора, поднимает цены на игровое железо. Из бытового: у инди-команд украли ноутбуки из запертого шкафа в холле 4.1. Если планируете выставку в следующем году, пост стоит прочитать до бронирования стенда.
@make_game
Восемь дней, больше 1700 экспонентов, 70% из-за пределов Германии, инди-зона выросла на 16% до 420 студий; официальная пресс-служба потом насчитала 368 тысяч посетителей из 131 страны. На этом фоне автор описывает главное ощущение инди: внимание стало самым дефицитным ресурсом, и маленький стенд конкурирует не с соседом, а с тридцатиминутным роликом GTA VI, вышедшим прямо во время выставки, и с How To Fish, продавшей миллион копий за два дня.
Из трендов: аутсорс-разработка и сервисные подрядчики растут, студии из Саудовской Аравии нанимают западных ветеранов удалённо, а спрос на ИИ, по словам автора, поднимает цены на игровое железо. Из бытового: у инди-команд украли ноутбуки из запертого шкафа в холле 4.1. Если планируете выставку в следующем году, пост стоит прочитать до бронирования стенда.
@make_game
✍4😭1
Свой движок сегодня у 13% релизов на Steam, но на них приходится 43% проданных копий
Цифры из VGInsights: в 2024 году собственный движок использовали примерно 13% релизов на Steam против 71% в 2012-м. Тренд выглядит окончательным, и разговор на этом обычно заканчивается.
Не заканчивается. На эти 13% пришлось 43% проданных копий. Да, в основном это AAA с собственными технологиями, но цифра показывает, что своя технология до сих пор может окупаться, а не только тешить самолюбие.
Прежде чем отвечать на «зачем», автор берётся определить, что вообще считать движком, и термин оказывается настолько широким, что под него подводили даже Claude Code: сцена собирается каждый кадр, раскладывается по элементам, растеризуется и диффится с предыдущей.
Это первая часть серии, дальше обещают практику. Читать стоит, если мысль про свой движок у вас периодически всплывает и вы её каждый раз гоните.
Цифры из VGInsights: в 2024 году собственный движок использовали примерно 13% релизов на Steam против 71% в 2012-м. Тренд выглядит окончательным, и разговор на этом обычно заканчивается.
Не заканчивается. На эти 13% пришлось 43% проданных копий. Да, в основном это AAA с собственными технологиями, но цифра показывает, что своя технология до сих пор может окупаться, а не только тешить самолюбие.
Прежде чем отвечать на «зачем», автор берётся определить, что вообще считать движком, и термин оказывается настолько широким, что под него подводили даже Claude Code: сцена собирается каждый кадр, раскладывается по элементам, растеризуется и диффится с предыдущей.
Это первая часть серии, дальше обещают практику. Читать стоит, если мысль про свой движок у вас периодически всплывает и вы её каждый раз гоните.
Elias Farhan
Soup Raiders Goes Native: What You Gain by Building Your Own Game Engine
According to VGInsights, about 13% of games released on Steam in 2024 used a custom engine, down from 71% in 20121. So looking at this trend, why should anybody try to make their own game engine? Video Game Insights, The Big Game Engines Report of 2025. …
👀2
Epic выложила запись стрима о том, что MCP уже умеет внутри редактора Fortnite
Model Context Protocol это способ дать ИИ-агенту доступ к инструментам программы, и Epic встроила его в UEFN, редактор для Fortnite Creative. В записи эфира Магнус Энебакк, евангелист языка Verse, показывает базовые сценарии и всё, что MCP на сегодня умеет делать в редакторе. Ссылка на запись на форуме Epic, сама трансляция доступна по fn․gg/mcp-uefn-stream.
Если вы не делаете карты для Fortnite, смотреть всё равно есть зачем: UEFN построен на Unreal Engine со своим набором возможностей и ограничений, и по нему видно, какие операции редактора Epic считает безопасными для агента, а какие нет. Это подсказка о том, куда пойдёт MCP в большом Unreal Editor :)
@make_game
Model Context Protocol это способ дать ИИ-агенту доступ к инструментам программы, и Epic встроила его в UEFN, редактор для Fortnite Creative. В записи эфира Магнус Энебакк, евангелист языка Verse, показывает базовые сценарии и всё, что MCP на сегодня умеет делать в редакторе. Ссылка на запись на форуме Epic, сама трансляция доступна по fn․gg/mcp-uefn-stream.
Если вы не делаете карты для Fortnite, смотреть всё равно есть зачем: UEFN построен на Unreal Engine со своим набором возможностей и ограничений, и по нему видно, какие операции редактора Epic считает безопасными для агента, а какие нет. Это подсказка о том, куда пойдёт MCP в большом Unreal Editor :)
@make_game
🎉1
Godot против движка, о котором вы, скорее всего, не слышали
Limn Engine открытый, бесплатный, дружелюбный к новичку и умеет 2D. Ровно как Godot, и на этом сходство заканчивается.
Сравнение построено вокруг того, чем они на самом деле различаются, и автор не назначает победителя. Godot известен и оброс экосистемой, Limn моложе и компактнее, и второе не автоматически хуже.
Полезно, если присматриваетесь ко второму движку под небольшой проект и не хотите тащить туда тяжёлый инструмент просто потому, что он под рукой.
Limn Engine открытый, бесплатный, дружелюбный к новичку и умеет 2D. Ровно как Godot, и на этом сходство заканчивается.
Сравнение построено вокруг того, чем они на самом деле различаются, и автор не назначает победителя. Godot известен и оброс экосистемой, Limn моложе и компактнее, и второе не автоматически хуже.
Полезно, если присматриваетесь ко второму движку под небольшой проект и не хотите тащить туда тяжёлый инструмент просто потому, что он под рукой.
DEV Community
⚔️ Godot vs Limn Engine: Which One Should You Choose?
⚔️ Godot vs Limn Engine: Which One Should You Choose? A Brutally Honest Comparison of Two...
1❤1👏1
Расставить деревья случайно, но чтобы не налезали друг на друга: алгоритм Бридсона и две его оптимизации
Задача из любого процедурного леса, россыпи камней или системы частиц: точки должны быть случайными, но не ближе заданного радиуса. Наивный вариант, кидать точки и отбрасывать близкие, быстро упирается в почти стопроцентный процент отказов. Джастин Стайнман разбирает одностраничный алгоритм Роберта Бридсона 2007 года, у которого почти тысяча цитирований: сетка с ячейкой
Дальше две простые доработки. Для 2D: точка помнит родителя и не тратит попытки на сектор кольца, где заведомо слишком близко к нему. Вторая работает и в 3D. Есть объяснение, как равномерно сэмплировать кольцо и почему
@make_game
Задача из любого процедурного леса, россыпи камней или системы частиц: точки должны быть случайными, но не ближе заданного радиуса. Наивный вариант, кидать точки и отбрасывать близкие, быстро упирается в почти стопроцентный процент отказов. Джастин Стайнман разбирает одностраничный алгоритм Роберта Бридсона 2007 года, у которого почти тысяча цитирований: сетка с ячейкой
r / sqrt(d), где в каждой ячейке не больше одной точки, активный список и до 30 попыток на кольце от r до 2r вокруг каждой точки.Дальше две простые доработки. Для 2D: точка помнит родителя и не тратит попытки на сектор кольца, где заведомо слишком близко к нему. Вторая работает и в 3D. Есть объяснение, как равномерно сэмплировать кольцо и почему
2r * x^(1/d) на случайном единичном векторе при x, равномерном на отрезке от 1/2^d до 1, даёт правильное распределение, и пример на GPU. Метод старый, разбор свежий, применять можно в любом движке.@make_game
❤2👍1
Трое выходцев из Epic делают движок, который можно дописывать кодом, а не скриптами
Unity и Unreal сделали примерно 70% релизов на Steam в 2025 году, и место для нового движка звучит как утопия. Арьян Бруссе, Сьорд Де Йонг и Михал Валиент, за плечами которых Epic Games, Guerrilla и Apple, считают иначе: возможность появилась только сейчас.
При этом речь не про генерацию игр промптами. Валиент, технический директор Immens, формулирует прямо: ИИ здесь про расширяемость. Кодовая база проектируется так, чтобы модель хорошо рассуждала о ней целиком.
Идея в том, что маленькая команда или одиночка приходит и дописывает себе, скажем, собственную систему частиц, вместо того чтобы скриптовать поверх чужих решений и упираться в то, что наружу не вынесено.
Проверить обещание пока нельзя, но заявка редкая: последние годы новые движки заходили через удобство, а не через открытость внутренностей.
Unity и Unreal сделали примерно 70% релизов на Steam в 2025 году, и место для нового движка звучит как утопия. Арьян Бруссе, Сьорд Де Йонг и Михал Валиент, за плечами которых Epic Games, Guerrilla и Apple, считают иначе: возможность появилась только сейчас.
При этом речь не про генерацию игр промптами. Валиент, технический директор Immens, формулирует прямо: ИИ здесь про расширяемость. Кодовая база проектируется так, чтобы модель хорошо рассуждала о ней целиком.
Идея в том, что маленькая команда или одиночка приходит и дописывает себе, скажем, собственную систему частиц, вместо того чтобы скриптовать поверх чужих решений и упираться в то, что наружу не вынесено.
Проверить обещание пока нельзя, но заявка редкая: последние годы новые движки заходили через удобство, а не через открытость внутренностей.
GamesIndustry.biz
Three Epic veterans are building an AI-powered game engine to break the industry's doom cycle
Amid mounting discontent with Unity and Unreal, Immens promises lower costs and faster development for small teams
🤔7😁1😢1
Движок на C++20 с Vulkan, ECS и обработкой событий без блокировок
Аргументация автора против готовых движков конкретная: пустой стартовый проект в современном движке компилируется в сотни мегабайт бинарных зависимостей, а объектная иерархия вида Actor, Pawn, Character разбрасывает данные сущностей по куче и стабильно промахивается мимо кешей L1 и L2.
Eisen Engine отвечает на это архитектурой: явные абстракции рендера над Vulkan и OpenGL, система сущностей и компонентов с выравниванием под кеш-линию, диспетчеризация событий без блокировок и тик-цикл, рассчитанный на ИИ-нагрузку.
Разбор интересен как чертёж: видно, какие решения принимаются, когда за спиной нет чужого рантайма.
Аргументация автора против готовых движков конкретная: пустой стартовый проект в современном движке компилируется в сотни мегабайт бинарных зависимостей, а объектная иерархия вида Actor, Pawn, Character разбрасывает данные сущностей по куче и стабильно промахивается мимо кешей L1 и L2.
Eisen Engine отвечает на это архитектурой: явные абстракции рендера над Vulkan и OpenGL, система сущностей и компонентов с выравниванием под кеш-линию, диспетчеризация событий без блокировок и тик-цикл, рассчитанный на ИИ-нагрузку.
Разбор интересен как чертёж: видно, какие решения принимаются, когда за спиной нет чужого рантайма.
DEV Community
Building Eisen Engine: Architecture of a Custom C++20 Game Engine from Scratch (Vulkan, ECS & AI Subsystems)
An exhaustive architectural breakdown of building Eisen Engine in modern C++20: explicit Vulkan 1.3 rendering pipelines, cache-aligned ECS data locality, and embedded AI-native subsystems at 60 FPS.
❤3👎1
Физика, стеклянные деформации и процедурный звук в одном эксперименте на WebGPU
Франк Райтбергер с появлением
В сцене сходятся три вещи: физика, деформации стекла и процедурно генерируемый звук. Последнее в браузерных демках встречается редко, и именно связка звука с симуляцией отличает эксперимент от обычного шейдерного этюда.
Компактный образец того, на что уже сегодня годится WebGPU в связке с TSL, без разрастания в полноценный проект.
Франк Райтбергер с появлением
WebGPURenderer и TSL сознательно перевёл свои эксперименты на новый стек, чтобы публиковать их уже на современной технологии. «Садовая аномалия» один из них.В сцене сходятся три вещи: физика, деформации стекла и процедурно генерируемый звук. Последнее в браузерных демках встречается редко, и именно связка звука с симуляцией отличает эксперимент от обычного шейдерного этюда.
Компактный образец того, на что уже сегодня годится WebGPU в связке с TSL, без разрастания в полноценный проект.
Codrops
Garden Anomaly: A Tiny WebGPU and TSL Experiment | Codrops
A tiny WebGPU and TSL experiment, tinkering with physics, deformations, and procedural audio, all tied together inside a sphere to play with.
👍3❤1🤔1💋1
Forwarded from Zen of Python
EVE Online начала переезд на Python 3 после двух десятилетий на второй ветке
Под каждым прыжком через гейт, каждым ордером на рынке и каждым флитфайтом в EVE лежит очень много Python. Он держит New Eden больше двадцати лет, и теперь CCP объявила о начале перехода на третью ветку.
Формулировка успеха у команды показательная: миграция должна пройти совершенно незаметно, если не считать моментов, когда что-то начнёт работать глаже. Первые шаги уже выкачены на тестовый сервер Singularity.
Это редкий публичный кейс переезда живого продакшена такого возраста. Обещают в итоге более быстрый поиск багов, место под новые фичи и общее ускорение, но дорога, по их же словам, длинная.
Под каждым прыжком через гейт, каждым ордером на рынке и каждым флитфайтом в EVE лежит очень много Python. Он держит New Eden больше двадцати лет, и теперь CCP объявила о начале перехода на третью ветку.
Формулировка успеха у команды показательная: миграция должна пройти совершенно незаметно, если не считать моментов, когда что-то начнёт работать глаже. Первые шаги уже выкачены на тестовый сервер Singularity.
Это редкий публичный кейс переезда живого продакшена такого возраста. Обещают в итоге более быстрый поиск багов, место под новые фичи и общее ускорение, но дорога, по их же словам, длинная.
EVE Online
The Move to Python 3 Begins! | EVE Online
How do you migrate 2.4 million lines of code?
💊1
Unity расспросила инди-разработчицу, как она на самом деле пользуется Copilot
Своих ИИ-инструментов у Unity теперь хватает: ассистент прямо в редакторе и интеграции с привычным инструментарием вышли в бету. Тем интереснее, что компания отдельно поговорила про чужой инструмент.
Собеседница выбрана не случайно: Стейси Хаффнер была principal developer advocate в Microsoft, ведёт собственную инди-студию и больше десяти лет делает игры, а её опыт покрывает .NET, Xbox и Unity. То есть это практика, а не маркетинговая подводка к бете.
В разговоре пять приёмов, которыми она встраивает Copilot в свой процесс разработки игр. Примерить их стоит, если Copilot у вас уже открыт в проекте, но дальше автодополнения дело не идёт.
Своих ИИ-инструментов у Unity теперь хватает: ассистент прямо в редакторе и интеграции с привычным инструментарием вышли в бету. Тем интереснее, что компания отдельно поговорила про чужой инструмент.
Собеседница выбрана не случайно: Стейси Хаффнер была principal developer advocate в Microsoft, ведёт собственную инди-студию и больше десяти лет делает игры, а её опыт покрывает .NET, Xbox и Unity. То есть это практика, а не маркетинговая подводка к бете.
В разговоре пять приёмов, которыми она встраивает Copilot в свой процесс разработки игр. Примерить их стоит, если Copilot у вас уже открыт в проекте, но дальше автодополнения дело не идёт.
Unity
👎1
Точек от MediaPipe мало, чтобы натянуть шейдер на лицо игрока: нужна топология и проекция
Для аватара или AR-маски трекер отдаёт 468 точек в кадре, и на этом всё: ни граней, ни UV-развёртки, рендерить нечего.
Поверхность собирается отдельно: фиксированную топологию лица Google надо достать и натянуть на точки, а UV перенести с канонической модели. Дальше проекция обязана повторить то, что происходит с картинкой на экране: её зеркалят и обрезают под размер контейнера. Иначе меш разъезжается с видео, а текстура садится вверх ногами.
Второй источник проблем: распознавание и рендер идут по разным часам. Трекер пишет результат в изменяемую ссылку, а рендер мутирует существующий BufferGeometry, и 468 позиций не проходят через реактивность каждый кадр. В движке приём тот же: обновлять буфер вершин, а не пересобирать меш.
Разбор на Codrops идёт по шагам, вместе с настройкой GPU-делегата.
Для аватара или AR-маски трекер отдаёт 468 точек в кадре, и на этом всё: ни граней, ни UV-развёртки, рендерить нечего.
Поверхность собирается отдельно: фиксированную топологию лица Google надо достать и натянуть на точки, а UV перенести с канонической модели. Дальше проекция обязана повторить то, что происходит с картинкой на экране: её зеркалят и обрезают под размер контейнера. Иначе меш разъезжается с видео, а текстура садится вверх ногами.
Второй источник проблем: распознавание и рендер идут по разным часам. Трекер пишет результат в изменяемую ссылку, а рендер мутирует существующий BufferGeometry, и 468 позиций не проходят через реактивность каждый кадр. В движке приём тот же: обновлять буфер вершин, а не пересобирать меш.
Разбор на Codrops идёт по шагам, вместе с настройкой GPU-делегата.
👎2😇1
Заглавную тему DOOM сыграла схема из 555-х таймеров, в которой нет ни одной строчки кода
Когда в проекте играет зацикленный трек, за темп и высоту нот отвечает аудиодвижок. Автор собрал то же самое на россыпи микросхем, и разбор схемы на Hackaday читается как устройство трекера изнутри.
Первый 555 тикает чуть быстрее семи раз в секунду и задаёт темп. Двоичный счётчик с дешифратором превращают тики в 15 последовательных позиций: это шаги секвенсора. Диодная матрица хранит партитуру, каждый шаг замкнут на одну из шести нот. Дальше шаг подключает свою резисторную цепочку ко второму 555, а от номиналов зависит частота, на которой он пищит.
Полезно как схема мышления про процедурный звук: сетка времени, таблица нот, генератор тона. Чиптюн-саундтрек в вашем движке раскладывается на те же три части, и отлаживать его проще, когда видно, какая из них врёт.
Когда в проекте играет зацикленный трек, за темп и высоту нот отвечает аудиодвижок. Автор собрал то же самое на россыпи микросхем, и разбор схемы на Hackaday читается как устройство трекера изнутри.
Первый 555 тикает чуть быстрее семи раз в секунду и задаёт темп. Двоичный счётчик с дешифратором превращают тики в 15 последовательных позиций: это шаги секвенсора. Диодная матрица хранит партитуру, каждый шаг замкнут на одну из шести нот. Дальше шаг подключает свою резисторную цепочку ко второму 555, а от номиналов зависит частота, на которой он пищит.
Полезно как схема мышления про процедурный звук: сетка времени, таблица нот, генератор тона. Чиптюн-саундтрек в вашем движке раскладывается на те же три части, и отлаживать его проще, когда видно, какая из них врёт.
❤7
Сцена в Three.js может обновляться сама, пока вы правите модель в Blender
Подвинули объект в Blender, экспортировали glTF, перезагрузили страницу, увидели не тот масштаб, и всё сначала. Сама правка занимает минуту, круг вокруг неё — пять.
На Codrops Andrew Woan разбирает, как эту рутину снимает связка ИИ-агента и Blender MCP: сервера, через который агент выполняет команды прямо в Blender.
Что уже работает:
• аддон с вкладкой экспорта, после которого сцена в Three.js перезагружается сама (кейс Merci-Michel);
• синхронизация поворота, масштаба и перемещения в обе стороны, так что править можно там, где удобнее;
• инстансы из аддона Geoscatter и модификатора Scatter on Surface (Blender 5.0+) доезжают до Three.js через MCP.
К статье приложены демка и исходники. Пайплайн держится на Blender и glTF, поэтому переносится на любой рантайм, который грузит ту же сцену.
Подвинули объект в Blender, экспортировали glTF, перезагрузили страницу, увидели не тот масштаб, и всё сначала. Сама правка занимает минуту, круг вокруг неё — пять.
На Codrops Andrew Woan разбирает, как эту рутину снимает связка ИИ-агента и Blender MCP: сервера, через который агент выполняет команды прямо в Blender.
Что уже работает:
• аддон с вкладкой экспорта, после которого сцена в Three.js перезагружается сама (кейс Merci-Michel);
• синхронизация поворота, масштаба и перемещения в обе стороны, так что править можно там, где удобнее;
• инстансы из аддона Geoscatter и модификатора Scatter on Surface (Blender 5.0+) доезжают до Three.js через MCP.
К статье приложены демка и исходники. Пайплайн держится на Blender и glTF, поэтому переносится на любой рантайм, который грузит ту же сцену.
🫡1
Порт движка ломается незаметно, но записанные демки ловят это бесплатно
Переносите движок на другой язык, и сложнее всего доказать, что геймплей остался прежним. Инженер перевёл doomgeneric на Rust утилитой c2rust: 73 095 строк за 23,2 секунды. Сам перевод занял секунды, дольше всего шла проверка.
Первый гейт — записи демок. Каждое игровое решение DOOM считает в фиксированной точке, поэтому одно расхождение рассинхронизирует воспроизведение: счётчик тиков перестаёт совпадать с записью.
Второй гейт: хеш каждого кадра, который движок отдаёт на экран. Из 11 113 кадров разошёлся один. Но контрольный прогон оригинального C-бинарника против самого себя дал то же расхождение на том же пикселе: DOOM читает один неинициализированный пиксель памяти, и перевод это повторил.
Отсюда приём: сначала прогоните эталон против эталона, иначе шум собственной сборки уедет в отчёт как чужой баг.
Переносите движок на другой язык, и сложнее всего доказать, что геймплей остался прежним. Инженер перевёл doomgeneric на Rust утилитой c2rust: 73 095 строк за 23,2 секунды. Сам перевод занял секунды, дольше всего шла проверка.
Первый гейт — записи демок. Каждое игровое решение DOOM считает в фиксированной точке, поэтому одно расхождение рассинхронизирует воспроизведение: счётчик тиков перестаёт совпадать с записью.
Второй гейт: хеш каждого кадра, который движок отдаёт на экран. Из 11 113 кадров разошёлся один. Но контрольный прогон оригинального C-бинарника против самого себя дал то же расхождение на том же пикселе: DOOM читает один неинициализированный пиксель памяти, и перевод это повторил.
Отсюда приём: сначала прогоните эталон против эталона, иначе шум собственной сборки уедет в отчёт как чужой баг.
⚡1❤1