Обновить
383.11

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

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

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

Почему мы до сих пор используем пиксели: графика в играх и UI

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

Пиксели пережили всё — от рассвета 8-битных приставок до эпохи 4K-мониторов. Их пытались заменить вектором, 3D-моделями и бесконечным количеством сглаживающих фильтров, но они всё ещё с нами — в играх, иконках и даже модных UI-дизайнах.

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

Читать далее

Простыми словами для начинающих Unity-разработчиков учим принципы KISS, DRY, YAGNI и BDUF через аналогии из жизни

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

Большинство статей о принципах разработки написаны сложным языком и отпугивают новичков. В этом материале KISS, DRY, YAGNI и BDUF объясняются через бытовые аналогии с примерами на Unity C#. Плюс рассказываем, когда эти принципы стоит нарушать.

Читать далее

Expression Templates

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

«Лень‑матушка вперёд нас родилась»

В этой статье я хочу рассказать о технике «Expression Templates» и её применении в библиотеке simstr.

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

Вот, к примеру, давайте рассмотрим такой простенький код.

Читать далее

Как игре общаться с игроком

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

Когда мы играем в игру или смотрим кино, то всегда общаемся с героями и с самим произведением, можем это делать вслух, а можем про себя. Так или иначе, каждый игрок это делает, и отвечать на его вопросы (назовем все эти мысли вопросами) необходимо, если, конечно, вы хотите сделать запоминающееся и эмоциональное произведение.

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

Читать далее

Книга: «Создаем игры и изучаем C++»

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

Привет, Хаброжители! Мечтаете создавать игры, но не знаете, с чего начать? Книга «Создаем игры и изучаем C++» станет вашим проводником в мире игровой разработки!

Это издание было адаптировано под Visual Studio 2022, C++20 и библиотеку SFML, оно предлагает уникальный подход: вы не только освоите язык C++ с нуля, но и примените знания на практике, создав четыре игры в разных жанрах.

Вы начнете с изучения основ программирования, познакомитесь с ключевыми темами C++: объектно-ориентированное программирование (ООП), указатели и стандартная библиотека шаблонов (STL). Разберетесь с методами обнаружения коллизий и столкновений в игровой физике на примере игры Pong. Создавая игры, вы познакомитесь с массивами вершин, направленным звуком, шейдерами OpenGL, порождением объектов и многим другим. Вы погрузитесь в игровую механику и реализуете обработку ввода, повышение уровня персонажа и даже «вражеский» ИИ. Наконец, вы изучите паттерны проектирования игр, чтобы усовершенствовать навыки программирования на C++.

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

Читать далее

YRGB 2025: открылось голосование за лучшую игру для ZX Spectrum

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

В мире ретро-игр есть свои праздники. Иногда это релиз долгожданного ремейка, иногда — находка неизвестного ранее прототипа, а иногда — событие, которое объединяет игроков, разработчиков и просто любителей 8-битной магии. Сегодня как раз такой случай: открылось голосование в конкурсе YRGB 2025.

YRGB — это международный конкурс, который Яндекс Музей проводит с 2019 года для разработчиков игр на ZX Spectrum. Участникам нужно создать полностью оригинальную игру и загрузить её на сайт конкурса. Цель — вдохновить авторов на новые проекты для легендарного «Спектрума», который до сих пор любим в России, Великобритании, Испании, Португалии, Бразилии и других странах.

На официальном сайте конкурса вас ждут 15 игр, созданных специально для ZX Spectrum. Авторы постарались угодить всем вкусам: здесь и аркадные стрелялки, и скоростные гонки, и изящные платформеры, и вдумчивые стратегии, и хитроумные головоломки, и атмосферные квесты.

Что же прислали конкурсанты?

Игровая экономика: на стыке геймдизайна и кода

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

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

Читать далее

От консоли к GUI: Как написать игру «Сапёр» на Python с нуля версия консоли (часть первая)

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

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

Читать далее

Недельный геймдев: #238 — 10 августа, 2025

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

Из новостей: онлайн открытой беты Battlefield 6 в Steam превысил 500к одновременных игроков, BioWare получила отказ от EA на предложения сделать ремейк Origins или переиздание трилогии, продажи Titan Quest II превысили 300к копий.

Из интересностей: путь с нуля к 200к проданным копиям The King is Watching за 2 недели, Тим Кейн про авторские права и накопления, как 500 тайских геймеров уберегли от полного провала.

Читать далее

Metal Gear Solid 2, Deus Ex, The Sims и другие старые игры, предсказавшие наше время

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

В 2001 году на первой PlayStation выходит игра, которую многие восприняли как запутанную и избыточно философскую. От Metal Gear Solid 2: Sons of Liberty игроки ожидали продолжения шпионского боевика с Солидом Снейком в главной роли. Но главного героя заменяют на незнакомца, сюжет погружается в цифровую паранойю, искусственный интеллект начинает вещать о правде и лжи, а игра вместо привычного боевика превращается в размышление о свободе воли, информационном шуме и бессилии личности в мире алгоритмов. Тогда игру не поняли и не приняли. А теперь, спустя два десятилетия, MGS2 называют одним из самых пророческих произведений в истории игр.

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

Читать далее

Анализаторы для Unity

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

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

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

Читать далее

AI для Rider в разработке под Unity

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

Давно не касался темы AI, хотя в этой сфере постоянно происходит много нового.

У меня успело накопиться несколько обновлений, которые могут оказаться для кого-то полезными, т.к. разработка с Rider под Unity имеет некоторую специфику, из-за чего приходится много экспериментировать и выискивать удобные инструменты.

Расскажу, что я успел попробовать, чем и как пользуюсь сейчас.

Читать далее

Использование нейросетей в разработке игр. Часть 2. Делаем платформер

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

В первой части этой стати мы с нейросетью Qwen пытались создать аналог Pong! в зимнем сеттинге (Снежинка вместо шарика и на фоне падает снег).

Итак, с понгом Qwen справился, настало время для более сложных испытаний. Посмотрим, как он справится с платформером.

Читать далее

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

Хочу отдать игру в open source

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

Всем привет. Восемь лет назад я написал браузерную IO игру про космические сражения. Какое‑то время игра была в онлайне и даже пользовалась некоторой популярностью, но потом я ее забросил. А сегодня случайно наткнулся на старый ролик, сделанный игрокам — https://www.youtube.com/watch?v=AG7rVC1LiNM. И подумал, что ведь она неплохо выглядит даже сейчас. Что если кто‑то захочет ее развить?

Серверная часть написана на go, один сервер поддерживает до 2000 одновремнных игроков. Клиент написан на Unity3d. Есть еще боты, работающие на том же протоколе, что и клиент. Они туповатые, но в целом, умеют и воевать и преследовать игрока и собирать ресурсы. Ботов написал на java мой брат.

Конечно, все исходники давно устарели — версии go и unity там восьмилетней давности. Но все это можно реанимировать и привести в порядок, если найдутся люди, желающие развивать такой проект. Лично мне хотелось бы вписать текущий гэймплэй в какую‑то более интересную и общую вселенную — сделать из этого RPG может быть.

Кому интересно пишите комментарии или в личку.

Готов ответить на вопросы.

Читать далее

История разработки P0D-ботов для Counter Strike

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

Counter-Strike стал важнейшим этапом в эволюции шутеров как на постсоветском пространстве, так и за его пределами. Сколько десятков и даже сотен часов мы провели в компьютерных клубах и дома, доказывая друзьям, кто из нас лучший игрок! Однако в те годы не у всех был стабильный интернет, а в локальных сетях, особенно маленьких городов, не всегда собиралась достаточная команда для полноценного матча. И тогда на выручку приходили боты! Именно с их помощью можно было не только с удовольствием провести время, играя на любимых картах, но хорошенько отточить своё мастерство!

Но создание таких ботов в те годы было непростым делом: требовались не только технические знания, но и настоящая страсть к игре, тем более специализированного инструментария для этих целей тогда просто не было! Именно такие люди, объединившись вместе, и подарили нам одних из самых лучших ботов того времени — Pod-Bot, которые впоследствии стали официальными Z-bot на релизе CS 1.6.

Рад представить своё интервью с одним из авторов этого бота, который поделится воспоминаниями и различными интересными моментами, что возникали в процессе разработки. Очень надеюсь, вам понравится, и вы всецело окунётесь в ламповую атмосферу тех лет, читая его рассказ!

Читать далее

simstr — ещё одна строковая библиотека

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

Работа со строками в С++ - зачастую больная боль.

Однако за 25 лет я сумел найти лекарство от этой боли и после 13 лет разработки и испытаний готов поделиться им со всеми страждущими.

simstr — библиотека для использования строк в C++, в которой пишется легко и удобно, а выполняется быстро и оптимально.

Читать далее

Отгадай слово дня: от ручного поиска к автоматизации

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

На прошлой неделе наткнулся на забавную игру в слова – contexto.me, смысл прост: нужно отгадать секретное слово. При этом после каждой попытки видно, насколько близко по смыслу ваше слово было к ответу. Поиграв пару дней, захотелось написать такую игру самому, а также автоматизировать процесс решения, про что и данная статья.

Читать далее

Хватит страдать: Выбросьте ООП и ECS. Есть путь проще

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

Десятилетиями нам рассказывают, что есть только два пути: громоздкие иерархии ООП или стерильная бюрократия ECS. Нас заставили поверить в то, что создание игр — это выбор между анархией и диктатурой.

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

Читать далее

Меньше багов — больше FPS: как статический анализ помогает проектам на Unreal Engine

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

Всё больше проектов появляется на Unreal Engine — от великого "Ведьмака" до не менее великой "The Day Before". И чем больше проект, тем выше цена одной незамеченной ошибки. Когда число строк кода переваливает за несколько тысяч, даже самый внимательный разработчик может не заметить неочевидный баг. И тут на помощь приходит он — PVS Studio, который помогает снизить риск попадания багов в ваши UE-проекты.

Читать далее

Сетевой чат в Unity: Часть 3 — Звуки и продвинутые функции

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

Третья часть из серии статей на тему создания сетевого чата в Unity с использованием Netcode for GameObjects. Добавляем звуковые уведомления, приватные сообщения и продвинутые функции.

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

Читать далее

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