GameDev: разработка игр
Игры
Канал для разработчиков игр, геймдевелоперов, художников, левел-дизайнеров, сценаристов, геймдизайнеров.
Загружаем канал…
Мы используем файлы cookie для работы сайта и аналитики посещаемости. Подробнее в Политике обработки данных и Правилах.
Игры
Канал для разработчиков игр, геймдевелоперов, художников, левел-дизайнеров, сценаристов, геймдизайнеров.
Как «ужать» мегаполис до размеров iPhone 4 Помните времена, когда трава была зеленее, мобильный интернет помегабайтным, а Apple осваивала непаханые поля смартфоно-игровых ферм? Начало 2010-х было очень интересным временем, когда мобильные студии создавали целые новые жанры, пытались перенести или адаптировать старые концепции и игры, попутно решая задачи, от которой у десктопного разработчика начинал дергаться глаз. Вот и EA решили взять культовые франшизы SimCity и The Sims со всеми их терабайтами ассетов, сложнейшей симуляцией дорог, пробок и отдельных симов, и попробовать затолкнуть это в карман. В кармане у пользователя тогда лежал условный iPhone 4 или 5 с уже тогда куцым бюджетом оперативной памяти в районе 100–300 МБ на всё про всё, но айфоновладельцы были "платящей" аудиторией, п…
Читать целикомЛимоны, игры и экономика ремейков Есть популярная экономическая теория, что рыночек порешает, и что конкуренция отсеивает брак, а если решение стало индустриальным стандартом, то оно объективно лучшее. В разработку игр эта логика пришла в конце двухтысячных с популяризацией Unity, и чуть позже Unreal, и попытки сейчас предложить написать свой рендер или менеджер памяти натыкаются на волну противников и кричалок: "не изобретайте велосипед", "фокусируйтесь на геймплее", "делайте игру, а не движку". В семидесятых Джордж Акерлоф в своей работе про "рынок лимонов" объяснял, что если покупатель не может визуально отличить качественную б/у машину от «хлама» (lemon), то цена на рынке усредняется, качественные машины уходят, и рынок заполняется теми самыми лимонами. Выход на рынок хороших игровы…
Читать целикомВгрызаемся в память World of Warcraft: дрифт ценой в 20 гигабайт Разбор одной инженерной задачи: как приложение рядом с игрой читает чат прямо из памяти процесса, почему первый способ это делать сжигал половину ядра и что пришло ему на смену. Тема — память чужого процесса, строка, которая не стоит на месте, и мёртвая копия, неотличимая от живой. Читать далее https://habr.com/ru/articles/1073874/?utm_campaign=1073874&utm_source=habrahabr&utm_medium=rss
o2 game engine Привет, хабр! Уже 11 лет я пилю свой игровой движок, и я готов представить его публике. Я все еще дорабатываю его, но он уже вполне стабилен и я делаю игры на нем.Движок открытый и бесплатный, нацелен преимущественно на мобильные игры, поддерживает пачку платформ - ios, android, web, mac, windows, linux. Он компактный (всего несколько мегабайт), производительный, позволяет писать логику игры как на C++, так и на JavaScript. Внутри есть убер-редактор для всего - вот он на скриншотике вышеНа мой взгляд, лучший способ рассказать о технологии - показать демо и рассказать как все устроено внутри. Под катом ссылки на репозиторий и демки (под веб), а также асскажу как он устроен внутри. Велкам! Читать далее https://habr.com/ru/articles/1073630/?utm_campaign=1073630&utm_source=ha…
Читать целикомЭпоха пиксельного кино 80-х. Бум игр по фильмам для ZX Spectrum, Commodore, Atari и других В свои 12-13 лет я с друзьями с удовольствием гонял на Спектруме в игры по фильмам «Рэмбо», «Чужие», «Бэтмэн». Тогда мы не представляли себе, что это (разработка игр вообще) целая индустрия и бизнес. Диссонанса от того, что на Синклере были доступны сотни игр, а на БК пара десятков, почему-то не возникало. Я думал, что делали игрушки фанаты и производители компьютеров, как для советских ПК. При чем тут деньги, если все можно скопировать с кассеты на кассету?Тем временем, один только «Робокоп» для Commodore 64, ZXSpectrum,Apple II, Amstrad CPC, MSX и других платформ разошелся тиражом более 1 000 000 экземпляров (источник). А в Британии его признали лучшим релизом 1989 года для Спектрума. Поговорим о…
Читать целикомПопасть нельзя промахнуться В прошлой статье мы уже немного врали игроку самым наглым образом, когда брали вполне корректную с точки зрения физики проверку земли, растягивали её на несколько миллисекунд и разрешали персонажу прыгнуть уже после того, как он фактически покинул платформу. Всё это делали не из-за криворукости нашего программиста физики, который не умеет написать нормальную проверку столкновений, а чтобы игрок вообще не знал, что там у нас происходит со столкновениями… да он и не обязан об этом знать.В сетевой игрой происходит примерно то же самое, но приходится немножечко врать уже не о положении персонажа, а о времени и если coyote time был маленькой ложью о том, где заканчивается платформа, то lag compensation, будет маленькой ложь о том, когда именно существовал игровой м…
Читать целикомКурс молодого вайбкодера Как я решил сделать игру, сделал ее и встрял на последнем уровнеВайбкодинг открыл нам дивный новый мир. Судя по тематическим телеграм‑каналам, фитнес‑тренеры уже вовсю создают одним промптом открытые миры в 3D, а домохозяйки уходят на ноготочки, оставляя детей и мужей на OpenClaw. И по возвращении находят одних уже воспитанными, других — покормленными и уложенными. И с мужьями тоже всё норм.И тут я зачем‑то вспомнил, что образование у меня, в целом, айтишное. И решил, что это — моё конкурентное преимущество (спойлер: нет). Читать далее https://habr.com/ru/articles/1088674/?utm_campaign=1088674&utm_source=habrahabr&utm_medium=rss
Как завайбкодить качественную игру с нуля? Раскрываю все секреты Всем привет! Меня зовут Саша, я работаю в сфере AI около 5 лет. А еще мне очень нравится вайбкодить) Некоторое время назад я решил проверить, получится ли у меня сделать что-то приличное в области, где у меня ровно ноль опыта, и выбрал для этого разработку игр. Получился хоррор, и он даже играбелен! Пару месяцев назад я написал первую статью, где разбирался, почему завайбкодить игру за час не выйдет. Главное пожелание со стороны читателей можно охарактеризовать как "а давай теперь то же самое, но с техническими деталями и лайфхаками". Справедливо, держите)Коротко напомню суть игры. Subject 47 - психологический хоррор, где игрок участвует в эксперименте, и его задача сохранять спокойствие несмотря ни на что (а смотреть там д…
Читать целикомНашёл ошибки в моде Create и проверил их в игре В этой статье мы разберём ошибки в одном из самых популярных модов для Minecraft — Create. Посмотрим, как они проявляются прямо в игре, и отправим пулл-реквесты с исправлениями. Поехали! https://habr.com/ru/companies/pvs-studio/articles/1088366/?utm_campaign=1088366&utm_source=habrahabr&utm_medium=rss
Почему игры на MacBook дёргаются даже при 100+ fps — и как я сделал кадры ровными Игры на MacBook часто дёргаются даже при 100+ fps. Я записал, когда каждый кадр на самом деле появляется на экране, и дело оказалось не в нехватке мощности, а в том, как кадры ложатся на сетку экрана ProMotion. Разбор с замерами на MacBook Pro с M3 Pro, четыре подхода, которые не сработали, и тот, что сработал: 87 % ровных кадров против 18 %. Читать далее https://habr.com/ru/articles/1087922/?utm_campaign=1087922&utm_source=habrahabr&utm_medium=rss
Coyote Time или как немножко врать игрокам Есть довольно интересная категория багов в играх, которые формально багами являются, но игрокам они нравятся, и они, наоборот, называют багом “нормальное поведение” и строчат про него репорты про криворуких погромистов. Там, где программист хорошо и физически корректно сделал свою работу, игрок видит ошибку своего восприятия игры, не физики, а именно восприятия.Представьте самый обычный платформер, в котором персонаж бежит по платформе, приближается к краю и должен прыгнуть на следующую. Если вы сделаете правильную обработку прыжка в этом месте в стиле “персонаж стоит на земле - можно прыгать, персонаж на земле не стоит - прыгать нельзя”: if (IsGrounded() && JumpPressed()) then Jump(), то c точки зрения “корректной” физики здесь будет не к чему …
Читать целиком