Pull to refresh
18
0
Send message

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

Reading time 9 min
Views 30K

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

Читать далее
Total votes 35: ↑35 and ↓0 +35
Comments 57

Нет HUD’а без добра: HUD в игровых интерфейсах

Reading time 9 min
Views 10K

В играх существует огромное количество интерфейсов: инвентарь, диалоги, меню крафта и торговли, лобби, карта, деревья прокачки персонажа и его экипировки и многие другие. Все они позволяют игрокам взаимодействовать с представленными через интерфейс механиками, которые создатели игры заложили в свой продукт. И в этой статье мы подробно разберем один из самых важных элементов игрового UI: HUD (heads-up display).

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

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

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

Читать далее
Total votes 26: ↑25 and ↓1 +24
Comments 13

Что за день! Какой чудесный день! Техдень

Reading time 5 min
Views 2.6K

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

Пожалуй, наиболее узнаваемый пример допуска такой свободы выражения — это правило 20%, выработанное в Google. В соответствии с ним, каждый сотрудник компании имеет право 20% рабочего времени — считай, один день в неделю — посвящать сторонним проектам, не связанным с основной деятельностью. Благодаря правилу 20% в свое время появились на свет такие проекты, как Gmail и AdSense, а также сотни мелких фичей, многие из которых ушли в open source. Вокруг этой методики раньше ходило много споров, но в самой Google она действует до сих пор, да и перенимали ее даже такие гиганты, как Atlassian и Apple — в последнем программа называется Blue Sky и позволяет сотрудникам на две недели отойти от своих обычных обязанностей в пользу чего-то нового. В LinkedIn это выродилось в программу InCubator, в рамках которой сотрудники могут пропитчить свой проект и в случае, если он получит «зеленый свет», заниматься им последующие три месяца.

У нас в Pixonic тоже есть похожая инициатива. Мы называем это техдни.

Читать далее
Total votes 20: ↑16 and ↓4 +12
Comments 4

Ты надизайнил, а мне делать: как наладить взаимодействие между отделами дизайна и разработки

Reading time 9 min
Views 6.8K

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

Эта статья написана по мотивам одноименного доклада, с которым я и моя сестра Алина выступали на конференции Talents in Games в декабре 2021 года. Я — дизайнер, сестра — разработчик, и уже четвертый год мы работаем в одной продуктовой команде. Сейчас наши команды хорошо ладят и научились решать конфликты, но путь к взаимопониманию и здоровым отношениям между дизайнерами и разработчиками для нас был непростым и довольно долгим.

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

Читать далее
Total votes 19: ↑19 and ↓0 +19
Comments 5

Вопросы о левел-дизайне: о чем молчат дизайнеры локаций

Reading time 16 min
Views 9.9K

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

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

Предыдущие статьи из цикла:

1. Левел-дизайн 101: язык разработки локаций
2. К ориентиру по хлебным крошкам, или базовые приемы левел-дизайна
3. Продвинутый левел-дизайн: киноприемы в играх, кор-луп и силуэты

Читать далее
Total votes 29: ↑29 and ↓0 +29
Comments 5

Как мы избегаем бинарных апдейтов и обновляем игру «на лету» с помощью DLC

Reading time 6 min
Views 4.5K

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

Всем привет, нас зовут Василий Мешкой и Владимир Махныткин, мы продюсеры в студии Whalekit. В этом совместном материале мы расскажем, как наша команда настроила рабочий процесс, чтобы обновлять Left to Survive на лету и не прерываться на бинарные апдейты. 

Читать далее
Total votes 19: ↑19 and ↓0 +19
Comments 12

Декомпозиция классов: подход к разнообразию игровых систем на примере D&D и гонок

Reading time 10 min
Views 7.9K

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

В своей работе я часто опираюсь на ресурсный подход к дизайну систем, описанный Эрнестом Адамсом (Ernest Adams) и Джорис Дорманс (Joris Dormans) в книге Game Mechanics: Advanced Game Design. Это дизайн в абстракциях, который представляет игру как экономическую систему. Подробнее с ним вы можете ознакомиться в книге или на Machinations.io

А под катом я расскажу про основы такого подхода и приведу практические примеры, как его применять в дизайне классов для игр любого жанра — на основе Dungeons & Dragons 3.5 и гонок, которые мне когда-то доводилось разрабатывать. 

Читать далее
Total votes 18: ↑18 and ↓0 +18
Comments 5

От хаоса к порядку: как легко интегрировать сервисы с помощью Enterprise Service Bus

Reading time 8 min
Views 17K

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

Чтобы упростить весь этот процесс, существует Enterprise Service Bus — архитектура, которая помогает навести порядок и облегчает межсервисное взаимодействие. 

Всем привет, меня зовут Даниил Солодухин, я программист в игровой студии ITT. В этом тексте я расскажу про особенности ESB, а также объясню, чем она полезна в работе.

Читать далее
Total votes 20: ↑19 and ↓1 +18
Comments 2

Наш мир нереален: для чего нужен геймдизайн филинга

Reading time 8 min
Views 5.2K

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

Например, филинг — казалось бы, в контексте игр довольно интуитивно понятная тема. Слово происходит от английского feel — «чувствовать» или даже «ощущать», ведь речь не о любви и ненависти, а о прямом вкладе сенсорных ощущений во впечатление от игры.

Но все-таки — что это такое? В чем заключается работа дизайнера филинга?

Меня зовут Игорь Журавлев, и я геймдизайнер филинга в Allods Team. И чтобы ответить на вопрос из предыдущего абзаца, мы рассмотрим, как понятие филинга вырастает из феномена игры и какое место занимает в структуре геймдизайна.

Читать далее
Total votes 19: ↑18 and ↓1 +17
Comments 5

Продвинутый левел-дизайн: киноприемы в играх, кор-луп и силуэты

Reading time 18 min
Views 10K

Всем привет! Пришло время третьей, кульминационной статьи цикла про левел-дизайн. Ранее мы уже говорили об общих терминах и принципах производства локаций, но многим хотелось более существенного deep-dive. Сказано — сделано. Приготовьте блокноты, потому что местами придется записывать!

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

Читать далее
Total votes 31: ↑31 and ↓0 +31
Comments 3

Consistent против Rendezvous — чем отличаются подходы для хэширования данных на сервере

Reading time 7 min
Views 11K

Всем привет, меня зовут Михаил Алексеев, я работаю программистом в студии ITT, пишу бэкенд на Java. Перформанс — это моя страсть, как и распределенные системы. Но еще больше я люблю, когда математика встраивается в перформансные цели и задумки.

В этом тексте я расскажу про разницу между Consistent и Rendezvous хэшированием, а также на примерах покажу, с какими проблемами мы сталкиваемся в работе.

Читать далее
Total votes 31: ↑31 and ↓0 +31
Comments 3

Модель игрового цикла: как устроены хорошие игры

Reading time 23 min
Views 21K

Потешу своё геймдизайнерское самолюбие и скажу, что у разработки игр и искусства много общего: ни та, ни другая область в достаточной мере не формализована и не изучена с научной точки зрения. Хотя попытки были: взять, к примеру, труд Иосифа Шиллингера «Математические основы искусств» из первой половины XX века.

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

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

Читать далее
Total votes 42: ↑40 and ↓2 +38
Comments 14

QA без рутины: как мы автоматизировали регрессионное тестирование

Reading time 8 min
Views 12K

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

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

Читать далее
Total votes 19: ↑18 and ↓1 +17
Comments 2

К ориентиру по хлебным крошкам, или базовые приёмы левел-дизайна

Reading time 8 min
Views 7.2K

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

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

Читать далее
Total votes 21: ↑21 and ↓0 +21
Comments 4

Случайные блуждания и цепи Маркова в геймдизайне

Reading time 12 min
Views 13K

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

Всем привет, меня зовут Лев, я геймдизайнер из WhaleKit. И в этой статье мы разберем две математические концепции: цепи Маркова и случайные блуждания. Сразу замечу, что статья скорее «поп», чем «науч», поэтому часть доказательств выведенных формул будет опущена. После теории мы перейдем к реальным кейсам, где эти инструменты могут пригодиться, например:

 1. Сколько сундуков откроет игрок, если из сундуков могут выпасть еще сундуки;
2. Сколько золота уйдет на прокачку меча, если меч может ломаться;
3. Какая вероятность победить в денежном поединке.

Читать далее
Total votes 44: ↑44 and ↓0 +44
Comments 5

Редизайн ивентового арта: поиск и разработка новых пайплайнов для улучшения контента

Reading time 8 min
Views 1.6K

Если долго играть в онлайновые мультиплеерные игры с одним и тем же набором контента, это кому угодно быстро наскучит. Хочется, чтобы что-то новенькое постоянно будоражило интерес. Для этого существует много способов, один из которых — игровые ивенты. Кто-то проводит их с определенной периодичностью, привязывая только к конкретным событиям, а кто-то постоянно: закончился один — тут же начался другой. Как это делаем мы.

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

Меня зовут Даша Карманова, и я UI-дизайнер в Pixonic. В этой статье мы с моим коллегой Андрееем Лузановым расскажем о том, как мы  на проекте War Robots провели редизайн ивентового арта — одной из самых емких категорий UI-контента в игре.

Мы обсудим:

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

Читать далее
Total votes 18: ↑18 and ↓0 +18
Comments 2

Левел-дизайн 101: язык разработки локаций

Reading time 9 min
Views 18K

Однажды, если мне не изменяет память, в Нью-Йоркском университете кто-то сформулировал определение геймдизайна как «мотивирование игрока на определенные действия». Хорошая формулировка. По аналогии с ней, про левел-дизайн я бы сказал так:

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

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

А теперь, когда у нас есть определение, разберемся в сущности левел-дизайна. 

Откуда возникла эта ниша? Что левел-дизайнер отдаёт в результате работы над локациями? В этом мы и будем разбираться дальше в этой статье. А вообще их будет целый цикл, в котором я постараюсь охватить всю базу этой области геймдизайна от самых основ до приемов AAA-сегмента.

Читать далее
Total votes 29: ↑29 and ↓0 +29
Comments 3

Stevedore — открытая, бесплатная и быстрая альтернатива Docker Desktop

Reading time 4 min
Views 22K

Эта история началась весной 2021 года.

Страдал от того, как медленно запускается Docker Desktop.

Страдал от того, сколько он ест оперативной памяти.

Страдал от того, что постоянно что-то ломалось при обновлениях.

Страдал от того, что на Windows Server надо устанавливать Docker через какой-то особенный механизм, не работающий через proxy и не работающий на Windows Server 2016. Причём в связи с тем, что Docker Inc. передала enterprise-сервис компании Mirantis, этот способ через какое-то время вообще перестанет работать. В результате вы получаете Docker, собранный из непонятно каких исходников. Всё, что про них известно — они точно не такие, как в Docker Desktop. Вообще, для инструмента, задача которого — просто скачать один единственный пакет и установить его, в трекере задач этого проекта на удивление много багов.

Страдал от того, что Docker Desktop прекратил поддержку Windows 10 LTSC 2019, которая продолжает поддерживаться Microsoft вплоть до 2024 года (а расширенная поддержка — аж до 2029).

И я спросил себя: а почему, за что, как так? Есть ли какая-то такая фундаментальная причина, по которой софт, решающий эту задачу, обязан доставлять столько неудобств? И не нашёл её. 

А потому подошел к проблеме по принципу: если тебя что-то не устраивает, сделай это лучше.

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

Я много работал с Docker-контейнерами под Windows и страдал.

Читать далее
Total votes 74: ↑72 and ↓2 +70
Comments 26

Как составить портфолио, чтобы устроиться художником в геймдеве

Reading time 6 min
Views 12K

Каким должно быть портфолио художника, который хочет работать в игровой студии? Что больше всего ценят рекрутеры и арт-лиды, сколько работ нужно показать и почему компания может отказать? Об этом на конференции TBD Pro: Art рассказали старший менеджер по подбору персонала в MY.GAMES Ольга Дёмина и креативный директор BIT.GAMES Антон Лунков.

Читать далее
Total votes 27: ↑27 and ↓0 +27
Comments 0

Custom Pod Autoscaler – сверхгибкое автоскалирование в Kubernetes

Reading time 8 min
Views 4.1K

Преимущества использования системы оркестрации контейнеров — удобство их развертывания, обновления и масштабирования. И одним из наиболее популярных таких инструментов является Kubernetes. 

Многие знают, что Kubernetes имеет встроенный механизм для автоскалирования подов — Horizontal Pod Autoscaling (HPA). Но что, если надо принимать решение с учетом множества факторов: суммы метрик, зависимости от количества готовых контейнеров, процента или доли доступных/недоступных подов или даже времени суток? А если эти показатели важны для нас все вместе? 

Мы в студии Whalekit смогли решить эту задачу. И отличным решением для этого стал Custom Pod Autoscaler (CPA).

Читать далее
Total votes 24: ↑24 and ↓0 +24
Comments 0
1

Information

Rating
Does not participate
Registered
Activity