Was ist die beste Head-Bob-Formel?

15

Was ist eine überzeugende, nicht krankmachende Formel, wenn man einen Punkt im Raum, eine Fahrtrichtung und eine Zeit seit dem Start voraussetzt, um eine Kopfbewegung zu simulieren? Was war in früheren Spielen erfolgreich? Wurde untersucht, welche Bobs am wenigsten krank machen?

Ein Beispiel für eine naive Head-Bob-Formel, die auf die obere Achse angewendet wird:

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

Tenpn
quelle
... oder sollte ich in Betracht ziehen, den Punkt im Raum gleich zu halten, aber die Neigung der Kamera anzupassen?
Tenpn
Interessante Frage. Eigentlich war es das erste Mal, dass ich daran dachte, dass Kopfbewegungen zu Übelkeit führen könnten. Normalerweise fühle ich mich bei keinem Spiel krank, aber ich habe Leute gesehen, die sich kein bewegtes Ego-Spiel ansehen können, ohne sich krank zu fühlen. Auch wenn ich mich nur umschaue, ohne zu gehen.
David Gouveia
Mein Vorschlag wäre wahrscheinlich, Leute beim Gehen und Laufen zu betrachten und zu versuchen, ein Muster in ihrer XY-Kopfbewegung herauszufinden. Ich glaube nicht, dass Tonhöhe normalerweise verwendet wird, wenn sich die Person nicht umschaut.
David Gouveia
8
Snarky Antwort: Eine, die ich ausschalten kann;)
Andrew Russell
2
Meiner persönlichen Erfahrung nach ist Kopfschwingen immer ärgerlich, wenn nicht gar krank. Ich schalte es immer aus.
Joren

Antworten:

19

Gah! Tonhöhe nicht ändern. Überhaupt. Es sei denn, Sie möchten, dass sich der Spieler betrunken fühlt und gegen die Kamera kämpft. Ihr Fokus wird von der Steuerung des Spielers festgelegt, ändern Sie ihn nicht.

Ich bin mir nicht mal sicher, ob es eine "Formel" rechtfertigt - ich denke, Sie wären mit einer vorhersehbaren zufälligen Bewegung besser bedient. Untersuchen Sie niederfrequentes Perlin-Rauschen, um Ihre Versatzkurven zu erzeugen. Jede einfache Formel, die Sie sich vorstellen können, ist so vorhersehbar, dass sie den gesamten Punkt des Bobs besiegt - um den Eindruck zu erwecken, dass sich der Avatar nicht künstlich bewegt. Sie können Triggerfunktionen kombinieren, um eine pseudozufällige geglättete Kurve zu erhalten, aber Sie sind mit Perlin-Rauschen, das für diese Art von Arbeit perfekt ist, weitaus besser dran.

Ich kenne keine Forschungsergebnisse zu 'guten' Kopfbewegungen, aber ich würde sagen, wenn Sie dies tun wollen, müssen Sie einige ernsthafte Kältetests und Iterationen durchführen. Sie (der Implementierer) sind nicht in der Lage, die Effektivität Ihrer Implementierung zu beurteilen, da Sie sehr schnell, nachdem Sie begonnen haben, überempfindlich gegenüber der Menge und Art des Bob werden. Was andere gut finden könnten, werden Sie besessen sein und ablehnen.

Am allermeisten halten Sie die Bewegung subtil. Die Versuchung bei der Implementierung besteht darin, den "Bob" -Faktor anzukurbeln, bis er sich bemerkbar macht, da Sie möchten, dass er sich auswirkt. Das ist nicht gut. Im Idealfall bemerkt der Spieler das Wippen nicht einmal - wenn Sie ihn nach dem Testen fragen, ob er beim Laufen ein Wippen seiner Sichtweise bemerkt hat, sollte er meiner Meinung nach nein sagen. Der Zweck einer wackelnden Bewegung im Blickpunkt besteht darin, die Bewegung natürlich wirken zu lassen, sodass Sie nicht das Gefühl haben, als ob Sie als Kamera auf einem Rollwagen herumrutschen. Das Hinterhirn des Spielers wird die künstliche Natur einer naiven Implementierung erkennen, aber es sind nur geringfügige Abweichungen erforderlich, um die Wahrnehmung zu täuschen.

MrCranky
quelle
1
Der letzte Punkt kann auf viele Bereiche der Entwicklung angewendet werden, zum Beispiel auf die KI. Das ist ein guter Punkt.
Tenpn
8

Es gibt viele Ursachen für Übelkeit. Hier sind die zu berücksichtigenden Umweltfaktoren:

  1. Je größer der Bildschirm, desto wahrscheinlicher ist es, dass Übelkeit auftritt.
  2. Je näher der Benutzer am Bildschirm sitzt, desto wahrscheinlicher ist Übelkeit.
  3. Je dunkler der Raum, desto wahrscheinlicher ist Übelkeit.
  4. Zuschauer von Drittanbietern - nicht interaktive Passagiere - sind häufiger von Übelkeit betroffen als Personen, die das Spiel in irgendeiner Form kontrollieren.
  5. Eine leicht verzerrte Betrachtungsposition verursacht normalerweise mehr Übelkeit als eine gerade Betrachtungsposition oder eine scharf verzerrte Betrachtungsposition. (Dies interagiert normalerweise mit # 4 oben, was die Situation für nicht interaktive Betrachter noch verschlimmert.)

(Normalerweise haben Sie keine Kontrolle über diese Umgebungsfaktoren, es sei denn, Sie führen eine Spieleinstallation durch. In diesem Fall sollten Sie sie unbedingt in Betracht ziehen.)

Denken Sie daran, dass Übelkeit durch eine Meinungsverschiedenheit zwischen dem, was von den Augen gesehen wird, und dem, was von den inneren Bewegungssensoren Ihres Körpers in den Innenohren wahrgenommen wird, verursacht wird. Je mehr Kontext Ihr Gehirn erhält, dass die Bewegung, die von den Augen gesehen wird, keine tatsächliche Bewegung ist (z. B. indem es sich in einem gut beleuchteten Raum befindet, in dem viele stationäre Objekte hinter dem Bildschirm sichtbar sind), desto weniger wird Übelkeit auftreten.

In Bezug auf das Kameraverhalten selbst kann jede Art von automatischer rhythmischer Bewegung leicht Übelkeit verursachen. Rotationen sind am schlimmsten (insbesondere beim Kippen), aber selbst rhythmische Übersetzungen von einer Seite zur anderen oder von oben nach unten verursachen bei vielen (aber nicht allen!) Spielern Übelkeit.

Aus diesem Grund ist es wichtig, dass Sie bei Verwendung von Camera Bob immer eine Option zum Deaktivieren angeben. Andernfalls können viele Spieler Ihr Spiel nicht länger als einige Minuten gleichzeitig spielen.

Als Faustregel gilt: Je langsamer der Zyklus ist und je kleiner die Bewegung der Kamera in diesem Zyklus ist, desto weniger Übelkeit wird bei den Spielern verursacht, die dafür anfällig sind.

Darüber hinaus sind plötzliche Geschwindigkeitsänderungen besonders schlecht für Übelkeit. Jede rhythmische Bewegung, die Sie verwenden, sollte gleichmäßig über den gesamten Bogen verlaufen, anstatt wie in Ihrem Beispieldiagramm entlang einer Achse zu „hüpfen“.

Es ist auch erwähnenswert, dass die meisten Spieler nicht sofort auf Übelkeit reagieren. Diese Reaktionen setzen sich über einige Minuten hinweg fort. Einige Spiele führen diese Art von Kamerabewegungen daher nur in regelmäßigen Abständen durch. Zum Beispiel, wenn der Spieler einen zeitlich begrenzten "Sprint" ausführt und nicht die ganze Zeit, wenn der Spieler normal läuft. Es ist wahrscheinlich immer noch wichtig, dass diejenigen, die anfällig für Übelkeit sind, den Effekt vollständig deaktivieren können, aber mehr Benutzer werden den Effekt tolerieren können, wenn er seltener auftritt als wenn er konstant ist.

Trevor Powell
quelle
Was sind deine Quellen?
Anko
5

Ich werde nur zwei weitere Ideen auf den Tisch legen.

Haben Sie schon einmal Mirror's Edge in Aktion gesehen? Siehe diesen Link, wenn Sie nicht haben. Ich bin mir nicht sicher, wie es mit dem Pitch weitergeht, aber es gibt eine Menge Rollwechsel , und ich finde, dass es sehr dynamisch und frisch aussieht. Das ist also nur eine Möglichkeit für Sie, über eine Einbeziehung in Ihre Formel nachzudenken, wenn Sie das Gefühl mögen, das sie vermittelt.

Eine andere Idee, von der ich nicht weiß, ob sie in einem Spiel verwendet wird, besteht darin, ein vereinfachtes animiertes 3D-Modell eines gehenden Charakters zu erstellen. Selbst wenn Sie nicht rendern, können Sie dennoch Kopfpositionsinformationen daraus sammeln oder sogar Ihre anhängen Kamera an den Kopf. Und wenn der Charakter eine von seinem Kopf unabhängige Augenbewegung hat, können Sie sogar beide einbeziehen . Ich weiß nicht, wie das in Aktion aussehen würde, aber ich denke, es sollte sich sehr realistisch verhalten. Aber es besteht auch die Möglichkeit, dass es auch extrem krank aussieht :-)

David Gouveia
quelle
2

Das menschliche Sichtsystem enthält eine (ziemlich ausgefeilte) Rückkopplungssteuerung, mit der die Augen die relative Bewegung von Objekten verfolgen können. Dies hat letztendlich zur Folge, dass, wenn Sie sich auf einen bestimmten Punkt konzentrieren, das Bild dieses Punktes trotz der Bewegung des Punktes und Ihres Kopfes ungefähr an dieselbe Stelle auf der Netzhaut projiziert wird. (Als einfache Demonstration: Konzentrieren Sie sich auf ein Wort auf dieser Seite. Bewegen Sie den Kopf. Beachten Sie, wie stark Sie den Kopf bewegen müssen, bevor das Wort unscharf wird und sich aus der Mitte Ihres Sichtfelds verschiebt.)

Um diesen Effekt zu emulieren, sollten Sie beim Verschieben der Kamera auch die Blickrichtung so anpassen, dass sich die Position auf dem Bildschirm ändert, auf die der Player gerade fokussiert. Da Sie keine Informationen darüber haben, wo der Spieler hinschaut, können Sie am besten davon ausgehen, dass er wahrscheinlich in die Mitte des Bildschirms schaut. Dies erzeugt einen Effekt, der dem, was Sie erwarten, ähnlicher ist und die Parallaxe subtil ändert, wenn sich der Blickwinkel bewegt.

Es ist wahrscheinlich unmöglich, Übelkeit vollständig zu beseitigen. Reisekrankheit ist typischerweise eine Reaktion auf inkonsistente sensorische Eingaben. In einem Fahrzeug besteht die Inkonsistenz darin, dass die Trägheitsinformationen vom Innenohr auf Bewegung hinweisen, während visuelle Hinweise darauf hinweisen, dass Sie stationär sind. Mit head bob ist das Gegenteil der Fall.

ipeet
quelle
0

Ich empfehle auf jeden Fall, die Tonhöhe der Kamera nicht zu ändern, da die Ausrichtung der Kamera unter der Kontrolle des Players liegt. Die einfache Verwendung einer Sinusfunktion zum subtilen Ablenken entlang der vertikalen / Y-Achse funktioniert normalerweise gut.

schockierend
quelle
In meinem speziellen Kontext hat der Spieler keine Kontrolle über das Kamerapitch während der Bewegung. Sie laufen im Wesentlichen einen Spline hinunter, also kann ich mit dem Pitch herumspielen, wenn ich möchte.
Tenpn