Как стать автором
Обновить
210.04
Рейтинг

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

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

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

Cache pollution? Запасайтесь тестами

Программирование *C++ *Разработка игр *Алгоритмы *

Всем ведь приходилось заниматься улучшением производительности? Для игр особенно актуально, ну может какая-то три-в-ряд не страдает этим. Как обычно серебряной пули нет, начинаем со структур данных, алгоритмов, спускаемся ниже если не помогает, придумываем SoA, AoS шаблоны. Если проблема не решается, подтягиваем профайлеры и предметно разбираем узкие места, но все чтобы мы не делали зачастую таким узким местом всегда будет "железо". Можно сколько угодно оптимизировать другие места, но CPU c его гигагерцами будет простаивать 90% времени если его неправильно "кормить" данными. Одной (только одной из проблем) проблемой организации эффективной работы с данными будет меньше, если знать и уметь работать с кэшами разных уровней. Тут на вики описано, как "на пальцах" быстренько убить перф на обходе массива, простого и общего решения для такого обхода нет. Можно и дальше увеличивать размер кэша, что собственно и делают (гдето здесь на хабре была новость, что Интел при переходе на L1 кэш размером 32кб, заново спроектировал блок доступа к нему, сорян не нашел ссылку), но это дорого, неэффективно на масштабах современных процов, и всегда найдутся данные, которые этот кэш отравят, опять. Интересно как починить? го под кат...

Читать далее
Всего голосов 22: ↑22 и ↓0 +22
Просмотры 2.1K
Комментарии 7

Новости

Телепортация игрока в Unity с OpenXR

Блог компании OTUS Разработка игр *C# *Unity *
Tutorial

Продолжим серию статей про OpenXR. В конце концов получим контроллер игрока, обладающий базовыми навыками — перемещением, поворотом и взаимодействием с объектами. В этой же мы сделаем телепортацию игрока и его поворот.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 576
Комментарии 1

Советы по работе с префабами в Unity

Разработка игр *Unity *Разработка под AR и VR *

Всем привет! Меня зовут Григорий Дядиченко, и я технический продюсер. Сегодня хотелось бы обсудить работу с префабами, их организацию и несколько советов по тому, как работать с префабами и с вариантами. Насобирав несколько шишек на проектах у меня сформировалось некоторое число типовых проблем и советов при неправильной организации. Если хотите сделать работу с префабами удобнее, добро пожаловать под кат!

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 917
Комментарии 5

Производство креативов для мобильной игры с нуля

Блог компании Lightmap Разработка игр *Медийная реклама *Управление продуктом *Продвижение игр *

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

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

Читать далее
Всего голосов 28: ↑27 и ↓1 +26
Просмотры 1.6K
Комментарии 1

Как привлечь первых пользователей в свою игру или приложение

Блог компании Timeweb Cloud Разработка игр *Монетизация мобильных приложений *Продвижение игр *

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

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

  1. Условно-бесплатное

    1.1. App Store Optimization;
    1.2. Социальные сети;
    1.3. Реферальные программы и приглашения.
  2. С разовыми инвестициями

    2.1. Инфлюенсеры;
    2.2. PR + пресса.
  3. Платное привлечение

    3.1. Реклама в соцсетях VS контекстная реклама;
    3.2. Платформы роста (отзывы про 4 самых популярных).

Ещё я веду канал в Telegram GameDEVils и блог на Substack , делюсь там материалами про геймдизайн, разработку и историю игр.
Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 2.9K
Комментарии 8

Пространство для маневра в Celeste

Блог компании OTUS Разработка игр *Дизайн игр *
Перевод

Привет всем! Изначально это был тред в Твиттере от 12 марта 2020 года за моим авторством. Я уже давно собирался сделать резервную копию в более читабельном и доступном формате, и вот сегодня я наконец-то почувствовал, что этот день настал.

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

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 382
Комментарии 2

Пишем на Rust игры для Unreal Engine

Разработка игр *Rust *Unreal Engine *Игры и игровые консоли
Перевод
image

Ссылки



Введение


Несколько месяцев назад я задался вопросом: что, если написать игру на Rust, но в качестве рендерера использовать Unreal? Поразмыслив, я пришёл к выводу, что раскрытие рендерера Unreal языку Rust при помощи FFI (Foreign function interface) языка C потребовало бы гораздо больше усилий, чем мне хотелось. Но что, если просто надстроить систему на Unreal? Я смогу просто перемещать акторов (gameobject из Unreal) при помощи Rust. Эта задача показалась гораздо более приемлемой, поэтому я приступил к работе.

Спустя неделю я раскрыл несколько функций, позволявших получать ввод, задавать и считывать позицию актора. Благодаря этому я наконец мог перемещать персонажа в Unreal.
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Просмотры 5.1K
Комментарии 6

Секретики Unity3d. Зачем нужен флаг STARTER_ASSETS_PACKAGES_CHECKED в стартовых ассетах

.NET *Разработка игр *C# *Unity *

Кто устанавливал офицальные ассеты от Unity "Starter Assets - Third Person Character Controller" или "Starter Assets - First Person Character Controller" возможно замечал что в настройках проета (Project settings -> Player -> Other settings -> Script Compilation) появляется флаг STARTER_ASSETS_PACKAGES_CHECKED, но зачем он нужен? Давайте разбираться.

Читать далее
Всего голосов 4: ↑2 и ↓2 0
Просмотры 927
Комментарии 7

Разбираем успех Fortnite: часть 1 — психология и UX

Блог компании OTUS Разработка игр *Дизайн игр *
Перевод

Бывший UX-директор в Epic Games поделится с нами в этой статье о том, как устроен мозг игрока и как эти знания были использованы в разработке Fortnite.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 2.3K
Комментарии 4

StbSharp: история ненужного проекта

.NET *Разработка игр *C *C# *Unity *
Из песочницы

В этой статье я бы хотел рассказать о своем хобби проекте под названием StbSharp.

Итак, в 2016 году мне пришла в голову весьма банальная идея - сделать собственный игровой кросс-платформенный движок на C#. И я озаботился поиском кросс-платформенной же библиотеки для загрузки картинок. Внезапно выяснилось, что подходящей просто не существовало. Было множество платформо-зависимых решений(напр. System.Drawing). А так же имелась SixLabors.ImageSharp. Но она была в состоянии ранней альфы. Мне же хотелось работать с решением, проверенным временем. Так я пришёл к идее портировать stb_image.h (очень популярной в геймдеве single-header библиотеки для загрузки картинок) на C#.

"А разве не легче было написать биндинги для нативной библиотеки? Хоть для той же stb_image?",- задаст справедливый вопрос читатель. Да, легче. И правильнее. О чём, собственно, и говорит заголовок этой статьи. Конечно, использование биндингов доставляет некоторые неудобства в плане того, что необходимо доставить соответствующий нативный бинарник на устройство конечного пользователя. Однако эти неудобства с лихвой окупаются достоинствами. А именно лучшим перформансом и портируемостью.

Однако, проект показался мне столь интересным, что я проигнорировал эти справедливые возражения.

Читать далее
Всего голосов 34: ↑34 и ↓0 +34
Просмотры 5K
Комментарии 23

Недельный геймдев: #85 — 4 сентября, 2022

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

Из новостей: создатели Crypt of the NecroDancer начнут издавать игры других инди-разработчиков, Sony купила Savage Game Studios, Google добавила сторонние способы оплаты в Play Store для ряда стран.

Из интересностей: «Если ты не можешь загуглить это, то не используй» — про разработку EVE Online, порт Another World под Linux на R, документалка о том, как Disco Elysium переводили на русский язык, доклад про VFX в Returnal, реалистичная версия LoFi Girl в Blender и UE5.

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 2.5K
Комментарии 1

Какие технологии, процессы и решения мы используем при разработке на Unreal Engine 4 — опыт Allods Team

Блог компании MY.GAMES Разработка игр *Unreal Engine *Игры и игровые консоли

Всем привет, меня зовут Виктор Щепкин, я работаю Team Lead’ом в студии Allods Team. В этом тексте я расскажу про особенности работы с Unreal Engine, а также подробно опишу, какие решения и процессы мы используем при разработке проектов:

как мы применяем Unreal Engine Modules и Plugins;

cross-sharing технических решений;

про стандартизацию и валидацию данных.

И многое другое
Всего голосов 26: ↑26 и ↓0 +26
Просмотры 3.8K
Комментарии 5

Flutter Flame: ускоряем в 32 раза работу со столкновениями

Разработка игр *Алгоритмы *Разработка под Android *Dart *Flutter *

Как я уже писал ранее, на FPS в Flame в основном влияют операции, производимые на CPU. Если в вашей игре достаточно много взаимодействующих объектов, то одной из самых дорогих операций будет определение столкновений. Настолько дорогой, что на экране performance-метрики она закроет собой любые другие неоптимизированные участки.

Сами авторы Flame отлично осознают, что их алгоритм – не идеальный, а просто «дающий достаточную производительность». Достаточна она, видимо, для случаев, когда у вас всего объектов 10, не более. Если же у вас что-то более сложное – тогда приятного чтения!

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 1.2K
Комментарии 0

Надгробья современного геймдева. Идеальная модерация

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

Сэкономим для Винни-Пуха время: идеальная модерация в многопользовательских видеоиграх не возможна.
Независимо от выбранной цели (и методов), идеальная модерация ОБЯЗАТЕЛЬНО будет наступать на все доступные мозоли либо "бизнесу", либо игрокам, либо бедным замороченным людям, на которых обязанности модераторов будут возложены.
Всё.

А почему так?

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

53к символов... Винни, не лезь в эту нору!
Всего голосов 9: ↑8 и ↓1 +7
Просмотры 2K
Комментарии 5

Первые шаги в Unity с OpenXR

Блог компании OTUS .NET *Разработка игр *C# *Unity *
Tutorial

Привет! Сегодня мы создадим VR-проект на Unity, работающий по стандарту OpenXR. 

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

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 1.1K
Комментарии 3

Внеочередной урок по Godot 4.0: пиксели и RPG (часть первая, в которой человечек научился ходить)

Разработка игр *Godot *
Из песочницы
Tutorial

Не являюсь гуру Godot, не претендую на абсолютные знания и не имею докторскую степень по чему-либо. Всячески приветствую советы по улучшению кода и прочим идеям. Следовать урокам исключительно на свой страх и риск.

Урок Серия уроков будет посвящена созданию простой RPG в 1bit пиксель-арт стиле, где я постараюсь рассмотреть всю ту боль и страдания, с которыми обычно встречаются новички - джиттер, расплывающиеся пиксели, борьба с разрешением и прочее.

Рисуем сову
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 2.4K
Комментарии 5

Как команда из Татарстана создала IT-настолку «ProfIT»

Разработка игр *Управление персоналом *Продвижение игр *
Recovery mode

В большинстве IT-компаний, где я работала, настолки были важной частью корпоративной культуры. Стандартно раз в неделю за «Катаном» и «Имаджинариумом» собираются многие команды. Самая популярная стратегия – приумножить богатства, стать успешным в бизнесе, сельском хозяйстве, управлении королевством. А что, если создать игру для айтишников про них самих — настолку, имитирующую их собственные карьерные пути? Такая мысль посетила одну креативную команду из Татарстана, и они создали настольную игру ProfIT.

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Просмотры 2K
Комментарии 15

Недельный геймдев: #84 — 28 августа, 2022

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

Из новостей: недельный геймдев в виде рассылки, в Godot 4.0 уберут визуальный скриптинг (останется только в 3.x), Масахиро Сакураи, известный по Kirby и Super Smash Bros, запустил канал на YouTube.

Из интересностей: советы и практики планирования, почему ИИ в F.E.A.R. по-прежнему остается лучшим в шутерах от первого лица, список кастомных игровых движков, использование TikTok’а, чтобы получить 120 миллионов просмотров и 60 тысяч добавлений в список желаемого Steam, симуляция тропической погоды в Far Cry 6.

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Просмотры 2.2K
Комментарии 1

Steam Deck — тетрис «на стероидах»

Блог компании Pixonic Разработка игр *Компьютерное железо Игры и игровые консоли

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

Читать далее
Всего голосов 35: ↑35 и ↓0 +35
Просмотры 8.8K
Комментарии 51

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

Работа