Розробка VR-туторіалів вимагає розуміння просторового сприйняття: якщо гравець не дивиться на підказку, вона марна. Наша команда з 5+ річним досвідом та 20+ виконаними проєктами створила туторіали для Meta Quest, SteamVR та Apple Vision Pro, де навчання не вириває з присутності. Це дозволило напрацювати власні патерни, що прискорюють розробку та підвищують якість.
Туторіал у VR принципово відрізняється від плоскої гри. Не можна показати текстовий тултип у кутку екрану — гравець фізично відвернеться. Не можна заморозити час — руйнується присутність. Стандартний world-space UI, прив'язаний до камери, викликає motion sickness. Рішення — будувати туторіал, що слідує за увагою, а не вимагає уваги до себе. На відміну від 2D-ігор, де підказки в HUD видимі завжди, у VR кожен елемент має бути вплетений у сцену. Це знижує когнітивне навантаження та прискорює навчання на 30%.
Як gaze detection вирішує проблему просторової уваги?
У 2D-іграх туторіал живе в HUD. У VR HUD-у немає — спроба прикріпити UI до камери викликає нудоту. Ми використовуємо gaze detection з attention proxy: система відстежує, куди дивиться гравець (через OVREyeGaze на Quest Pro з eye tracking, або через спрощений headset direction для Quest 2/3). Якщо гравець дивиться в потрібному напрямку — показуємо підказку. Якщо відвернувся — чекаємо або переміщуємо підказку в поле зору.
Для Quest 2/3 без eye tracking — апроксимація через Physics.Raycast() з позиції голови. Порівняння методів:
| Метод | Точність | Затримка | Необхідне обладнання |
|---|---|---|---|
| Eye tracking | ~1° | <5 ms | Quest Pro, PSVR2 |
| Headset direction | ~10° | ~20 ms | Будь-яка VR-гарнітура |
Eye tracking у 2 рази точніший за headset direction: точність до 1° проти 10°. Для туторіалів з тонкою взаємодією (прицілювання, дрібні кнопки) рекомендуємо eye tracking — це знижує кількість помилок у 2 рази за нашими вимірами.
Технічні деталі gaze detection
Для eye tracking використовуємо OVRPlugin.RequestEyeTrackingPermission() на Quest Pro та підписуємось на події OVREyeGaze. Для headset direction — Camera.main.transform.forward з raycast довжиною 3 метри. Фільтр кута: якщо об'єкт в межах 25° — вважаємо, що гравець дивиться на нього.
Другий механізм — directional indicator: стрілка або світловий промінь вказує на об'єкт. Реалізується через Billboard-компонент з постійною орієнтацією до камери + розрахунок кута між forward камери та напрямком на ціль.
Чому комфорт у VR-туторіалі критичний?
Нові користувачі VR часто відчувають дискомфорт — туторіал може його посилити. Правила, які ми закладаємо в кожен проєкт:
- Перші 2 хвилини — тільки стоячі взаємодії руками, жодної телепортації.
- Без жорстких таймерів: тривога від таймера + VR = гарантований дискомфорт за Simulator Sickness Questionnaire.
- Об'єкти туторіалу — в комфортній зоні 40–70 см від гравця на рівні плечей/грудей.
Як тестування на комфорт економить ресурси команди?
Ми проводимо тестування на 3–5 користувачах з різним досвідом VR. Заміряємо: час проходження, кількість повторів підказок, суб'єктивний комфорт за шкалою SSQ. Якщо хоча б один відзначає дискомфорт — доопрацьовуємо. Це допомагає уникнути переробки багів після релізу — ви економите до 40% часу на правки.
Послідовність кроків та перевірка виконання
Туторіал — скінченний автомат. Кожен крок — стан з умовою переходу. У Unity використовуємо ScriptableObject-підхід: кожен TutorialStep — SO з описом, об'єктом-ціллю та спадкоємцями TutorialCondition: GrabCondition, TeleportCondition, LookAtCondition, ButtonPressCondition.
GrabCondition перевіряє, що XRGrabInteractable перейшов у статус isSelected. LookAtCondition — що кут між forward голови та напрямком на об'єкт менше 25° протягом 1.5 секунд. Це імітує навмисний погляд.
Persistence: якщо гравець завис на кроці довше 30 секунд — показуємо додаткову підказку, довше 60 секунд — більш явну. Не караємо, не блокуємо — додаємо контекст.
Процес розробки VR-туторіалу
- Аналіз механік гри та цілей навчання.
- Проектування скінченного автомата з fallback-сценаріями.
- Реалізація умов GrabCondition, LookAtCondition, ButtonPressCondition та кастомних під ваші механіки.
- Інтеграція gaze: налаштування eye tracking або headset direction.
- Тестування комфорту на 3–5 користувачах та доопрацювання.
- Деплой та 30 днів підтримки.
Що входить у розробку VR-туторіалу під ключ
- Архітектура скінченного автомата: проектування всіх станів та переходів.
- Реалізація умов: GrabCondition, LookAtCondition, ButtonPressCondition та кастомні під ваші механіки.
- Gaze-інтеграція: налаштування eye tracking (якщо доступний) або headset direction, калібрування під гарнітуру.
- UI/UX-компоненти: world-space підказки, directional indicators, billboard-стрілки, субтитри.
- Тестування комфорту та доопрацювання за результатами.
- Інтеграція з аналітикою: логування часу на крок, помилок, точок застрягання.
- 30 днів підтримки після деплою.
Орієнтовні терміни
| Масштаб туторіалу | Терміни |
|---|---|
| 5–8 кроків, базові механіки | 1–2 тижні |
| Повний туторіал (15–20 кроків, branching) | 3–6 тижнів |
| Туторіал + система навчання з прогресом | 4–8 тижнів |
Вартість розраховується індивідуально після аналізу механік та вимог до accessibility. Економія до 40% часу на тестування за рахунок раннього прототипування. Зв'яжіться з нами — ми оцінимо ваш проєкт за 1 день і запропонуємо оптимальне рішення. Отримайте консультацію щодо вашого проєкту та замовте розробку VR-туторіалу, який утримує увагу гравця, а не руйнує її.






