Wie kann ich einem Ball die Illusion von Höhe in 2D geben?


40

In 2D-Top-Down-Fußballspielen wird einem Ball manchmal die Illusion vermittelt, in der Luft zu sein, wie im Folgenden:

Beispiel

Wie kann ich das erreichen?


hier deine antwort japantoday.com/category/lifestyle/view/… : shadow.
v.oddou

1
Zitieren der Bildquelle: Ich habe dieses GIF ursprünglich aus diesem Gameplay-Video von Tiki Taka Soccer für diese Frage herausgeschnitten .
Anko


1
Abhängig von der Ansichtsgröße Ihres Spiels können Sie auch die Perspektive verwenden, indem Sie den Ball vergrößern
Wilf

Wie weit der Ball von seinem eigenen Schatten entfernt ist !,
Bradman175

Antworten:


79

Geben Sie dem Ball einen Höhenwert. Zeichnen Sie einen Schatten an der tatsächlichen 2D-Position des Balls. Der Schatten hilft dabei, den Ball für den Spieler räumlich auszurichten.

Wenn Sie den Ball selbst zeichnen , versetzen Sie die Y-Position um die "Höhe" des Balls. Wenn Sie mehr als nur eine Illusion implementieren möchten, verwenden Sie diesen Höhenwert auch für Berechnungen. Sie können beispielsweise die Fähigkeit des Balls implementieren, in einem Spiel, wie Sie es gezeigt haben, über den Kopf eines Spielers zu springen, indem Sie überprüfen, ob die Höhe stimmt besser als die Größe eines Spielers.


40
Auch maßstabs den Ball , wie es auf der Y - Achse für zusätzlichen Effekt nach oben geht (während der Schatten schrumpfen , wenn Sie möchten)
jgallant

@Jons Idee ist wirklich klug. Abhängig von der Art des Spiels und dem Grad der 'Action', den Sie
einbauen

1
Sie können den Ball auch skalieren (oder bei Sprites das Sprite in progressiv größere / kleinere Bilder ändern), um die Nähe zur Kamera nachzuahmen. Dies kann die Höhe übertreiben oder geringfügig sein, je nachdem, wie viel Größenunterschied verwendet wird.
Draco18s

1
@ Jon, der den Schatten schrumpft, wäre nicht realistisch. So dass es mehr diffus würde, wenn es in dem Tech - Niveau des Spiels ist.
Hobbs

1
@Kramii das ist effektiv, was Sie erhalten, wenn Sie "die Y-Position um die" Höhe "des Balls versetzen", wie in der Antwort beschrieben.
osvein

78

Schatten und Textur .

Texturiere den Ball, um zu zeigen, dass er sich dreht. Dies hilft, die Illusion der Drehung einer Kugel zu erzeugen, die mehr als zwei Dimensionen hat.

Bildbeschreibung hier eingeben

Ein Schatten kann Ihr Gehirn dazu bringen, alle möglichen Dinge zu glauben. Flache Dinge so aussehen zu lassen, als hätten sie eine dritte Dimension.

Bildbeschreibung hier eingeben

Sie müssen nicht einmal die Höhe des Balls ändern, sondern nur die Position des Schattens.

Bildbeschreibung hier eingeben

Dieses Video ist ein hervorragendes Beispiel für die Möglichkeiten von Shadow. Sie werden feststellen, dass sich der Ball in jeder Sequenz genau gleich bewegt, nur der Schatten ändert sich: https://www.youtube.com/watch?v=5fgOK0odA1o


6
Es tut mir leid für die schrecklichen Gifs ... Ich wünschte, wir könnten Video einbetten.
MichaelHouse

18
Diese Gifs sind perfekt und können eingebettet werden. Im
Videofall

Auch die Videos werden extern verlinkt. AFAIK selbst StackOverflow lädt die YouTube-Videos nicht herunter und speichert sie ... sondern GIFs, die sie speichern können.
Nelson

Einige Netzwerkseiten können YouTube einbinden
joojaa 10.06.16

Nette Vorschläge, aber den Schatten zu kompensieren, scheint seltsam. Der Schatten ist eine Projektion einer Kugel auf die Grundebene. Es bewegt sich in einer geraden Linie (keine Parabel wie der 3D-Ball), und wenn der Ball auf dem Boden liegt, müssen die Positionen des Balls und des Schattens übereinstimmen. Wenn wir den Schatten anstelle der Kugel versetzen, kann dies sehr verwirrend sein. Wir müssen entweder dafür sorgen, dass der Schatten eine parabolische Flugbahn hat, um ihn zum Ball zu bewegen, oder ihn plötzlich verschwinden lassen, wenn der Ball landet. Beide Optionen werden sehr seltsam aussehen.
Interphx

1

Schatten und Ball sind Schlüsselaspekte. Die Schattengröße und der Abstand zwischen Ball und Schatten sollten mit zunehmender Höhe zunehmen. Außerdem sollte sich die Ballgröße erhöhen, wenn sich die Ballhöhe erhöht. Die Schattenposition stellt die Position der Kugel in 2d dar. Wenn sich die Kugelhöhe erhöht, muss die Kugelposition geändert werden (ich gehe davon aus, dass die Lichtquelle homogen ist und nicht wie eine Lampe ein einzelner Punkt ist. Die Lichtquelle ändert alles am Schatten). Schließlich können Sie einige Animationen wie Luftstrom hinzufügen.


3
Die Kugelgröße sollte zunehmen ... nur wenn sie eine perspektivische Projektion haben. Wenn es wie das Bild isometrisch ist, sollte die Kugelgröße gleich bleiben.
Arturo Torres Sánchez

0

Ich würde tun, was die obigen Plakate andeuteten: Schatten und Größe erhöhen sich, wenn der Ball höher ist. Eine Sache, an die ich mich beim Tennisspielen in alten Fernsehspielen erinnere, ist, dass der Ball umso langsamer wurde, je höher er wurde und je größer er wurde. Wenn es seinen Zenit erreicht hatte und anfing, "herunterzufahren", wurde es wieder schneller, je kleiner es wurde.


-1

Du zeichnest einen Schatten unter den Ball, so wie es im GIF gemacht wird. Je höher der Ball ist, desto länger ist der Abstand zwischen Ball und Schatten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.