Яка найкраща формула head-bob?


15

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

Приклад наївної формули боб, застосованої до осі вгору:

http://www.wolframalpha.com/input/?i=abs%28sin%28x%29%29


... чи варто розглянути можливість збереження точки в просторі однаковою, але регулюючи висоту висоти камери?
tenpn

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

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

8
Відповідь Snarky: Одне, що я можу вимкнути;)
Ендрю Рассел

2
З мого особистого досвіду, боління в голові завжди дратує, якщо не нудить. Я завжди вимикаю це.
Жорен

Відповіді:


19

Гах! Не змінюйте висоту. Зовсім. Якщо ви не хочете, щоб гравець відчував, що вони грають у нетверезому стані та б'ється на камеру. Ваш фокус визначається контролем гравця, не змінюйте його.

Я навіть не впевнений, що це вимагає «формули» - я думаю, вам краще послужити деяким передбачуваним випадковим рухом. Погляньте на низькочастотний шум Перліна, щоб породжувати свої зміщення кривих. Будь-яка проста формула, яку ви можете придумати, буде достатньо передбачуваною, що переможе всю точку бобу - щоб створити враження, що аватар не рухається штучно. Ви можете комбінувати триггерні функції, щоб отримати псевдовипадкову згладжену криву, але вам набагато краще використовувати шум Перліна, який ідеально підходить для такої роботи.

Я не знаю жодного дослідження «хорошого» погладжування голови, але я б сказав, якщо ви збираєтеся це зробити, вам потрібно зробити серйозні холодні тести та ітерації. Ви (реалізатор) не в змозі оцінити ефективність вашої реалізації, тому що дуже швидко після запуску ви станете гіперчутливими до кількості та способу роботи. Те, що може бути хорошим, ви нав’язните і відкинете.

Найбільше тримайте рух тонким. Спокуса при впровадженні полягає в тому, щоб підкрутити фактор "bob" до тих пір, поки це не помітно, тому що ви хочете, щоб це набуло чинності. Це не добре. В ідеалі гравець навіть не помічає бобінгу - якщо ви запитаєте їх після тестування, чи помітили вони, коли вони бігали, зважаючи на точку зору, я думаю, що вони повинні сказати «ні». Призначення бобінгового руху в оглядовій точці - зробити так, щоб рух відчував себе природним, щоб вам не здавалося, що ви ковзаєте як камера на верхівці колісного коляски. Задній мозок гравця підбере штучну природу наївного втілення, але для того, щоб задурити сприйняття, знадобляться лише невеликі тонкі варіації.


1
Останній пункт може бути застосований у багатьох сферах розвитку, наприклад, AI. Це хороший момент.
tenpn

8

Причин нудоти багато. Ось екологічні фактори, які слід врахувати:

  1. Чим більше екран, тим більше шансів викликати нудоту.
  2. Чим ближче користувач сидить до екрану, тим більше шансів викликати нудоту.
  3. Чим темніше приміщення, тим більше шансів викликати нудоту.
  4. Сторонні глядачі - неінтерактивні пасажири - частіше відчувають нудоту, ніж ті, хто має певну форму контролю над грою.
  5. Злегка перекошене положення перегляду зазвичай викликає більше нудоти, ніж положення прямого перегляду або різко перекошене положення перегляду. (Зазвичай це взаємодіє з №4 вище, що робить ще гірше для неінтерактивних глядачів)

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

Пам'ятайте, що нудота викликана незгодою між тим, що бачать очі, і тим, що відчувають внутрішні датчики руху вашого тіла у внутрішніх вухах; чим більше контексту, коли ваш мозок отримує, що рух, який бачать очі, не є власне рухом (скажімо, перебуваючи в добре освітленій кімнаті з великою кількістю нерухомих предметів, видно за екраном), тим менше буде нудоти.

Що стосується самої поведінки камери, то будь-який автоматичний ритмічний рух може легко викликати нудоту. Ротації найгірші (особливо нахильні), але навіть ритмічні переклади збоку або вгору та вниз викличуть нудоту у багатьох (але не у всіх!) Гравців.

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

Як правило, чим повільніше цикл і чим менший рух камери по цьому циклу, тим менше буде нудоти у сприйнятливих до нього гравців.

Крім того, різкі зміни швидкості особливо погані для нудоти; будь-який ритмічний рух, який ви вирішили використовувати, повинен бути плавним через всю його дугу, а не «підстрибувати» вздовж будь-якої осі, як це робить ваш прикладний графік.

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


Які ваші джерела?
Анко

5

Я просто скину на стіл дві додаткові ідеї.

Перш за все, ви коли-небудь бачили камеру першої особи Mirror's Edge в дії? Дивіться це посилання, якщо ви ще цього не зробили. Я не впевнений у висоті, але відбувається досить багато змін рулону , і я думаю, що це виглядає дуже динамічно та свіжо. Тож це лише можливість для вас також розглянути можливість включення у формулу, якщо вам подобається відчуття, яке воно дає.

Ще одна ідея, яку я не знаю, чи використовує будь-яка гра, - це взяти спрощену анімаційну 3D-модель прогулянки персонажа, і навіть якщо ви не будете рендерінг, ви все одно можете збирати з неї інформацію про положення голови або навіть прикріплювати свою камера до кістки голови. І якщо у персонажа рух очей незалежний від його голови, ви можете навіть включити обидва . Я не знаю, як це могло б виглядати в дії, але я вважаю, що він повинен вести себе дуже реалістично. Але є ймовірність, що це може виглядати надзвичайно нудно :-)


2

Система зору людини включає деяке (досить складне) управління зворотним зв'язком, яке дозволяє очам відслідковувати відносний рух предметів. Кінцевий ефект цього полягає в тому, що, якщо ви зосереджуєтесь на певній точці, зображення цієї точки продовжуватиметься проектувати приблизно в тому самому місці на сітківці, незважаючи на рух точки і вашої голови. (Як проста демонстрація: зосередьтеся на слові на цій сторінці. Перемістіть голову. Зверніть увагу, як жорстоко рухати головою, перш ніж слово почне розмиватися і зміщуватися з центру вашого поля зору.)

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

Повністю усунути нудоту неможливо. Захворювання при русі, як правило, є реакцією на невідповідні сенсорні дані. У транспортному засобі непослідовність полягає в тому, що інерціальна інформація з внутрішнього вуха вказує на рух, тоді як зорові підказки вказують на те, що ви нерухомі. З головою боб, зворотне буде правдою.


0

Я напевно рекомендую не змінювати висоту камери, оскільки облицювання камери знаходиться під контролем гравця. Зазвичай використання функції синуса для тонкого відхилення по вертикалі / осі Y зазвичай працює добре.


Ну добре в моєму дуже специфічному контексті, гравець не контролює висоту камери під час руху. Вони, по суті, подорожують вниз по сплайну, тому я вільний возитися з тензом, якщо мені подобається.
tenpn
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.