Обновить
381.54

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

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

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

Демоверсия Pathologic 3, бесплатная база знаний от Owlcat и скорый релиз Tarkov: новости игропрома за 1–16 октября 2025

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

Рассказываем, как прошла первая половина октября 2025 года в русскоговорящей игровой индустрии. В нашем дайджесте вас как всегда ждут свежие анонсы, подробности о новых проектах, а также важная информация из пресс-релизов ожидаемых игр.

Читать далее

Шахматы, которые вас удивят: Полный гайд по созданию игры с туманом войны на Python

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

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

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

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

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

Читать далее

Недельный геймдев: #248 — 19 октября, 2025

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

Из новостей: продажи No, I’m not a Human превысили 500к копий, BALL x PIT про шары продался тиражом 100к копий за сутки, умер дизайнер Томонобу Итагаки, Heroes of Might & Magic: Olden Era добавили в вишлист более миллиона человек.

Из интересностей: Furnish Master EA 100к продаж, про важность обсуждений, Александр Тужик — хочу и буду: пишу движок для игры.

Читать далее

О вызовах в разработке современной пререндеренной игры The Goddess's Will: работа с графикой

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

Доброе утро, Хабр!

Разработка технического демо длиной в пять лет подошла к концу, а работа над полной версией The Goddess's Will обещает быть интенсивной и сложной.
Сегодня я принёс статью о базовых проблемах, с которыми мы столкнулись при производстве графики, разрабатывая современную игру в эстетике пререндера.

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

Добро пожаловать под кат. Там вас ждут кровь, пот, рендеры, а также тематические мемы и движущиеся картинки!

Читать текст, смотреть движущиеся картинки

Ностальгические игры: Final Fantasy XII

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

У серии Final Fantasy огромное количество поклонников, но и не меньшее число тех, кто её недолюбливает. Кому-то кажется скучной боевая система, кого-то отталкивает «анимешная» стилистика, а кто-то устал от типичных историй о спасении мира от очередного апокалипсиса. Но что, если я скажу, что среди старых частей есть одна, которая разительно отличается от остальных — настолько, что даже убеждённым скептикам серии она может прийтись по вкусу?

Только представьте: сюжет, построенный не на избранных героях и древнем зле, а на политических интригах и противостоянии держав; революционная для серии боевая система, удивительно похожая на ту, что позже использовали в Dragon Age — хотя Final Fantasy XII вышла на три года раньше; и уникальная ролевая система, полностью переосмысленная в последующем переиздании, из-за чего даже ветераны, вернувшись к игре спустя годы, фактически получали новый опыт. Звучит интригующе, не так ли? Это именно та часть, которая способна увлечь даже тех, кто раньше обходил серию стороной. И если вы когда-то не понимали, за что миллионы игроков по всему миру любят Final Fantasy — то, пожалуй, попробуйте начать именно с неё.

В этом обзоре я расскажу, как создавалась игра, какие идеи легли в основу её мира и сюжета, чем особенна система боя и развития персонажей, какие различия есть между версиями и переизданиями Final Fantasy XII — и главное, почему эта RPG остаётся увлекательной даже спустя годы!

Читать далее

Электрическая УАЗ Буханка на Телеуправлении

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

Инженерное образование имеет такой специфический бонус, как дает его обладателю возможность делать всяческие безделушки чисто ради fun-на. Это особенно актуально длинными зимними вечерами.

В этом тексте я расскажу, как сделать игрушечную модель УАЗ Буханки с дистанционным управлением по инфракрасному лучу.

Читать далее

Lasers & Feelings и Ink: как мы адаптировали настольную RPG для визуальной новеллы

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

Привет, Хабр! Мы разрабатываем собственный плеер для визуальных новелл. Чтобы протестировать его возможности в «боевых» условиях, мы решили создать небольшую игру с нелинейным повествованием и RPG-элементами.

В качестве сценарного движка мы используем Ink — язык от студии Inkle, ставший стандартом в индустрии нарративных игр. А в качестве ролевой системы мы выбрали простую и элегантную Lasers & Feelings Джона Харпера, адаптировав её под формат одиночной визуальной новеллы.

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

Читать далее

Создание игр в Roblox: пособие для бати-программиста

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

Roblox — популярная игра и платформа для создания игр, и она хорошо подходит для того, чтобы попробовать себя в роли программиста. Мой сын уже во всю с друганами делает какие‑то игры там, потом они в них играют сами. И на курсы он уже тоже ходил, где показывали основы скриптинга на Lua. Однако у него часто возникают вопросы и проблемы, когда он не знает, что делать, в основном с написанием кода. И приходится подключать папу‑программиста, то есть меня.

Сам я пишу код уже почти 20 лет, писал на разных языках (C++, C#, Java/Kotlin, Python) и даже в геймдеве на заре своей карьеры работал. Однако просто так сходу взять и разобраться в организации внутренностей игры в Roblox оказалось не так‑то просто. Уж слишком там все отличается от того, к чему привыкли энтерпрайзнутые‑Java‑синьоры типа меня.

Roblox использует собственную бесплатную IDE под названием Roblox Studio. И когда впервые ее открываешь, глаза разбегаются от всяких кнопочек, деревьев объектов и непонятных штуковин. Тут нет просто папочек с кодом и конфигами, как я привык, зато есть тыща разных видов объектов, организованных в сложную иерархию и присыпанных сверху необходимостью делать сетевую синхронизацию между клиентом и сервером.

При этом все гайды по Roblox в интернете написаны для начинающих, в основном для детей, которые вообще не умеют программировать. И касаются они только совсем простых вещей, типа как сделать кубик, или как зарегистрировать прыжок игрока на него. При этом гайды часто не объясняют базу, структуру игры, а лишь дают набор действий типа: «нажмите тут, скопируйте этот скрипт вот сюда».

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

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

Читать далее

Назад в прошлое. Часть 7. Resident Evil, Cammy и мультипликация. Интервью с режиссёром озвучивания Сьюзан Харт

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

Краткая справка об основных действующих лицах:

Susan Hart - режиссёр и актриса озвучения игр и мультипликации, номинант и победитель многочисленных профильных наград, включая несколько премий Emmy. Принимала участие в режиссуре озвучения большинства классических игр серии Resident Evil (со второй по четвёртую части, а также нулевой и Code Veronica), двух частей Dino Crysis (2000 / 2001), а также помеси шутера и beat 'em up-action'а Heavy Metal: Geomatrix (2001). По меньшей мере в двух играх озвучивала Cammy, персонажа серии Street Fighter, в частности в классическом проекте X-Men vs. Street Fighter (1996).

Читать далее

C#-like properties в C++ размером 1 байт

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

Иногда в С++ не хватает каких-то фич, которые есть в других языках. Мне, например, не хватает preperties из C#. В них можно описать функции set/get, при этом работать с ними через поле класса, как с переменной.

В С++ это приходится делать через функции, что может быть громоздкои и менее читаемо:

actor.SetTransform(left.GetTransform() * right.GetTransform() * up.GetTransform());

Но хочется более простой и понятный синтаксис:

actor.transform = left.transform * righ.transform * up.transform;

Под катом я расскажу как можно в С++ обернуть set/get в переменную с минимальным размером 1 байт

Читать далее

LLM уже может все! Или еще нет?

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

Генеративные ИИ-модели сегодня очень хороши в генерации текста. Быть может, они уже полностью могут взять на себя роль автора такого релевантного типа игр, как "текстовый квест"? Взять на себя их полное ведение. А что если просто описать игровой мир и "запустить" в него игрока? Сможет ли получиться игра со "свободным миром", но конечной и достижимой целью, на базе чистого ИИ? Или нет?

Я на практике попробовал ответить на этот вопрос.

Читать далее

Недельный геймдев: #247 — 12 октября, 2025

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

Из новостей: Илон Маск пообещал выпустить ИИ-игру до конца 2026 года, студию-разработчика ритм-шутера Metal: Hellsinger закроют, продажи Expedition 33 превысили 5 миллионов копий, CloverPit продалась тиражом в 500к копий за 8 дней.

Из интересностей: что нужно иметь на руках при поиске издателя, трассировка лучей в мире Assassin’s Creed Shadows, Дмитрий Зайцев — сделал игру и заработал на пять лет вперед.

Читать далее

Управление “libraries" как “apps" используя Agentic Executable framework

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

Представьте, что библиотеки можно устанавливать / настраивать и удалять (на любом языке и в любом фреймворке) так же легко, как любое приложение или игру на телефоне или компьютере?

Эта статья о том, как мы можем это сделать.

Или другими словами, framework Agentic Executables (далее - "AE") рассматривают библиотеки как исполняемые программы со структурированными, понятными для AI агента инструкциями. Вместо того чтобы полагаться на документацию написанную для людей, AI-агенты следуют стандартизированным .md файлам для автономной установки, настройки, интеграции, обновления и удаления библиотек.

Я решил разделить статью на несколько частей:

Читать далее

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

Чтение на выходные: «Мастер Подземелий. Гэри Гайгэкс и вдохновляющая история создания Dungeons & Dragons в комиксах»

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

Если вы когда-нибудь бросали двадцатигранный кубик, представляли себя магом, воином, одиноким странником или плутом, то наверняка знаете, что без Dungeons & Dragons мир настольных игр был бы совсем другим. Представляем вашему вниманию работу о культовой игре, изменившей поп-культуру навсегда.

Книга написана в формате комикса. Над ней поработали Дэвид Кушнер — журналист, редактор и автор ряда книг, и Корен Шамди — иллюстратор и мультипликатор. В девяти частях читателю открывается история Гэри Гайгэкса — человека, который вместе с друзьями превратил увлечение фэнтези и военными стратегиями в явление, покорившее миллионы.

Читать далее

Хороший, плохой, цветной и быстрый

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

Давным-давно, когда с ездовым котом приключилась "записка шестая", а знания об аллокаторах и опыт их применения ограничивался линейным и системным, перебросили мою команду в помощь другой команде, которая занималась системами навигации больших судов. Ездовые коты, особенно нестарые - это такие создания, которые редко изучают документацию детально, а чаще бегло читают там про интерфейсы систем в проекте, malloc, new, системные аллокаторы и думают, что теперь-то точно понятно, как всё устроено. А потом приходит работа и такая: “Забудь всё, что ты знал. Ты не дочитал до страницы восемьсот что-то там РД, тут есть свой аллокатор - и он реально плохой”.

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

А вот почему нужны и важны ненормальные - объяснений почти нет, как и самих реализаций в открытом доступе. В этой статье я расскажу, какие повстречал ненормальные алгоритмы распределения памяти, чем они живут, кого едят, и почему иногда malloc делает вид, что он не при делах и таки да, malloc может возвращать null и ту проверку мы убрали зря.

Читать далее

Слёзы, баги и C++: как Isaac стал легендарной игрой

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

Привет, Хабр!

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

Сегодня я расскажу о разработке культовой инди-игры The Binding of Isaac и разберу технические нюансы: путь от Flash к C++, как собирается план этажа, как устроены большие комнаты и секретки, по каким правилам живут эффекты предметов и их синергии, как Lua-скрипты встраиваются в движок для модов, где в архитектуре сделаны осознанные компромиссы.

Читать полную историю

Роботы из «Звездных Войн» на заброшенной военной базе в Вальехо — фоторепортаж

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

В городе Вальехо, штат Калифорния, до 1996 года работала старейшая военно-морская база на Западном побережье. Сейчас помещения пришли в запустение, но не совсем — в них ежегодно проводится шоу самоделкиных Maker Faire. Я там сделал стенд и заодно поснимал вокруг:

Читать далее

Сам себе breakpoint

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

Когда отлаживаешь программу, речь идет про использование отладчика в студии или другой IDE, то почти всегда имеешь дело с точками останова (breakpoint, бряками) — механизмом, когда выполнение программы приостанавливается, чтобы можно было заглянуть внутрь и понять, что происходит. Точек останова есть всего два основных типа, программные и аппаратные, а остальные все сделаны на их основе. Эти два базовых типа могут вести себя похоже, но устроены по-разному.

Программные точки останова — это то, с чем сталкивается каждый разработчик, когда вы ставите красную точку в среде разработки (в основном я использую большую студию) или используете команду bp под WinDbg. В этом случае отладчик просто подменяет один байт машинного кода в нужной инструкции на команду int 3. Это специальная инструкция для вызова прерывания отладки (Debug Interrupt), имеет машинный код 0xCC и говорит процессору: “Остановись, я хочу передать управление отладчику”, соответственно когда выполнение доходит до этой инструкции, срабатывает прерывание, и управление передаётся в отладчик. Отладчик "просыпается" и видит, что программа остановилась из-за исключения EXCEPTION_BREAKPOINT , возникшего по конкретному адресу, проверяет свой внутренний список точек останова и находит ту, которая была установлена по этому адресу.

Читать далее

Недельный геймдев: #246 — 5 октября, 2025

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

Из новостей: EA согласилась на продажу за 55 миллиардов, Unity раскрыла многолетнюю уязвимость, Bevy 0.17, Microsoft объявил о масштабных изменениях в Game Pass, на King подали в суд.

Из интересностей: посиделки с инди #5 The King is Watching и путь к 300к копиям, ведьма и её спектральные коты, анимация в Cronos: The New Dawn.

Читать далее

Игра на SWI-Prolog + Phaser

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

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

Читать далее

Вклад авторов