Diese Art von Verhalten gibt es wahrscheinlich auch in anderen Spielen, aber bei den alten Kirby-Spielen - Kirby's Adventure und Kirby's Dreamland 2 - habe ich es bemerkt.
Wenn es sich also um normale Blockplattformen handelt, verhält sich Kirbys Hitbox wie erwartet wie ein einfaches Rechteck, was sich daran zeigt, dass Sie so stehen können:
Auf der anderen Seite sieht das Stehen auf Hängen wie folgt aus:
Wie Sie sehen können, wäre die rechteckige Hitbox, wenn wir sie noch verwenden würden, auf halber Höhe. Diese Art von Verhalten lässt sich leicht erklären. Kaufen Sie jedoch eine Hitbox in Form eines „Diamanten“ oder eines „Plus“. (Dies ist wahrscheinlich so, dass es nicht so aussieht, als ob Kirby beim Gehen auf Pisten in der Luft schwebt.)
Plattformen wie diese zeigen eine perfekte Übereinstimmung mit dem 'Diamond'-Hitbox-Modell:
Doch natürlich die erste Screenshot zeigt , dass es für einen rautenförmigen hitbox nicht möglich ist , zu nutzen all die Zeit, oder würden Sie aus jeder Ecke zu ‚Dia‘ in der Lage sein , als ob es eine Steigung war da.
Tatsächlich zeigen Formationen wie diese, dass sie nicht einmal auf bestimmten Kacheln basieren können, zumindest nicht auf "vollen" Kacheln. (16x16, Kirbys Größe) (Sonst könnte man nicht den ganzen Weg den Hang hinauf laufen)
Ein anderes Modell, das ich mir ausgedacht habe, ist, dass die Hitbox immer rechteckig ist, aber alle Hänge im Spiel tatsächlich tiefer versenkt sind, als die Kacheln glauben machen würden. Die steckförmigen Plattformen im dritten und vierten Screenshot machen dieses Modell jedoch ungültig, da Sie dann nicht mehr in der oberen Mitte stehen könnten, wie Sie es dort sehen.
Übrigens arbeiten die Hänge an der Decke symmetrisch, wie man an Wasserstufen erkennen kann.
Während es dem Spieler intuitiv erscheint, wie könnten wir ein ähnliches Kollisionssystem programmieren ?
NB Ich bitte nicht um Spekulationen über die internen Abläufe von Kirby (es sei denn, jemand hier hat tatsächlich das Kollisionssystem für diese Spiele entwickelt - unwahrscheinlich). Nur ein allgemeiner Ansatz.