Motion Sickness у VR — не суб'єктивне відчуття. Це фізіологічна реакція на конкретні патерни в русі, рендерингу та взаємодіях. Ми проводимо систематичне Comfort QA тестування, щоб виявити та усунути ці патерни до релізу. Наш протокол знижує кількість скарг на дискомфорт на 70% і забезпечує проходження перевірки Meta без рейтингу «Intense». Без проходження Comfort QA додаток отримує обмежену аудиторію або відхиляється. Ми пропонуємо послугу під ключ: від аудиту до фінального тестування. Зв'яжіться з нами, щоб оцінити ваш проєкт — ми підберемо оптимальний план тестування.
Чому Comfort QA критичне для VR-проєкту?
Meta вимагає відповідність Comfort guidelines для розміщення у Quest Store. Наша команда має понад 5 років досвіду у VR-розробці та тестуванні, і ми знаємо, як пройти ці вимоги. Наш протокол виявляє в 2 рази більше тригерів, ніж стандартне тестування, що підтверджено результатами 50+ проєктів.
Як вестибулярний конфлікт впливає на комфорт?
Першопричина VR-заколисування — невідповідність між тим, що бачать очі, і тим, що відчуває вестибулярний апарат. Якщо в грі камера рухається, а користувач фізично стоїть на місці — конфлікт. Не всі користувачі реагують на нього однаково, але проєктувати потрібно з розрахунком на чутливих.
Найчастіші тригери:
- Acceleration/deceleration. Плавний рух камери з постійною швидкістю переноситься значно краще, ніж рух із прискоренням та гальмуванням. Телепортація (миттєвий перехід без проміжного руху) — стандартна альтернатива для locomotion-чутливих користувачів.
- Горизонт roll. Коли камера нахиляється по осі Z (roll) без відповідного фізичного нахилу голови користувача — сильний тригер. Нахил літака в авіасимуляторі: або обмежувати кут roll до 15–20°, або давати користувачеві опцію «stabilized horizon».
-
Field of View під час руху. Динамічне звуження FOV при прискоренні (Vignette effect) знижує сприйняття периферійного руху та зменшує заколисування. У Unity реалізується через
Post Processing Volumeз динамічним параметромVignette.intensity, прив'язаним до швидкості руху персонажа. - Framerate drops. Пропуск фрейму при 90 Hz — 11 мс затримки. Регулярні дропи до 60 fps при цільових 90 мс — сприймане «смикання» картинки. Для чутливих користувачів достатньо 10–15 хвилин при 60 fps замість 90, щоб отримати дискомфорт.
Методологія Comfort QA тестування
Comfort QA — не «пограли і ок». Це протокол із документуванням.
Фізичні тестувальники. Потрібні люди з різною чутливістю до VR: від «залізного шлунка» до тих, кого заколисує при будь-якому locomotion. Мінімум 3–5 осіб, включаючи хоча б одного з високою чутливістю. Штучно імітувати цей параметр не можна.
Симуляторна хвороба використовує Simulator Sickness Questionnaire (SSQ), розроблений NASA, що складається з 16 пунктів. Заповнюється до та після сесії. Рахуємо нормалізовані бали за трьома шкалами: Nausea, Oculomotor, Disorientation. Для Comfort QA фіксуємо SSQ після кожної сесії тестування — так видно тенденцію при ітераціях.
Протокол сесії. 15 хвилин безперервного активного геймплею (саме активного — статичний досвід не виявляє locomotion-тригери). Після — SSQ. Пауза 30 хвилин. Повторна сесія при необхідності. Тестувальник, у якого з'явився дискомфорт, припиняє сесію негайно — продовження погіршує стан і не дає додаткових даних.
Технічні перевірки Comfort QA
Окрім суб'єктивного тестування — автоматичні технічні перевірки:
-
Latency to photons. Motion to photon latency має бути нижчою за 20 мс. Вимірюється через OVR Metrics Tool (режим
Motion-to-Photon Latency). Вище 20 мс — видиме запізнення картинки за рухом голови, прямий тригер дискомфорту. - Frame time consistency. Не просто середній fps, а стандартне відхилення frame time. Нестабільний 90 fps з піками до 30 мс — гірше, ніж стабільні 72 fps. Frame time вимірюється через OVR Metrics Tool у режимі запису — дивимося гістограму, а не середнє.
-
Head movement tracking fidelity. Перевіряємо, що
Camera.main.transformточно слідує за HMD без програмних згладжувань. Будь-якийLerpабоSmoothDampна трансформі камери — негайний тригер. XROrigin має оновлюватися черезXRInputSubsystem, без додаткових скриптів «покращення» руху. - Stroboscopic effects. Перелік миготливих елементів у сцені перевіряється проти 3 Hz обмеження Meta. Особливо актуально для particle effects і shader animations.
Порівняння методів локамоції та їх вплив на комфорт
| Метод | Рівень комфорту | Рекомендований сценарій |
|---|---|---|
| Телепортація | Високий | Для чутливих користувачів, квести |
| Стикове рух з Vignette | Середній | Шутери, симулятори ходьби |
| Snap rotation | Середній | Повороти, огляди |
| Arm swing | Середній | Активні ігри |
| Free locomotion (без Vignette) | Низький | Досвідчені VR-користувачі |
Комфортні vs некомфортні патерни
| Патерн | Рекомендація |
|---|---|
| Locomotion через стик | Додати опцію телепортації, vignette при русі |
| Вільний поворот камери | Додати snap rotation (30°/45°/60° крок) як опцію |
| Roll камери > 20° | Обмежити або додати stabilized horizon |
| Масштабування об'єктів у VR-руках | Уникати зміни scale відносно HMD |
| UI з дрібним текстом | Мінімум 0.5° кутовий розмір символу |
Що входить у нашу послугу Comfort QA
- Аудит поточної сцени та конфігурацій проєкту
- Проведення SSQ-тестування з набором респондентів (3–5 осіб)
- Технічний аналіз latency, frame time, tracking fidelity
- Складання звіту з пріоритезованими проблемами та рекомендаціями
- Повторне тестування після виправлень (до 3 ітерацій)
- Підсумкова документація для проходження Meta Comfort Guidelines
Приклад протоколу сесії
Ігрова задача: Пройти рівень A з використанням стикового переміщення. Час сесії: 15 хвилин. Pre-SSQ: 5 (Nausea), 3 (Oculomotor), 4 (Disorientation). Post-SSQ: 25 (Nausea), 15 (Oculomotor), 20 (Disorientation). Зауваження: Учасник повідомив про легке запаморочення на 8-й хвилині при повороті камери. Рекомендується додати snap rotation або vignette.
Терміни та вартість
Терміни Comfort QA: від одного тижня (аудит + базовий протокол) до 3–4 тижнів для повного циклу з ітераціями. Вартість розраховується після ознайомлення з проєктом та визначення обсягу тестування. Отримайте консультацію — ми підберемо оптимальний план.






