GameDev: разработка игр
Open in Telegram
Всё про геймдев для девелоперов, художников, левел- и геймдизайнеров, сценаристов Разместить рекламу: @tproger_sales_bot Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media
Show more7 627
Subscribers
-524 hours
-97 days
+430 days
Loading data
Similar Channels
Tags Cloud
Incoming and Outgoing Mentions
---
---
---
---
---
---
Attracting Subscribers
October '26Oct '26
October '26
+51
in 0 channels
September '26
+89
in 2 channels
Get PRO
August '26
+71
in 1 channels
Get PRO
July '26
+80
in 6 channels
Get PRO
June '26
+83
in 2 channels
Get PRO
May '26
+85
in 1 channels
Get PRO
April '26
+61
in 0 channels
Get PRO
March '26
+118
in 6 channels
Get PRO
February '26
+92
in 1 channels
Get PRO
January '26
+90
in 6 channels
Get PRO
December '25
+86
in 7 channels
Get PRO
November '25
+133
in 4 channels
Get PRO
October '25
+97
in 0 channels
Get PRO
September '25
+91
in 2 channels
Get PRO
August '25
+115
in 1 channels
Get PRO
July '25
+82
in 0 channels
Get PRO
June '25
+78
in 2 channels
Get PRO
May '25
+90
in 1 channels
Get PRO
April '25
+146
in 2 channels
Get PRO
March '25
+139
in 2 channels
Get PRO
February '25
+90
in 1 channels
Get PRO
January '25
+72
in 0 channels
Get PRO
December '24
+67
in 1 channels
Get PRO
November '24
+71
in 2 channels
Get PRO
October '24
+74
in 1 channels
Get PRO
September '24
+67
in 1 channels
Get PRO
August '24
+72
in 2 channels
Get PRO
July '24
+71
in 1 channels
Get PRO
June '24
+63
in 2 channels
Get PRO
May '24
+60
in 1 channels
Get PRO
April '24
+60
in 0 channels
Get PRO
March '24
+68
in 0 channels
Get PRO
February '24
+49
in 0 channels
Get PRO
January '24
+69
in 0 channels
Get PRO
December '23
+80
in 2 channels
Get PRO
November '23
+54
in 0 channels
Get PRO
October '23
+72
in 2 channels
Get PRO
September '23
+64
in 0 channels
Get PRO
August '23
+80
in 0 channels
Get PRO
July '23
+63
in 0 channels
Get PRO
June '23
+64
in 0 channels
Get PRO
May '23
+62
in 0 channels
Get PRO
April '23
+74
in 0 channels
Get PRO
March '23
+97
in 0 channels
Get PRO
February '23
+103
in 0 channels
Get PRO
January '23
+170
in 0 channels
Get PRO
December '22
+192
in 0 channels
Get PRO
November '22
+212
in 0 channels
Get PRO
October '22
+158
in 0 channels
Get PRO
September '22
+181
in 0 channels
Get PRO
August '22
+235
in 0 channels
Get PRO
July '22
+297
in 0 channels
Get PRO
June '22
+206
in 0 channels
Get PRO
May '22
+272
in 0 channels
Get PRO
April '22
+200
in 0 channels
Get PRO
March '22
+194
in 0 channels
Get PRO
February '22
+299
in 0 channels
Get PRO
January '22
+138
in 0 channels
Get PRO
December '21
+86
in 0 channels
Get PRO
November '21
+92
in 0 channels
Get PRO
October '21
+129
in 0 channels
Get PRO
September '21
+136
in 0 channels
Get PRO
August '21
+476
in 0 channels
Get PRO
July '21
+674
in 0 channels
Get PRO
June '21
+491
in 0 channels
Get PRO
May '21
+4 020
in 0 channels
Get PRO
April '21
+4 007
in 0 channels
| Date | Subscriber Growth | Mentions | Channels | |
| 18 October | 0 | |||
| 17 October | +1 | |||
| 16 October | +3 | |||
| 15 October | +4 | |||
| 14 October | +2 | |||
| 13 October | +4 | |||
| 12 October | +4 | |||
| 11 October | +3 | |||
| 10 October | +2 | |||
| 09 October | +1 | |||
| 08 October | +1 | |||
| 07 October | +1 | |||
| 06 October | +2 | |||
| 05 October | +4 | |||
| 04 October | +1 | |||
| 03 October | +1 | |||
| 02 October | +5 | |||
| 01 October | +12 |
Channel Posts
Unity 7 и CoreCLR: что уже можно проверить
Первая альфа Unity 7.0 получила редактор на CoreCLR вместо Mono. Но переход на новую среду выполнения ещё не означает, что проекту доступны все новые возможности C# и .NET.
В обновлении команды Unity прямо указано: начальная альфа пока использует C# 9 и API .NET Standard 2.1. C# 14 и .NET 10 остаются целью разработки; публичную дату их появления команда не называет.
Для первого поддерживаемого выпуска приоритет — совместимость и стабильность на уровне Unity 6.7 LTS. Основные улучшения производительности запланированы на следующий этап.
Сейчас альфа полезна для проверки совместимости проекта, пакетов и инструментов на отдельной копии. Изменившееся название среды выполнения само по себе не обещает ускорения игры или перезагрузки кода. Команда рекомендует эту версию для тестирования, а не производственной работы.
#unity #движки
| 2 | Как сделать ржавчину сложнее оранжевого шума
У ржавого металла меняется не только цвет. Зернистость, углубления, отслаивающаяся краска и шероховатость вместе создают ощущение поверхности.
В разборе Лоика Анкетиля работа над материалами Substance 3D Designer начинается с изучения этой структуры. Художник снимал собственные референсы, потому что общие фотографии часто не показывали нужных деталей коррозии.
Базовый материал Coarse Rust Pitting помог выстроить связь между рисунком повреждений, высотой, шероховатостью и цветом. После этого на той же основе появились варианты с облупившейся краской, разными стадиями коррозии и загрязнениями.
Отдельное внимание автор уделяет структуре графа: параметры и логические группы должны быть понятны другим художникам. Полезный ориентир для своего материала — возможность менять степень износа, сохраняя согласованность всех карт поверхности.
#материалы #substance | 518 |
| 3 | Как связать движение и анимации персонажа в Godot
Персонаж уже прыгает, но продолжает перебирать ногами в воздухе? Выбор анимации стоит связать с состоянием движения после обработки столкновений.
В уроке для Godot 4.3+ используется CharacterBody2D с AnimatedSprite2D. Скрипт обновляет скорость, применяет гравитацию, вызывает move_and_slide(), затем выбирает анимацию.
Если персонаж не на полу, знак вертикальной скорости определяет прыжок или падение. На земле направление ввода переключает бег и покой. Поворот спрайта выполняется через flip_h.
Весь пример помещён в один скрипт: он также создаёт платформы и собирает анимации из горизонтальных полос кадров. Это удобный учебный стенд для разбора состояний, который дальше можно разделить на сцены и компоненты. Для точного воспроизведения нужны файлы набора, указанного автором.
#godot #анимация | 546 |
| 4 | Defold 1.14: рендеринг в кубическую карту
В Defold 1.14.0 появились cubemap render targets: сцену можно отрисовать на шесть граней кубической карты вокруг выбранной точки.
В описании релиза показаны два способа создать такую цель рендеринга: через render script или ресурс .render_target. Затем выбирается грань, в которую нужно выполнить отрисовку. Цветовое содержимое доступно шейдеру через samplerCube.
На этой основе можно реализовывать отражения, захват окружения и другие эффекты, которым нужны несколько направлений обзора. Сам эффект при этом остаётся частью вашей системы рендеринга: новый тип цели не включает готовые отражения автоматически.
У первой реализации есть ограничения: грани должны быть квадратными и одинакового размера, сглаживание MSAA для cubemap не поддерживается. В статье есть ссылка на демонстрацию создания карты и передачи результата в шейдер.
#defold #рендеринг | 612 |
| 5 | Как собрать стилизованный маяк из модулей
Альберт Серрано начал сцену маяка с простых форм в Blender и перенёс их в Unreal Engine. До детализации он проверил пропорции, расстояние до камеры и композицию.
В разборе окружения показано, как повторное использование помогает расширять сцену. Деревянные детали собраны в модульный набор, повторяющиеся поверхности используют тайловые материалы, растения — общий атлас.
Для перехода между камнем и штукатуркой художник добавил промежуточный оттенок той же штукатурки через отдельный канал Vertex Color. Так границу можно подкрашивать прямо на геометрии и варьировать по сцене.
Когда понадобился второй ракурс, большая часть материалов и объектов уже существовала. Новую зону удалось собрать без полного повторения работы. Хороший пример того, как ещё на этапе первой композиции подготовить детали для дальнейшего использования.
#окружение #unrealengine | 587 |
| 6 | Субботний скриншотник снова открыт!
Показывайте в комментариях, над чем работали: скриншоты, гифки, видео, демки и ссылки на свои игры. Новая механика, переделанное меню или первый рабочий прототип — всё годится. Ссылки на свои каналы разрешены.
Посмотрим, что у кого получилось, и зададим авторам вопросы. Если застряли, расскажите на чём — возможно, кто-то уже решал похожую задачу.
@make_game | 581 |
| 7 | Как разрушение зданий меняет тактику в Brigador Killers
Если игрок может пробить стену, дверь перестаёт быть единственным входом. А вместе с ней перестают работать привычные способы направлять игрока по уровню.
В интервью Stellar Jockeys разрушение Brigador Killers разобрано как взаимодействие систем. Пули пробивают объекты, взрывы наносят убывающий с расстоянием урон, повреждённые части зданий провоцируют обрушение соседних.
Для объектов команда готовит отдельные наборы эффектов — частицы, спрайты, свет и звук, срабатывающие вместе. Они помогают показать масштаб повреждений и сделать цепную реакцию понятной.
Полностью разрушаемое окружение требует учить игрока создавать собственные проходы. Поэтому здесь полезно смотреть и на физику, и на планировку: какие маршруты появятся после взрыва и сможет ли игрок понять последствия своего действия.
#геймдизайн #разрушения | 599 |
| 8 | Как Arrow Cube 3D сочетает генерацию и ручные уровни
В головоломке Arrow Cube 3D игрок убирает стрелки с вращающегося куба. Команда Green Train Studio использует генератор уровней, но начало игры готовит вручную.
В интервью разработчиков объясняют подход: первые 20–40 уровней обычно создаёт и проверяет геймдизайнер. Дальше генератор обеспечивает объём контента, а параметры задают развитие сложности. Последовательность затем корректируют по аналитике.
Для браузерной версии отдельно продумали загрузку. Основной билд на Defold занимает около 3 МБ, данные уровней — ещё около 20 МБ. Они подгружаются порциями, поэтому при запуске не нужно скачивать весь набор.
В этом примере размер стартовой загрузки и общий объём игры различаются. Контент можно добавлять без увеличения первого скачивания, а ручные вводные уровни дают команде контроль над знакомством игрока с механикой. | 649 |
| 9 | Как сделать отскакивающий огненный снаряд
В ACTION GAME MAKER снаряд создаётся как отдельный объект. Его регистрируют в Bullet Settings персонажа, а выстрел вызывают действием Fire Bullet в визуальном скрипте.
В официальном уроке эту цепочку разбирают на огненном шаре. Изображение делят на четыре ячейки и добавляют кадры по порядку. Коллайдер для стен и область атаки настраивают отдельно: их размеры могут различаться.
Далее через Collision Animation задают вращение изображения. У анимации есть дополнительная ячейка END: значение 360° в ней замыкает полный оборот, а промежуточные положения интерполируются автоматически.
Чтобы шар летел с отскоками, ему настраивают движение и включают влияние гравитации: в шаблоне обычной пули она отключена. Урок продолжает Jump Action Tutorial, поэтому для повторения понадобится проект из предыдущего материала. | 662 |
| 10 | Как уменьшить шум Lumen в интерьере
Яркий экран или светящееся окно могут давать плавающие пятна на соседних поверхностях. В разборе Post-Soviet Hospital Aleksander Goryachev показывает, как настраивал освещение закрытого интерьера в UE5.
Свет из окна он разделил между несколькими объектами: emissive-плоскость изображает небо, Rect Light освещает помещение, а Spot Light с Light Function проецирует рисунок оконной рамы.
Отдельно автор проверяет Screen Space Traces: яркие пиксели светящихся объектов могут продолжать влиять на результат через экранные данные. В закрытом уровне он отключил эти трассировки. На другом уровне с наружным освещением такой же шаг заметно обеднял непрямой свет.
Есть компромисс и по скорости: замена Rect Light широким Spot Light делает освещение жёстче. В статье показаны сравнения — настройки стоит оценивать вместе с видом сцены и бюджетом GPU. | 669 |
| 11 | Как связать материалы стилизованного окружения
Дом, забор и трава могут хорошо выглядеть по отдельности, но спорить друг с другом в общей сцене. Художница Tulika Roy рассказывает, как удерживала единую палитру при создании окружения Outstead в UE5.
Для деревянных объектов она подготовила trim sheet с базовыми цветами, тенями и бликами. Папку с этими слоями в Substance 3D Painter превратила в Smart Material и использовала на дверях, столбах и других деталях дома. Особенности каждого объекта дорисовывала вручную.
Цвет травы связала с ландшафтом через Runtime Virtual Texture. Материал травы читает цвет земли под собой: правка участка ландшафта меняет и растительность на нём. Отдельный материал для каждой зоны создавать не пришлось.
В разборе сцены есть примеры текстур и настройки растительности. Композицию автор проверила ещё на блокинге: дорожка, ограда и холмы направляют взгляд к дому. | 684 |
| 12 | Как собрать плавный цикл ходьбы персонажа
Если ноги двигаются, а персонаж будто едет по полу, стоит проверить опорную фазу шага. В цикле ходьбы на месте стопа должна равномерно двигаться назад относительно тела, пока игра перемещает героя вперёд.
В уроке hyperPad Art Studio анимацию собирают на готовом скелете Nova. Сначала задают два положения контакта с землёй, затем добавляют перенос свободной ноги, проседание под весом и подъём перед следующим шагом.
Для секундного цикла при 24 FPS противоположный контакт приходится на кадр 12, а кадр 24 повторяет начальную позу. Это убирает скачок на границе повторов.
Проверьте каждый ботинок отдельно: опорная стопа остаётся на высоте земли, свободная проходит по дуге. Сильное замедление у каждого ключа может сделать шаг дёрганым — в уроке движение ног начинают с линейной интерполяции. Root остаётся на месте. | 679 |
| 13 | Как отлаживать физику покадрово в PlayCanvas
Тело проваливается сквозь пол или неожиданно отскакивает, а на обычной скорости трудно понять причину. В PlayCanvas Editor 2.34 появился запуск с Inspector: можно остановить приложение и посмотреть состояние сцены в нужный момент.
В меню Launch включите Inspector. F9 ставит приложение на паузу, F10 продвигает его на один кадр. Объект можно выбрать прямо во вьюпорте и проверить текущие свойства его компонентов.
Во вкладке Physics включите Draw physics world: поверх сцены появятся коллайдеры и точки контакта. Затем пройдите несколько кадров, наблюдая, когда возникает столкновение и как меняется положение тела.
В обзоре обновления показан этот процесс на физической сцене. Inspector требует Engine 2.23 или новее. Большинство свойств доступны только для чтения; панель также позволяет включать и выключать сущности. | 714 |
| 14 | Что добавить в прогрессию, когда игрок нашёл выигрышную стратегию
В About Time игрок набирает нужное количество очков, получает награды и вкладывает их в улучшения. Геймдизайнер Henrique Campos видит риск: найдя сильную комбинацию, игрок может перестать искать новые варианты.
В разборе игровой петли автор предлагает награждать прохождение дальних раундов новыми шестерёнками или слотами. Между забегами можно открывать стартовые наборы часов и улучшения, меняющие вероятность появления нужных элементов.
Ещё одна идея — дерево улучшений за отдельную валюту. Оно позволило бы выбирать направление развития между попытками. Необязательные детали истории могли бы дать дополнительный повод продолжать игру.
Это предложения по развитию About Time. Разбор показывает, как отделить рост чисел от открытия новых возможностей и проверить, остаются ли у игрока интересные решения после освоения основной механики. | 763 |
| 15 | Как доставлять Gaussian Splat-модели в мобильный браузер
Фотореалистичную 3D-модель мало быстро отрисовать: сначала её нужно загрузить на телефон. У Solaya типичный оптимизированный ресурс занимает 30–60 МБ, поэтому доставка данных стала отдельной частью архитектуры.
Модели хранятся сжатыми в blob-хранилище, движок PlayCanvas доставляется через CDN. Сжатие применяется на уровне модели и CDN, а кеширование на ближайших к пользователю узлах уменьшает задержку и нагрузку на хранилище.
При пересборке ресурса сбрасывается кеш только этой модели. Остальные данные остаются доступными из прогретого кеша. Один просмотрщик используется в вебе и мобильном приложении.
В интервью команды Solaya разобран сервис для визуализации товаров. Его схема доставки полезна и для веб-проектов с тяжёлыми 3D-ресурсами. Для игровых столкновений splat-модели понадобится отдельно подготовленная геометрия. | 754 |
| 16 | Эмодзи в комментарии сломал пинбол на Android
После сентябрьского обновления Android 17 Visual Pinball перестал загружать столы с эмодзи в комментариях к VBScript. Парсер выдавал Invalid character, хотя комментарий вообще не должен исполняться.
Причина оказалась в системной библиотеке bionic. Функция wcspbrk() ищет конец комментария по переводу строки, но ошибочно останавливалась на эмодзи. При определённом наборе разделителей сбой затрагивал и кириллицу.
Опубликованные исходники отличались от библиотеки на телефоне, поэтому автор дошёл до дизассемблера. Сотрудник Google подтвердил баг и нашёл проблемы в тестах: один проверял только ASCII, другой содержал неверный ожидаемый результат.
Разработчики libwinevbs обошли ошибку, заменив проблемные вызовы обычными циклами. На GitHub есть багрепорт с воспроизведением и исправление для игры. | 735 |
| 17 | Как H3VR2 распределяет бюджет кадра в VR
В H3VR2 оружие моделируют с учётом массы компонентов, пружин и свойств патронов. Для такой симуляции на Quest 3 команда заранее определяла, на что можно потратить время кадра.
Баллистику построили на ECS и Burst. Это позволило уменьшить шаги расчёта столкновений, точнее учитывать сопротивление воздуха и прохождение снаряда через разные материалы. Внутренние механизмы оружия рассчитываются собственными системами; PhysX работает с объектами в общем игровом пространстве.
Подробные модели оружия занимают значительную часть бюджета рендеринга, поэтому окружение проектировали с ограничениями на полигоны, текстуры и плотность объектов. Для настройки сотен вариантов оружия команда создала инспекторы с вычислениями и проверками на базе Odin.
В разборе разработки объясняют, как эти ограничения повлияли на архитектуру и дизайн уровней. | 749 |
| 18 | Приходится ли вам копипастить данные и какие именно, когда переходите из одной нейросети в другую? | 585 |
| 19 | Общая папка для работы Claude Code и Codex
Луи-Франсуа Бушар собрал заметки, инструкции-скиллы, скрипты и итоги встреч в Obsidian. Его связка устроена так:
Папка хранит исходные материалы и решения
↓
Индекс указывает, где искать данные для задачи
↓
Claude Code планирует работу
↓
Codex выполняет задачи по его вызову
В описании этого рабочего процесса Бушар объясняет, зачем даёт агенту сведения для конкретной задачи. Начать предлагает с общей папки, короткого индекса и одного повторно используемого скилла.
#ии #инструменты | 663 |
| 20 | Как открыть финал после прохождения уровней в любом порядке
Меню в духе Mega Man позволяет самому выбирать следующий уровень. Для финала нужно отдельно учитывать, какие этапы игрок уже прошёл.
В туториале для Godot 4 кнопка передаёт путь выбранной сцены в SceneTransition. Переход выполняется после завершения анимации перекрывающего экран эффекта.
Каждому уровню назначают уникальный идентификатор переключателя. При победе SwitchTrigger активирует его, а соответствующий SwitchMonitor отслеживает состояние. Узел SwitchGate проверяет, что все необходимые уровни пройдены, и разрешает переход к финалу.
Монитор на кнопке также меняет её вид после прохождения этапа. Условия удобно проверять во время запуска через значения SwitchSingleton: каждый раз проходить всю игру ради теста меню не придётся. | 760 |
