In seiner Funktionalität auf die Lehre in gestalterischen Studiengängen zugeschnitten... Schnittstelle für die moderne Lehre
In seiner Funktionalität auf die Lehre in gestalterischen Studiengängen zugeschnitten... Schnittstelle für die moderne Lehre
Hier dokumentiere ich meine Erweiterungen zu einem vorhanden Template. In diesem Fall habe ich das 2D-Sidescroller-Template benutzt
Bitte zum Original Vergleichen, welches bei den Vorlesungsfolien zu finden ist!
Als Grundlage habe ich das gegebene 2D-Sidescroller Projekt benutzt und ausgearbeitet. Es enthielt bereits eine Steuerung und zwei Animierte Sprites.
Ich habe meine Sprites aus einem anderen Kurs ausgebessert und regelkonform importiert. Dann habe ich zu jeder gewollten Animation ein Flipbook erstellt und dieses den Charakteraktionen zugewiesen. Nach Abfragre isJumping? Wird der springende Spirte gesetzet und ab onLanded der Idle-Sprite.
Zunächst habe ich eine Doppelsprungfunktion eingefügt. Zur Abfrage, um einen Doppelsprung zu ermöglichen habe ich mich bei Schwierigkeiten an ein Youtubevideo gewendet. Sonst beruht alles auf eigenem Code. Auch die Limitierung an aufeinanderfolgenden Sprüngen ist durch eine Variable, welche mitzählt und ein Limit-Integer geregelt. Hier ist es auch möglich, das Limit zu erhöhen, sollte es irgendwann einmal Level-Ups in dem Spiel geben. So kann man z.B. Dreifachsprünge freischalten.
Die Animationen zu den jeweiligen Zuständen habe ich im Nachhinein noch eigens ergänzt, um das ganze etwas visuell aufzupolstern.
Ich habe teile des Tukancodes auf den NPC übertragen und diesen per Flip-Flop steuerbar gemacht. Dann habe ich bei diesem die Flipbooks auf Aktionen umgemapped, damit sie den Hasen repräsentieren. So kann man auf den Sprite von Vladimir zugreifen.
Basierend aus dem angeeigneten Wissen von Guides und Videos habe ich ein Menüsystem produziert. Dieses basiert auf einem neuen Level, welches bei Spielstart in das Spiellevel lädt. Dazu gibt es die Option per Buttonclick zu weiteren Menüs zu wechseln, oder das Spiel zu verlassen.
Das Prinzip funktioniert auch im Spiel, wobei man das Spiel pausieren kann und zum Start oder aus dem Spiel gehen kann. Dabei wird nun der Hintergrund einem Blur ausgesetzt und das Spiel hält im Ganzen an. Möchte man nun weiterspielen, kann man die Gameloop wieder aktivieren oder man schaltet zwei Balken sichtbar, welche das Spiel verlassen oder zum Hauptmenü zurückkehren.
Per Keyboardinput ist es nun möglich die aktive Kamera für den Spieler zu ändern, Dazu wird die alte entkoppelt, und die neue angekoppelt über die set active methode.
Ich habe den Sprite der statischen Plattform genommen und einem Actor zugeteilt. Dieser wird durch eine Timeline in konstantem Intervall diesselbe Streke hoch/runter bzw. von links nach rechts gefahren. Es legt Grundsteine für das Platforming. Als Material habe ich mich dem Startercontent bedient, um sie für den Prototypen visuell von den statischen Plattformen hervorzuheben.
Ich habe mich noch einmal an den Widget und Levelblueprint gesetzt und eine Lösung gefunde, das Spiel zu pausieren und wieder laufen zu lassen. Dabei wird nun auch der Mousecursor im Pausemenü korrekt angezeigt. Das Widget während dem Spiel wird einfach unsichtbar geschaltet
Über einen NPC und ein Interface habe ich noch einen kleinen Dialog eingebaut, den man in einem gewissen Triggerbereich abspielen kann.
Es ist doch erstaunlich wie viel reine logik und Abfrage hinter dem ganzen Spielsystem steckt und welche Möglichkeiten zur Kapselung etc. man hat. Es war doch anfangs vor allem bei anderen Tutorials schwierig sich mit den Rotationen und Locations von world und local zurechtzufinden. Auch das Herangehen an ein abgestimmtes Blaupausensystem ist noch konzipieraufwendig. Von Guides und Anleitungen sowie Erklärvideos kann man hier oft nicht absehen, da man sich sonst oft an Stellen festhängt. Ich habe vor allem für mich gelernt, dass man die Logik und Basics hinter dem ganzen auffrischen und wieder verstehen sollte, bevor man mit dem Blueprinting überhaupt anfängt. Denn hat man die Logik verstanden, so braucht man manchmal auch kein Tutorial mehr um etwas einzuführen.
Oder unten als ZIP