Обновить
256K+

Разработка игр *

Разработка игр

405,49
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Свет в конце пайплайна: 3D-движок на чистом Dart (+gpu)

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели1.9K

С появлением Flutter GPU у Dart-разработчиков впервые появился прямой доступ к Metal и Vulkan без единой строчки нативного кода. Чтобы понять, готов ли новый API к настоящим 3D-играм, я написал над ним движок на чистом Dart: сцена, PBR-освещение, каскадные и кубические карты теней, HDR-конвейер и три взаимозаменяемых графических бэкенда (Flutter GPU, WebGL2 и программный растеризатор), плюс три законченные игры, играбельные прямо в браузере. В статье разбираем границы Flutter GPU, устройство движка и самые дорогие грабли, собранные по дороге.

Читать далее

Новости

В геймдев с нуля после 40. Итог 2-х лет разработки своей игры (+видеоверсия)

Уровень сложностиПростой
Время на прочтение21 мин
Охват и читатели4.3K

Идея этой статьи пришла мне в голову, когда алгоритмы Ютуба подкинули мне видео со схожим названием, где автор рассказывал о своём 2-летнем пути в геймдев после 40 лет. Меня просто поразило – насколько у нас оказались схожие стартовые точки. Но вот двухлетний итог работы у меня и автора этого видео оказался почти диаметрально разным. Вот об этом, а также подвести итог моих двух лет разработки игры с полного нуля в 42 года я и хочу рассказать в своей новой статье.

Вот видеоверсия данной статья на YouTube, RuTube, VK Видео, т.к. полотно текста получилось довольно большое (отчетная статья, всё же), а многим будет более комфортно не читать, а смотреть.

Читать далее

Тест зелёный, фича сломана: семь случаев, когда проверка совпала по неверной причине

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели4.7K

Тест зелёный, а фича сломана — потому что проверка смотрит на форму, а не на эффект: имя поля в файле есть, а в разметку оно не попало. Семь таких случаев из живого проекта на TypeScript и PostgreSQL: колесо мыши, которое убил мой собственный CSS-фикс и диагностика, проверившая defaultPrevented вместо прокрутки; подстрока, совпавшая с другой подстрокой; комментарий в SQL, прочитанный как код; метка источника, из-за которой отчёт показывал ноль и этот ноль читался как «людей нет». С кодом, разбором каждой ошибки и числами мутационного прогона на 13 400 мутантов.

Читать далее

Как нейросеть мне сэкономила 100 тысяч долларов при создании моей игры. Sunarius CRPG

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели4.4K

Сразу объясню, откуда в заголовке взялись 100 тысяч долларов. Нейросеть, конечно, не перевела мне эти деньги на счёт. Я просто не потратил их на программиста.

Уже три года я в одиночку делаю Sunarius. Это ОГРОМНАЯ постапокалиптическая ролевая игра с открытым миром, пошаговыми сражениями, отрядами, транспортом, стратегией, торговлей, фракциями, репутацией и квестами. Когда я только начинал, мне хотелось соединить атмосферу Fallout 2 с отрядными боями в духе Battle Brothers. Причём сделать всё это на Android.

Проблема была довольно очевидной. Я не программист.

Я умею писать книги (написал 2 хорошо продающиеся), это помогло в написании диалогов и сюжета боле чем на 100 подробных квестов в сеттинге постапок (Fallout 2 играли? Вот), структурное мышление помогло мне создать гигансткий ДИЗДОК игры и техзадание, я знаю фигму и корел, умею делать первокласную графику, но я действительно ничего не понимаю в коде! И до эпохи нейронок именно это меня останавливало от создания своей игры.

Если открыть передо мной большой файл на C#, я не смогу внимательно прочитать его и объяснить, почему и как одна часть программы обращается к другой. Я могу разобраться в логике игры, заметить неправильное поведение, придумать систему или проверить результат. Но самостоятельно написать код для такой игры я бы не смог.

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

Читать далее

Как правильно убивать игроков в играх

Уровень сложностиПростой
Время на прочтение20 мин
Охват и читатели11K

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

Читать далее

Фибоначь врагов

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели9.8K

Структуру, о которой ниже пойдёт речь, знали в древней Индии за тысячу лет до самого Фибоначчи и переоткрыли в 1988 году двое математиков, при этом весь граф целиком строится из строк, состоящих только из цифр 1 и 2, или если мы вычтем единицу, то получим 0/1 и бинарный вид.

Берём любую конечную строку из цифр 1 и 2, например такую "11212" и складываем цифры 1 + 1 + 2 + 1 + 2 = 7 и получаем ранг этой строки. Теперь простой вопрос: сколько существует строк заданного ранга? Строку такого же ранга можно получить двумя способами, либо дописав цифру 2 к строке ранга r-2, либо дописав цифру 1 к строке ранга r-1, и других вариантов нет, потому что других цифр в нашем алфавите из единиц и двоек нет.

ранг 0: “” → 1
ранг 1: 1 → 1
ранг 2: 11, 2 → 2
ранг 3: 111, 12, 21 → 3
ранг 4: 1111, 112, 121, 211, 22 → 5
ранг 5: … → 8

Заметили справа подозрительное 1, 1, 2, 3, 5, 8? Да... это последовательность Фибоначчи f® = f(r-1) + f(r-2), с небольшим условием, что f(0) = 1 (пустая строка) и f(1) = 1 (единственная строка “1”), из-за этого вся последовательность сдвинута на одну позицию относительно канонических чисел Фибоначчи, и f® = F(r+1).

То же самое делали индийские стиховеды, в своих стихах, где короткий слог занимает одну единицу длительности, длинный две, что позволяло красиво бить ритм и получать благозвучные конструкции в тексте, так что числа Фибоначчи в этом контексте старше самого Фибоначчи. Интересно что связывает стихи, Фибоначчи и дерево технологий в играх? Го под кат...

Читать далее

Почему я выбрал LibGDX для разработки игр на Java в 2026 году

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели7K

Большая часть моей профессиональной карьеры связана с Java и бэкенд‑разработкой: сервисами, базами данных, интеграциями, многопоточностью и проектированием систем. Но в какой‑то момент мне снова захотелось делать продукт, результат работы которого можно увидеть не только в логах и ответах API, но и непосредственно на экране.

Так я вернулся в геймдев и начал разрабатывать собственные игровые проекты. Мне был нужен инструмент для 2D‑игры с версиями для Android и браузера, который позволил бы сохранить общий код, не прятал бы происходящее за визуальным редактором и не заставлял бы отказываться от привычной Java‑экосистемы.

В итоге я выбрал libGDX.

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

В этой статье расскажу, что именно мне дал libGDX, какую часть кода действительно удалось сделать общей и где кроссплатформенность закончилась.

Читать далее

«Оригинальное видение»: как геймеры сменили гнев на милость к DLSS 5 и что это говорит о восприятии нейросетей в целом

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели6K

Вчера произошло интересное событие. В сеть утекла ранняя версия DLLS 5, технологии, которая при помощи искусственного интеллекта улучшает (кто-то скажет ухудшает) графику в играх.

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

Читать далее

Недельный геймдев: #293 — 30 августа, 2026

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели6.2K

Из новостей: ремастер Ведьмака 3 выйдет 29 сентября, Ubisoft анонсировала слопмейк HoMM III, продажи Manor Lords достигли 4 миллионов копий, ремастер Шизариума выйдет до конца 2026, кражи на Gamescom.

Из интересностей: RESTORY новый суперхит, 3DO Interactive Multiplayer — история консоли, маленькая инди-студия рассказала про разработку Expedition 33, сделали игру лучше, а продаваться она стала хуже.

Читать далее

GPT Сгенерировал картинку игры, пытаюсь ее разработать. Часть 2

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели12K

3 день соло разработки. Рассказываю, как я решил разработать 3д игру без опыта в геймдев, с какими проблемами столкнулся.

Читать далее

Сокровище эпохи интернет-энтузиастов: как мод-мод Orbis переписал Civilization IV и уперся в тупик Civilization V

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели9.8K

В фэнтези-стратегиях экономику обычно задвигают на второй план и даже не пытаются ее совместить с магией. А вот создателям мода (точнее, даже мод-мода) Orbis для Civilization IV это удалось. По первому образованию я экономист, поэтому в играх мне всегда доставляет удовольствие сложная экономическая изнанка. И Orbis для меня до сих пор остается эталоном: здесь сложные процессы, завязанные на экономику, в итоге создают атмосферу мрачного, сурового дарк-фэнтези.

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

Автор мода, поляк Ahwaric, изменил движок Civilization IV: Beyond the Sword до неузнаваемости. Он встроил в общую экономическую стратегию магию, расовые фишки, особенности ландшафта, флоры и фауны. Все они работают на мощь ВПК твоей фэнтезийной цивилизации, чье существование все время под вопросом, в условиях жесткой и непредсказуемой магической конкурентной борьбы. Так любительский проект сумел перерасти оригинал.

Под катом — разбор этой уникальной экономической модели, история ее лора из настолок D&D и причины, почему проект так и не смог перешагнуть барьер Civilization V.

Читать далее

Как Mojang кинула свою же игру?

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели11K

Здравствуйте! Игра Minecraft появилась ещё в далеком 2009 году, и по сей день как многие знают популярна. Единственное, Minecraft офицально был доступен лишь на ПК. И разумеется, студия Mojang делала порты и на другие устройства, будь то консоли или телефоны. Сегодня, в этой статье пойдёт речь как раз про порты этой игры и разберёмся, как Mojang целенаправленно готовилась их заменить.

Читать далее

Браузерная 3D-игра в одиночку. Часть 1

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели8K

Разработка 3D-игры в одиночку.

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

Читать далее

Ближайшие события

Rich Messages в Telegram Bot API: как превратить одно сообщение в интерактивный интерфейс

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели8.4K

Telegram показал Rich Messages с интерактивными кнопками на примере шахмат. Я захотел проверить подход на более насыщенном сценарии и собрал покер‑бота.

Разбираю, как хранить состояние, обновлять одно сообщение, обрабатывать callback и защищаться от устаревших действий.

Читать далее

Как я сделал игру «Сапёр» на основе Rich-текста в Telegram

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели5.3K

Недавно в одном из постов в Telegram мне попалась статья о том, как реализовали шахматы на основе Rich-текста — это «Rich Text Chess». Меня это зацепило: Rich-сообщения не уводят пользователя из Telegram, и клиенту гораздо проще взаимодействовать с ботом, не покидая привычный интерфейс.

Читать далее

Картинку в моей игре вытянули не шейдеры. Самой полезной правкой оказались две строки конфига

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели6K

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

Её дали пять довольно тупых правок от двух до тридцати строк каждая. Самая полезная - две строки в конфиге камеры.

Внутри: таблица «цена / что чинит», формулы контактной тени, детерминированный хэш против одинаковых плиток, запечённый AO на стыках. И честный список того, что стоило дорого, а дало меньше.

Читать далее

Я написал игру так, что её правила не знают про Three.js. Объясняю зачем

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6K

В моей игре доменный слой не знает, что существует Three.js. И Rapier. И DOM.

Звучит как оверинжиниринг для платформера, где уровень проходится за полторы минуты, - и наполовину это правда. Но одна вещь окупила всё: e2e-тесты перестали мигать, потому что симуляцию стало можно прокручивать синхронно, не завися от скорости отрисовки.

Внутри: как выглядят порты, во что реально обошлась дисциплина, и в каком месте мне пришлось её нарушить.

Читать далее

У моего героя нет здоровья, ключей и очков. Есть масса, и это всё сразу

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели11K

Умереть в моей игре нельзя. Можно только похудеть.

У героя нет полоски здоровья, ключей и очков - есть масса. Она же здоровье, она же размер, она же ключ от двери, она же оценка за уровень. Одно число вместо трёх систем.

Внутри: как из этого правила сами собой выросли все механики, почему прыжок специально не зависит от массы, и как безобидная просьба «сделай камни процентов на десять покрупнее» закончилась правкой геймдизайна.

Читать далее

Как я хранил данные в Godot: почему JSON победил.tres и MySQL

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели9.1K

Четыре месяца я разрабатываю пошаговый футбольный менеджер Kickoff Island. Игра строится вокруг уникальных игроков, команд и тактик. Кстати, уникальность игроков больше всего добавляет мне трудностей, так как прорисовка их всех, а еще и покадровая анимация в Aseprite, тот еще геморрой. В какой-то момент передо мной встал, казалось бы, простой, но важный вопрос: как хранить всех этих футболистов, их характеристики, таланты и состояния?

Читать далее

Я управлял экономикой доставки, стриминга и билетов. Потом собрал их в четыре игры — не умея программировать

Время на прочтение5 мин
Охват и читатели6.4K

Внутри — экономика доставки, стриминговых войн, билетного сервиса и целой экосистемы без прикрас. Игры бесплатные, банкротство — учебное.

Читать как это вышло
1
23 ...