Обновить
240.22

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

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

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

Clair Obscure: Expedition 33 вернула мне веру в игровую индустрию

Время на прочтение15 мин
Количество просмотров9.7K

Чем больше пишешь ретроспектив, тем отчётливее понимаешь, как в творчестве многое зависит от удачи. Но даже при таких исходных история появления и успеха французской RPG под названием Clair Obscure: Expedition 33 — это чудо из чудес. Как команда ноунеймов нашла друг друга, завоевала армию игроков и что данный феномен значит для игровой индустрии? На эти и не только вопросы давайте найдём ответы вместе.

Читать далее

Пишем 3D-игру весом в 600Кб…

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

...которая работает на первом Android-смартфоне в мире, ретро-компьютерах из 90-х и даже Mac'ах! Часть 1.

Иногда у меня лежит душа просто взять и написать какую-нибудь небольшую игрушку с нуля, без использования готовых движков. В процессе разработки я ставлю перед собой интересные задачки: игра должна весить как можно меньше, работать на как можно большем числе платформ и использовать нетипичный для меня архитектурный паттерн. Недавно я написал трёхмерные «танчики», которые весят всего лишь 600 килобайт и в рамках подробной статьи готов рассказать о всех деталях разработки трёхмерной игры с нуля в 2025 году. Если вам интересно узнать, как работают небольшие 3D-демки «под капотом» от написания фреймворка до разработки геймплея — жду вас под катом!

Читать далее

Вызов игроку как портрет геймплея

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров1K

Каждый геймдизайнер наверняка в курсе про теорию потока и нарастание вызова в играх. Это довольно простой принцип: игра ставит перед игроком некий вызов: например, победить монстра. Этот вызов должен быть не слишком тривиальным (иначе игрок заскучает), но при этом посильным для игрока, иначе он расстроится. Вызов лежит в основе очень многих игр, не обязательно компьютерных. Даже когда ваша кошка гоняет мячик по квартире - это для неё тоже вызов (догнать и поймать мячик) и ей от этого тоже интересно.

Читать далее

Сериализация в Unity: известные атрибуты и их проблемы

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

Любой Unity-разработчик знаком с атрибутом [SerializeField], который позволяет сериализовывать непубличные члены класса и, соответственно, отображать их в инспекторе. Но, в силу его ограниченности, позже начали появляться и другие способы сериализации.

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

Читать далее

Последовательность Фибоначчи в составах команд главных героев

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

«Они были кучкой отщепенцев…» Все истории о командах героев начинаются примерно в таком духе. Обычно повествование не начинается с того, что они были командой опытных профессионалов, которые действуют так же эффективно, как хорошо отлаженный механизм. Но почему, спросите вы? Ну, потому что мы читаем истории, чтобы научиться вести себя в новых обстоятельствах, и гораздо более вероятно, что нам придется иметь дело с группой неуклюжих бродяг, чем с командой, в которой каждый член точно знает, какова его роль.

Если взглянуть на мир художественных произведений с точки зрения повествования, то можно заметить несколько четко выраженных схем, касающихся количества главных героев, которые появляются в художественных произведениях, будь то книги, телешоу, фильмы или даже видеоигры. Во многих историях можно встретить одно из следующих чисел: 1, 2, 3 или 5. Интересно, что этот паттерн повторяет первые четыре числа последовательности Фибоначчи. Если мы внимательнее посмотрим на внутреннюю динамику каждой из этих типичных командных компоновок, то увидим, что математика становится очевидной.

Читать далее

Книга: «The Last of Us. Как серия исследует человеческую природу и дарит неповторимый игровой опыт» Николя Денешо

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

Добро пожаловать в 26 сентября 2013 года — сегодня с нами пятьсот страниц чтения о мире и сюжете известной постапокалиптической игры. Убедитесь, что маска, защищающая от спор кордицепса, плотно прилегает к лицу, а в соседней комнате не щелкает щелкун, и поехали.

Читать далее

Локализация. Поиск строк по всем StringTable'ам в Unreal Engine

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров448

В процессе работы над локализацией в Unreal Engine я столкнулся с дублирующимися строками, хаосом в StringTable и отсутствием удобного способа поиска текста по ассетам. В этой статье делюсь решением, которое помогло навести порядок, ускорить работу и снизить количество ошибок — с примерами и собственным плагином.

Читать далее

Вселенная Сетевых Игр в Unity: Руководство для Юного Создателя

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

Простое и понятное руководство по Unity Netcode for GameObjects, которое поможет начинающим разработчикам (и не только!) сделать первый шаг в мир сетевых игр.

Читать далее

WaveManager: Реализуем систему управления волнами врагов в Unity

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

Реализация системы управления волнами для создания захватывающих столкновений с противниками — это достаточно эффективный способ постепенно увеличивать сложность, поддерживая вовлеченность игроков. В этом руководстве я поделюсь с вами своим опытом реализации WaveManager'а в Unity, включая создание скриптов, генерацию врагов и интеграцию пользовательского интерфейса.

Читать далее

7 грядущих российских игр, за которые не стыдно

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

Когда речь идет о любом современном продукте отечественного производства, то народ, как правило, сразу начинает его критиковать. Речь, конечно, идет про фильмы, сериалы, автопром и такие чудо-технологии, как: GeForce GT 1030 от DEXP или портативная консоль Fplus. Российскому игропрому тоже регулярно достается. Мол, а чего от них ждать-то? Нам ведь предложат либо новую «Смуту», либо очередные «танки» с донатами, либо какую-нибудь трешовую инди-игру со дна Steam. Конечно, можно вспомнить хитовую Atomic Heart, но… это скорее просто исключение из правил. 

Однако, если отбросить все «смутные» сомнения, то можно заметить, что хорошие российские игры есть! И их становится больше, а не меньше. Да, у них нет огромных бюджетов и они не хайпят из каждого утюга. Но, как говорится, делаются они по-русски, то есть — с душой! В этой подборке мы предлагаем вам взглянуть на 7 грядущих российских игр, за которые не придется краснеть.

Читать далее

Разбираем основы левел-дизайна на популярных играх — и учимся делать так же

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

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

Через левел-дизайн можно: направлять игрока, регулировать ритм игры, чередовать активности — бой, исследование, сбор ресурсов, выполнение заданий, рассказывать истории — от правил игры до сюжетных сцен.

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

Читать дальше →

Zenject (Extenject) в Unity: Исчерпывающее руководство по внедрению зависимостей

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

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

Zenject (Extenject) решает это раз и навсегда.

Эта статья о том, что такое zenject и как им пользоваться.

Читать далее

MyCivGame. Как я сделал свою Civilization?

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

MyCivGame - Как я сделал свою Civilization! Я расскажу, как я в одиночку делаю свою пошаговую стратегию, вдохновленную играми Civilization и Total War...

Читать далее

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

Низкоуровневый скриптинг на C++ для игровых движков

Время на прочтение21 мин
Количество просмотров7.5K

Я постарался охватить только основы, но текст всё равно получился очень длинным.

libriscv — это зрелый эмулятор RISC-V, который в настоящее время используется в игровых движках. Насколько мне известно, это единственный эмулятор, в котором основной акцент делается на обработке задержек, а также предоставляются специализированные решения и инструменты для выполнения быстрых вызовов при обращении с функциями — как входящих, так и исходящих. Причём, всё это заключено в безопасной песочнице. Задержки, наблюдаемые в libriscv,  гораздо ниже, чем в эталонных эмуляторах.

Меня многие спрашивали, как им пользоваться, но здесь интереснее то, как вообще может прийти в голову мысль писать скрипты на C++ — не слишком ли сложно это будет? Оказывается, нет, не очень. Вот уже несколько лет я пишу на C++ скрипты для одной большой и одной не очень большой игры, и меня почти не посещало ощущение, что виной каким-то возникающим при этом проблемам являются язык C++ или связанные с ним скриптовые API. Я много лет программирую на Lua, а до этого пользовался обычным C. Но сейчас современный идиоматический C++ — то, что мне нужно. Причём, я могу писать на этом языке как в самом игровом движке, так и за его пределами, при этом опираясь (буквально) на одни и те же абстракции и оперируя одинаковыми структурами данных. Наконец, C++ просто очень мощный. Правда, я признаю, что о вкусах не спорят, и при работе с C++ также не обойтись без компромиссов.

Читать далее

Как я делал свой первый прототип игры на Unity

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

Вводные: всегда хотел работать в геймдеве, поэтому решил начать с малого — попробовать сделать хоть какой‑то прототип игры с нуля. С C# знаком на среднем уровне, с блендером на нулевом), с Unity чуть‑чуть (делал тетрис, и пытался сделать мультиплеер для него поверх Steam через Spacewar).

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

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

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

Стена была сделана из нескольких плоскостей, на которые была натянута текстура кирпичной кладки, предварительно пикселизованная.

Читать далее

Недельный геймдев: #230 — 15 июня, 2025

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

Из новостей: почему и как провалилась Dragon Age: The Veilguard, Sony сняла региональную блокировку почти со всех своих игр в странах без PSN, сотрудников Ubisoft привязывали к стулу.

Из интересностей: интервью с командой CDPR и сотрудником Эпиков про демку Ведьмака 4, работа со светом в Godot, своя система анимации на C примерно в 14 раз быстрее Юнитишной.

Читать далее

Делаем сразу множество игр, или Как создать эмулятор

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров4.2K
image

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

Если вы не хотите его проходить, то:

  • возьмите готовый эмулятор;
  • повторите то, что в нём уже сделано.

Но если это не ваш путь, то милости просим в статью.
Читать дальше →

Первый блин. Вещи которые я вынес из разработки своей первой игры

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

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

В игре ещё есть над чем работать, но, к сожалению, я немного перегорел этим проектом — теперь есть желание попробовать разработку на современном движке и разработать что‑то не пошаговое, а более линейное. А свою первую игру я хотел закинуть «в стол», но решил, чтобы добро не пропадало, написать статью. Дать несколько советов на основе полученного опыта. Возможно, это поможет кому‑то сделать свою игру мечты, или поможет избежать моих ошибок, или просто развлечёт вас.

Посмотреть игру и понять, нужно ли вообще читать это дальше, можно вот тут:

http://f1 136 045.xsph.ru/ — Там бесплатный тестовый домен, так что не удивляйтесь предупреждения от браузера:‑)

Читать далее

Самые необычные и странные RPG: от абсурдной до гениальной

Время на прочтение13 мин
Количество просмотров20K

Ролевые игры вновь на пике внимания. В 2025 году уже успели выйти такие хиты как: Kingdom Come: Deliverance 2, с глубоким реализмом и исторической достоверностью описания Средневековья; визуально чарующая Claire Obscure: Expedition 33 про поэтическое и мрачное путешествие по развалинам цивилизации; ремастер Oblivion, который возвратил игроков к истокам великой эпохи классических RPG.

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

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

SharedLogic. Общий игровой код для Unity-клиента и .NET-сервера, который экономит ваши силы

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров3.3K

Я хочу поделиться практическим подходом, который позволяет переиспользовать ваш игровой код на C# из Unity на .NET-бэкенде — это даёт возможность верифицировать действия игрока, защищает от читерства и обеспечивает мгновенный отклик без лагов.

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

Как это работает:

• Команды игрока мгновенно выполняются на клиенте.

• Та же команда вместе с хэшем состояния отправляется на сервер и повторно выполняется для верификации.

• Любые попытки изменить код или память клиента будут обнаружены и отклонены сервером.

• Игровая логика вынесена в .dll-плагин, который используется и в Unity-клиенте, и на .NET-бэкенде.

В статье есть полноценный пример на Unity («Connect Four»), открытый исходный код и подробное описание архитектуры.

Читать статью

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