Розробка UX/UI для ігор під ключ: від HUD до інвентаря

Наша компанія з розробки відеоігор веде незалежні проекти, спільно з клієнтом створює ігри та надає додаткові операційні послуги. Досвід нашої команди дозволяє нам охопити всі ігрові платформи та розробити приголомшливий продукт, що відповідає баченню клієнта та перевагам гравців.

Від імерсивних застосунків до ігрових світів і 3D-сцен

Наша виділена команда для VR/AR/MR-розробки, Unity-продакшну і 3D-моделювання та анімації — з власними кейсами і презентаціями.

Відвідати персоналізований сайт
Показано 1 з 1Усі 242 послуг
Розробка UX/UI для ігор під ключ: від HUD до інвентаря
Середній
від 1 тижня до 1 місяця
Часті запитання

Наші компетенції

Які етапи розробки гри?

Останні роботи

  • image_games_mortal_motors_495_0.webp
    Розробка гри для компанії Mortal Motors
    1434
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    Покрокова стратегія у фентезі сеттингу With Fire And Sword
    972
  • image_games_second_team_604_0.webp
    Розробка ігри для компанії Second term
    586
  • image_games_phoenix_ii_606_0.webp
    3D-анімація – тизер для гри phoenix 2.
    651
  • image_training-quizzes_kids_shopping_quiz_614_0.webp
    Навчальна вікторина для дітей «Покупки в магазині»
    13

Розробка UX/UI для ігор, які витримують жорсткі вимоги продуктивності та зручності — це окрема інженерна дисципліна. На прикладі HUD шутера: інформація повинна зчитуватися бічним зором, не відволікаючи від перестрілки. Інвентар у RPG відкривається на кілька секунд, але запам'ятовується надовго. Різні завдання — одне рішення: інтерфейси, які працюють де завгодно, від мобільних пристроїв до консолей. Наш підхід знижує кількість draw calls на 20-30% порівняно з типовою реалізацією, економлячи до 15% часу на промальовування кадру.

Чому ігровий UI — це окрема дисципліна?

На відміну від веб-дизайну, ігровий інтерфейс працює в реальному часі. Кожен зайвий draw call може спричинити просадку FPS. Ми враховуємо це на етапі проєктування: мінімізуємо кількість Canvas, використовуємо batching та правильні атласи шрифтів. 10+ років досвіду в геймдеві дозволяють нам передбачати вузькі місця. Наприклад, типова помилка — використання одного Canvas для всього UI, що призводить до перерисовки сотень елементів при оновленні таймера. Рішення — дроблення Canvas.

Як ми забезпечуємо продуктивність інтерфейсів?

Canvas з Overlay на мобільному

Класична проблема: Unity перерисовує весь Canvas при зміні будь-якого дочірнього елемента. Рішення — розділяти Canvas на статичні та динамічні частини, ставити компонент Canvas на часто оновлювані елементи окремо. Це зменшує кількість ребілдів Canvas у 3–4 рази.

Масштабування під різні співвідношення сторін

Canvas Scaler в режимі Scale With Screen Size з Reference Resolution 1920×1080 і Match = 0.5 — стандарт, але не панацея. На iPad (4:3) або складних пристроях UI роз'їжджається. Ми проставляємо якорі в RectTransform усвідомлено для кожного елемента. Для нестандартних роздільних здатностей додаємо додаткові правила через Layout Group.

TextMeshPro і Dynamic Font Atlas

Якщо у грі кілька мов з кирилицею, грецькою, арабською — одного атласу не вистачить. При рантаймовому додаванні символів Unity перепекає атлас, що дає фриз на 2–5 мс. Для критичних екранів використовуємо статичні атласи з явно заданим набором символів. Це повністю усуває фризи, пов'язані з атласом.

Продуктивність анімацій

Анімації UI часто стають вузьким місцем. DOTween і LeanTween працюють з трансформаціями напряму, минаючи Animator Controller, що знижує навантаження на CPU. Порівняння: анімація масштабу кнопки через Animator займає ~1.2 мс, через DOTween — 0.4 мс. На 20 одночасно анімованих елементах різниця стає критичною. Замовте розробку інтерфейсу з урахуванням цих оптимізацій.

Як виміряти продуктивність UI?

Використовуємо Unity Profiler: дивимося на CPU Usage → Canvas.BuildBatch і Canvas.SendWillRenderCanvases. Норма для мобільних пристроїв — не більше 2 мс на UI-рендеринг. Таблиця цільових показників:

Категорія FPS budget UI budget
Mobile (60fps) 16.7 мс 2-3 мс
Console (30fps) 33.3 мс 4-5 мс
PC (60fps) 16.7 мс 3-5 мс

Перевищення UI budget веде до stutter.

Як проєктуємо ігровий UI

HUD: інформація без відволікання

Хороший HUD робить інформацію доступною, не вимагаючи фокусу. Працюємо за принципом ambient інформації: HP-бар змінює колір при зменшенні, пульсує при критичному рівні. Для кожного елемента визначаємо частоту оновлення: HP — кожен хіт, міні-карта — 0.5 сек, таймер — кожну секунду. Update з накопичувачем замість прямого оновлення кожен кадр знижує навантаження на Canvas rebuild.

Екрани меню та навігація

Навігація через NavigationGraph в Unity UI — для геймпад та клавіатурної підтримки. Прописуємо explicit navigation для кожної кнопки, не залишаємо на automatic. Transition-анімації — через DOTween або LeanTween, не через Animator при простих випадках. Для складних sequence-анімацій використовуємо Animator з AnimationEvent.

Інвентар та drag-and-drop

Drag-and-drop реалізується через інтерфейси IBeginDragHandler, IDragHandler, IEndDragHandler. Основна проблема — поведінка при виході за ScrollRect. Керуємо подіями через EventSystem.current і розділяємо скролінг та перетягування по threshold'у. Віртуалізація довгих списків — через Pooling + ScrollRect, використовуємо ObjectPool<T> (вбудований з Unity 2021 LTS). Для консольної версії додаємо підтримку геймпада за допомогою EventSystem.

Що входить у роботу

  • UX-аудит існуючого UI або проєктування з нуля
  • Компонентна бібліотека у Figma з варіантами станів
  • Збірка в Unity з анімаціями та інтеграцією в геймплей
  • Адаптація під усі цільові платформи (iOS, Android, PC, консолі)
  • QA на пристроях: безпечна зона notch, різні щільності, співвідношення
  • Документація з реалізації та рекомендації з підтримки

Терміни та вартість

Етап Терміни
UX-аудит 3–5 днів
Дизайн у Figma 1–2 тижні
Реалізація в Unity 1–3 тижні
QA та адаптація 3–5 днів

Вартість розраховується індивідуально після аналізу обсягу та вимог до платформ. Простий HUD — від тижня, повний UI-кіт — від місяця. Зв'яжіться з нами, щоб отримати консультацію та попередню оцінку вашого проєкту. Гарантуємо прозорий процес та фіксовані терміни.

Докладніше про технічні аспекти читайте в офіційній документації Unity по Canvas та TextMeshPro.

Проектування механік: з чого починається чуйне керування

Перш ніж говорити про геймдизайн, зафіксуємо розмежування: геймдизайн — це не «придумати ідею». Придумати може будь-хто. Завдання — спроектувати систему правил, яка виробляє конкретний емоційний та поведінковий результат. Це інженерна дисципліна, тільки замість компілятора — людський мозок.

Перший біль: вам здається, що керування «дубове», а чому — незрозуміло. Найчастіше проблема не в коді, а у відсутності coyote time та jump buffering. Наприклад, у платформерах без coyote time гравець програє 20% спроб через відчуття «нечесної» смерті. Або в лінійному прискоренні, яке не дає відчуття ваги — замінюємо на криву початкового ривка з подальшим загасанням. Ми це виправляємо на етапі прототипу, скорочуючи подальші правки на 40%.

Окрема категорія — економіка. Без попередньої математичної моделі розвал настає через місяць після релізу. Тому ми починаємо з прогресії: лінійна, експоненціальна або поліноміальна. Наприклад, для RPG використовуємо поліном a * n^b з b=2.0, перевіряючи, скільки годин гравець витратить на кожен рівень. Це дає прогнозований час гри і дозволяє уникнути дисбалансу монетизації.

Які послуги з геймдизайну ми пропонуємо?

Повний цикл: від концепту до вивіреного білду. Під ключ — ви отримуєте геймдизайн-документ (GDD), таблиці балансу, прототип ключових механік на Unity/Unreal, і супровід аж до релізу. Гарантія якості — покрокове узгодження на етапі прототипу, щоб уникнути переробок.

Що входить в роботу (deliverables):

  • Документація: GDD, специфікації механік, наративні дерева, API для розробників
  • Таблиці балансу: прогресія, економіка, DPS-калькулятори
  • Прототипи: інтерактивні сцени з core loop (рух, бій, інвентар)
  • Конфігурація в рушії: ScriptableObject, DataTable, анімаційні події
  • Проведення плейтестів та ітерацій за метриками (утримання, монетизація, retention)

Оцініть ваш проект — зв'яжіться для розрахунку термінів. Підхід заснований на методології MDA та досвіді 50+ реалізованих проектів, більше 10 років на ринку. Наші замовники економлять від 2 до 3 тижнів на ітераціях завдяки чіткому процесу.

Як спроектувати бойову систему без помилок?

Бойова система — найдорожча помилка: на перший погляд проста, на ділі — пекло з edge cases. Розберемо melee combat.

Вибір методу hit detection

Hitbox — колайдери на зброї. Просто, але при швидких атаках виникає tunneling: зброя пролітає крізь противника за кадр. Рішення — Physics.CCD (Continuous Collision Detection), але це дорого. Raycast/spherecast — кастуємо промені вздовж траєкторії зброї. Точніше, менше залежить від fps. Ми віддаємо перевагу spherecast для action-ігор. Докладніше про методи — у статті про виявлення зіткнень.

Налаштування вікон атаки

Кожна атака — три фази: Startup, Active, Recovery. Довгий startup створює «важкі» удари. Короткий recovery дає агресивний стиль. В Unity аніматор кидає подію через AnimationEvent, код вмикає/вимикає hitbox. Типові таймінги для рукопашного бою: startup 200–400 мс, active 100–150 мс, recovery 300–500 мс. Зміна startup з 400 на 250 мс змінює відчуття з «важкий» на «середній» — це фіксується в метриках.

Побудова state machine

Персонаж — скінченний автомат. Базові стани: Idle, Moving, Jumping, Attacking, Hurt, Dead. Бізнес-логіку виносимо в C#-код, аніматор відповідає лише за переходи анімацій. Ієрархічні state machine (через Override Animator Controller) дозволяють вкладені підстани, не дублюючи переходи.

Чому математична модель економіки критична?

Економіку «на око» не роблять — виходить розвал через місяць після релізу. Базова прогресія: лінійна (нудно), експоненціальна (XP(n) = base * multiplier^n, multiplier 1.5–2.0), поліноміальна (a * n^b, b 1.5–2.5). Ми будуємо таблиці в Google Sheets за 2–3 дні, перевіряючи, скільки годин гравець витратить на кожен рівень.

Потоки валют

Принцип: кожна валюта — явне джерело (tap) і стік (sink). Приклад двовалютної системи:

М'яка валюта (золото) Тверда валюта (кристали)
Джерело Квести, вороги, щоденні нагороди Покупка, рідкісні досягнення
Стік Витратні матеріали, покращення, будівлі Пропуск часу, рідкісні предмети
Конвертація → кристали: ні → золото: так (однонаправлено)

Однонаправлена конвертація захищає монетизацію. Дисбаланс легко виявити за DPS і TTK: якщо TTK зброї вдвічі нижче за інші — воно стає meta. Ми виявляємо це на етапі прототипу, скорочуючи наступні правки на 40%.

Наратив та левел-дизайн: як навчати без тексту?

Environmental storytelling — розташування об'єктів, звуків, слідів — часто ефективніше за діалоги. Для діалогів використовуємо Ink (інтеграція з Unity). Ink-скрипти читає наративний дизайнер без програміста. Кожен рівень перевіряємо за принципом: гравець повинен зрозуміти механіку дією, а не за підказкою.

Інструменти в процесі

Завдання Інструмент
GDD Notion, Confluence
Баланс Google Sheets (формули, зведені)
Прототипи Unity 2022 LTS, Godot 4
State machine Miro, draw.io
Наратив Ink, Twine
Конфіги ScriptableObject (Unity)
Аналітика Firebase, GameAnalytics

Ітерація та плейтестинг: 2-тижневий цикл

Перший прототип завжди незручний — це норма. Наш цикл: плейтест кожні 2 тижні. Після — список змін з числами: «startup 400 мс → 250 мс». Думки без чисел не приймаються. Фіксуємо відчуття, змінюємо числа, повторюємо. Завдяки цьому середня економія бюджету на етапі ітерацій становить 15–20%.

Зв'яжіться для консультації — ми оцінимо терміни та бюджет вашого проекту. Отримайте прототип core loop за 3 тижні. Сертифіковані фахівці Unity/Unreal гарантують дотримання термінів.