ar
Feedback
GameDev: разработка игр

GameDev: разработка игр

الذهاب إلى القناة على Telegram

Всё про геймдев для девелоперов, художников, левел- и геймдизайнеров, сценаристов Разместить рекламу: @tproger_sales_bot Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media

إظهار المزيد
7 647
المشتركون
-324 ساعات
+47 أيام
+1430 أيام
أرشيف المشاركات
Короткий полезный разбор от Рубена с TheGameDev.Guru про те самые фризы на секунду в современном Unity, когда игрок заходит в новую зону, меняет графику или надевает косметику, и игра замирает ровно настолько, чтобы он пошёл за рефандом. Старый рецепт «соберём шейдеры и прогреем заранее» на Vulkan, DX12 и Metal не работает. Теперь прогреваешь не шейдер, а PSO т.е. шейдер плюс весь стейт рендера вокруг: MSAA, формат таргета, blend, depth, вариант материала, уровень качества. Поменял одну настройку, и нужен новый PSO, которого в твоём трейсе не было. Отсюда и фриз. Unity 6.5 добавил cache miss collection: движок ловит непрогретые стейты и даёт доклеить их в кеш. Удобно, но штука лишь сообщает, что ты пропустил, уже постфактум. Корень всё равно в покрытии — трейсить надо реальные геймплейные маршруты и настройки игроков, а не чистое демо. Подробнее в самой статье: https://thegamedev.guru/all/your-pso-cache-is-only-as-good-as-your-playthrough/ @make_game

Наткнулся на демку, которая бьёт прямо по ностальгии — Defrag Incremental. Помните ту самую полоску дефрагментации в старых Windows, за которой можно было залипать часами? Кто-то взял ровно это чувство и собрал из него incremental-игру. Идея в том, что ты по сути подрядчик по чистке дисков. Берёшь заказ, анализируешь диск — у каждого свои характеристики, битые сектора, неперемещаемые блоки, неудобная раскладка. Под это выбираешь алгоритм дефрагментации, и тут начинается самое интересное: каждый прогон это компромисс между скоростью, наградой, нагревом и износом диска. Можно гнать рискованно ради жирной выплаты, но перегреешь железо или угробишь диск — потеряешь и деньги, и заказ. Дальше классическая петля жанра. За успешные джобы капают внутренние очки, на них качаешь апгрейды текущего билда, а когда упираешься в потолок — делаешь reboot в перманентные BIOS-улучшения, которые перекраивают все будущие забеги. Поверх этого тонкий слой выживания: работаешь за деньги и балансируешь риск против выплаты, чтобы просто остаться на плаву. Выглядит всё в чистой DOS-эстетике, пиксельный UI, который приятно читать. Мне нравится, как взяли скучную системную рутину из детства и превратили её в напряжённый луп с принятием решений на каждом заказе. Демо уже доступно в Steam, полный релиз обещают в Q3 2026. https://store.steampowered.com/app/4286660/Defrag_Incremental/ Залип бы в такое на вечер, чисто чтобы снова посмотреть, как ползут эти квадратики :) @make_game

Всех с началом выходных! Что успели сделать за прошедшие две недели? Скрины и демки из ваших игр в студию! Можно со ссылками
Всех с началом выходных! Что успели сделать за прошедшие две недели? Скрины и демки из ваших игр в студию! Можно со ссылками на ваши каналы. @make_game

Нашёл прекласное, называется SAM3DBody-cpp. Берёшь обычное видео с одной камеры, на выходе получаешь готовый BVH-мокап, который без танцев перетаскивается в Blender или Unity. Никакого костюма, никаких маркеров, никакого Python в рантайме, только чистый C++ поверх ONNX Runtime и ggml. Мне нравится, что видно, как оно работает внутри. Пайплайн прямо в README расписан по слоям: yolo.onnx находит людей и боксы, backbone (DINOv3-ViT-H, около 630 миллионов параметров) гонит фичемапу, decoder выдаёт pose-токен, а две маленькие головы на ggml-матмулах раскладывают его в 519 параметров позы и сдвиг камеры. На выходе скелет на 70 суставов вместе с кистями рук. Про железо: backbone на 630 миллионов параметров для риалтайма хочет CUDA-видеокарту, на ней оно идёт почти в реальном времени. Для CPU автор выложил отдельный float32-бэкбон, но один прогон на ноутбучном процессоре будет ощутимо медленнее — это для оффлайн-обработки клипа, а не для вебки. Лицензия MIT, репо живое: только вчера, 4 июня, завезли нативные Windows-сборки и поправили синхронизацию по кадрам для live-режима. https://github.com/AmmarkoV/SAM3DBody-cpp @make_game

Попался отличный майский дев-дневник Prehistoric Kingdom — это зоопарк-симулятор с динозаврами, команда из 7 фултайм и 5 парт
Попался отличный майский дев-дневник Prehistoric Kingdom — это зоопарк-симулятор с динозаврами, команда из 7 фултайм и 5 парттайм разработчиков. В Update 17 они делают боевую систему и расписали, как устроено поведение животных. Тот самый формат, который я люблю: без маркетинга, просто как оно работает внутри. В основе боя 18 поведенческих профилей, которые миксуют разные условия. Каждому виду назначают профиль, и из этого складывается, когда и почему животное лезет в драку. Драка не всегда до смерти. Хищник может сдаться или убежать, если получил слишком много урона. Травоядные по-разному: территориальные преследуют обидчика, другие сами разбегаются, как только агрессор отстал. Отдельно пишут про раны. Чем больше урона получил зверь, тем больше ран на теле, а если выжил, они со временем зарастают в шрамы. У каждой особи свой процедурный offset, поэтому одинаковых шрамов не будет ни у кого. А после смерти хищники могут есть труп, получается какая-никакая поддержка экосистемы, хотя специально под самоподдерживающийся баланс игру не точат. По мелочи подтянули и движение: животные резче разворачиваются, когда убегают, повороты стали плавнее, добавили banking, наклон в сторону движения. Для зоосима выглядит непривычно свежо. Кайф, когда команда так открыто показывает кухню. Трейлер U17 обещают в июне, ждём :) @make_game

photo content

Нашёл тут ещё один тред с нашим любимым форматом, где разработчик с 10+ годами опыта рассказывает что-то полезное. Автор делает игры в Roblox, зарабатывает этим на жизнь и управляет небольшой командой. Самое полезное там не про Roblox, а про реальность современного инди-геймдева. Главный вывод: игру мало просто сделать. Её нужно довести до релиза, измерять поведение игроков и адаптировать под интернет 2026 года. Кратко: 1. Смотрите на метрики. Где игроки выходят? Где застревают? После какого экрана падает retention? Это реально помогает находить проблемы в дизайне, если не относиться к задаче как к скучной и мешающей писать код. 2. Контент-криэйторы уже не работают как в 2015. Раньше случайный летсплей мог вытащить игру. Сейчас чаще наоборот: сначала нужна живая комьюнити и понятный крючок, потом к вам приходят ролики. 3. Движок не спасает проект. Unity, Unreal, Godot, Roblox — всё может сработать. Важнее scope, цикл обновлений, понимание аудитории и умение доводить игру до состояния, где в неё реально играют. 4. Выпускать игры важнее, чем бесконечно полировать одну. Первый релиз почти всегда учит большему, чем месяцы чтения постмортемов. Даже маленькая законченная игра даёт опыт продакшена, маркетинга, багов, фидбэка и поддержки. 5. Игроки не читают. Если механика держится на том, что игрок внимательно прочитает текст, дизайн уже в зоне риска. Лучше учить через интерфейс, уровень, визуальные подсказки и первые действия. Отдельно понравился совет про баги: делите их на три уровня. Ломает игру, мешает играть, косметика. Третий список всегда будет непустым, и он не должен останавливать релиз. @make_game (теперь в VK и Max)

Как Michael Abrash удвоил FPS в Quake вручную В 1999 году id Software выложила исходники Quake, и John Carmack предупредил в readme.txt: если собрать движок только на C, софтверный рендер потеряет почти половину скорости. Автор материала проверил это на Pentium MMX 233 МГц. Стоковый WinQuake выдал 42,2 fps. После отключения ASM-оптимизаций и сборки чистого C-кода результат упал до 22,7 fps. Разница — ровно в два раза, как и говорил Carmack. Всего в движке 63 ассемблерные функции в 21 файле. Все они написаны вручную для рендеринга на CPU без графического ускорителя.

Ничего необычного, просто эксперименты с анимацией бега, пробегаем проходим мимо

ИИ врагов в Unity: почему if/else быстро превращается в болото Пять условий для врага выглядят невинно: увидел игрока, подбеж
ИИ врагов в Unity: почему if/else быстро превращается в болото Пять условий для врага выглядят невинно: увидел игрока, подбежал, ударил, убежал при низком HP. Потом добавляется патруль, гранаты, подкрепление, аптечки и второй тип врага. Через неделю это уже не логика поведения, а археология вложенных условий. В туториале разбирают переход к Behaviour Tree: Selector, Sequence, Decorator, Blackboard и типичные ошибки на C# в Unity. Ценность не в паттерне ради паттерна, а в том, что поведение собирается из узлов, которые легче переиспользовать и дебажить. Если ваш enemy AI уже трещит от новых фич, стоит разобрать подход. В деталях хорошо видно, где FSM ещё помогает, а где дерево поведения становится честнее к задаче. @make_game (теперь в VK и Max)

Epic Games и Psyonix впервые публично продемонстрировали Unreal Engine 6 на живой игре. Презентация прошла 25 мая на турнире Rocket League Championship Series Paris Major в Париже. Трейлер показал обновлённую версию Rocket League, работающую на новом движке. Вместе с анонсом представили новый фиолетовый логотип UE6. Это первый случай, когда Epic показывает не технодемо, а реальную игру на шестой версии движка. Ранее Tim Sweeney лишь намекал на сроки: превью UE6 может выйти через 2–3 года, то есть в 2027–2028-м. Детали технических улучшений пока не раскрыли. Трейлер сфокусирован на визуальной части: обновлённые модели машин, арены, эффекты.

Godot-террейн, который рисует реки, камни и лес за секунды Иногда вау в геймдеве не в шейдере персонажа, а в редакторском инс
Godot-террейн, который рисует реки, камни и лес за секунды Иногда вау в геймдеве не в шейдере персонажа, а в редакторском инструменте, который экономит недели ручной расстановки. Jan Fidler сделал custom terrain tool в Godot для своей RTS By Sword & Road: сцена с рекой, лесом и камнями собирается за секунды. По описанию 80 Level, модели делались в Blender, текстуры в Substance 3D Designer, а terrain и shaders обрабатывает Godot. Кастомный класс читает текстуры, отправляет их в shader, обновляет collider, а деревья и трава генерируются компонентом под Terrain node. Можно посмотреть разбор инструмента и эволюцию сцены. В деталях видно, как editor tooling становится частью геймдизайна, а не только удобством для художника.

Ещё одна неделя позади! Что у вас нового в проектах? Делитесь демками и скриншотами своих игр в комментариях. Покажите сообще
Ещё одна неделя позади! Что у вас нового в проектах? Делитесь демками и скриншотами своих игр в комментариях. Покажите сообществу над чем работаете! Ссылки на свои каналы разрешены.

После почти годовой задержки наконец вышел новый LTS GameMaker. Это финальная стабильная версия текущего рантайма движка — дальше разработка движется в сторону нового рантайма GMRT. Если вы уже сидели на свежих бетах 2024.14, то это по сути они же, только в релизном виде. А вот тем, кто переезжает со старой версии, стоит заранее заглянуть в release notes — там есть изменения, о которых лучше знать до обновления. Все подробности расписаны в блоге GameMaker, а скачать сборку можно со страницы загрузки. LTS — это версия с долгой поддержкой, на которой удобно вести проект, не опасаясь, что под тобой всё перепишут. Перед заездом целой новой архитектуры рантайма как раз самое то, чтобы спокойно достроить начатое :) @make_game (теперь в VK и Max)

Джон Кармак ответил человеку, который собрался открывать игровую студию. Если коротко — не ждать благодарности от рынка:
Распределение возможных наград от старта игровой студии сегодня так себе. Рынок насыщен, ниша берётся только при сильном исполнении и в продукте, и в бизнесе — плюс изрядная удача. Готовьтесь сжечь семизначную сумму с не очень хорошими шансами её отбить.
Если всё-таки идти, то совет сводится к трём пунктам: — Точно определить аудиторию. Конкретные люди, которых держишь в голове при каждом продуктовом решении. Никаких «инди-сообществ» и других абстракций. — Сначала собрать самую маленькую игру, за которую кто-то готов заплатить. Даже она займёт сильно больше времени, чем кажется. — Hill-climb the value: найти куски, где у игроков загораются глаза, и усилить их. Параллельно чинить то, что бесит или путает. Звучит как стандартный стартап-совет. Только вот про семизначную сумму пугает, что сразу так жёстко то :) @make_game (теперь в VK и Max)

HDR output в Godot 4.7 Команда Godot подтвердила: в 4.7 движок получит нативный HDR-output на Windows, macOS, iOS, visionOS и
HDR output в Godot 4.7 Команда Godot подтвердила: в 4.7 движок получит нативный HDR-output на Windows, macOS, iOS, visionOS и Linux. Сейчас бета, релиз — летом. Что даёт HDR. Монитор показывает одновременно очень тёмные и очень яркие участки кадра — солнечный блик на металле рядом с глубокой тенью. На SDR всё сжимается в 8 бит и теряет контраст. Движок отдаёт картинку в линейном пространстве, не клампя яркость. Технические нюансы: - scRGB и HDR10. Windows — через DXGI, Apple — через EDR. - Pipeline остаётся прежним, переключение делается флагом в Project Settings — никакого rework шейдеров. - Linux — через wlroots (Hyprland, KDE 6 уже умеют). X11 — нет. RC 4.7 beta 2 доступен для тестов.

Если вы устали от бесконечных тасок и созвонов, то мы приготовили для вас игру, которая поможет отдохнуть А заодно проверить
Если вы устали от бесконечных тасок и созвонов, то мы приготовили для вас игру, которая поможет отдохнуть А заодно проверить вашу способность быстро запоминать новую инфу. Переходите по ссылке и играйте в нашу «Меморину». И делитесь результатами в комментариях! Играть тут: https://tprg.ru/S1G2

Steam пересобрал теги — убрал 28 старых, добавил 17 новых, кое-что переименовал. Из новых тегов: — Bullet Heaven. Противоположность Bullet Hell: игрок прокачивает героя, а тот сам отстреливает толпы врагов. Жанр Vampire Survivors и её клонов, которые до этого валились в Bullet Hell. — Desktop Companion. Игры, занимающие только часть экрана и работающие параллельно с другими задачами. — Wuxia и Xianxia. Два жанра китайского фэнтези. Wuxia — историческое, про боевые искусства, школы и поединки. Xianxia — про культивацию ци и сверхспособностей. — Falling Blocks. Жанр Тетриса и наследников. — Cleaning, Organizing, Decorating. Уборка, разбор беспорядка, расстановка предметов и мебели. Под это попадают Powerwash Simulator, Unpacking и подобные. — Espionage. Шпионаж как отдельный жанр, отдельно от стелса и триллеров. Переименовали: — Clicker стал Incremental. Тег теперь шире, про весь жанр игр, где числа растут. — Conversation стал Dialogue Heavy. — Pool стал Billiards. Под Pool разработчики начали постить игры с плавательным бассейном. Из удалённых заметнее всего: — Бренды: LEGO, Warhammer 40K, D&D, GameMaker, RPGMaker, Kickstarter. — Masterpiece, который разработчики ставили себе самому. — Mature, NSFW, Drama, Documentary, Foreign. @make_game (теперь в VK и Max)

В 2013 году Disney купил Lucasfilm и прикрыл LucasArts. Разработчики Raven Software поняли, что их код вот-вот закопают навсе
В 2013 году Disney купил Lucasfilm и прикрыл LucasArts. Разработчики Raven Software поняли, что их код вот-вот закопают навсегда и в панике выложили на GitHub исходники Jedi Outcast и Jedi Academy. Прямо как есть, не успев вычистить комментарии. Получился редкой красоты музей переработок и отчаяния. Несколько находок: — bg_saber.c — вся система боя на световых мечах это один switch на 5000 строк; — sv_savegame.cpp — пришлось писать фейковый busy-loop, чтобы окно «Saving» висело хотя бы секунду. И комментарий: «Брошусь под автобус, если ещё раз придётся делать такую дичь»; — q_math.cpp — легендарный fast inverse square root из Quake 3, унаследованный от Кармака. Даже сами Raven годы спустя оставили в комментарии только «what the fuck?»; — ModView — функция FuckingWellSetTheDocumentNameAndDontBloodyIgnoreMeYouCunt(), родившаяся в неравной борьбе с Win32 API. Вот тут более полная подборка интересного из их кода. @make_game (теперь в VK и Max)

Открытый урок «Zenject в создании игр на Unity» ➡️ 21 мая в 20:00 МСК Бесплатно. Урок в рамках старта курса «Unity-разработчи
Открытый урок «Zenject в создании игр на Unity» ➡️ 21 мая в 20:00 МСК Бесплатно. Урок в рамках старта курса «Unity-разработчик. Продвинутый уровень» от Otus. Сначала всё просто, но со временем связи между объектами усложняются, изменения начинают ломать систему, а поддержка требует всё больше времени. Без управления зависимостями проект становится трудно масштабируемым. На открытом уроке разберётесь, как использовать Zenject и подход DI, чтобы навести порядок в коде. Увидите, как структурировать проект, правильно связывать объекты и избежать типичных ошибок при работе с зависимостями. 📎 Ссылка на регистрацию: https://otus.ru Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576