@BDraw
Mit der Tastenabfrage müsste die Performance besser sein (falls es mit der überhaupt Probleme gibt), weil der Prozess ja immer auf die Tastenabfrage wartet und wenn der Spieler gerade nichts drückt, passiert auch nichts. Nur bei gedrückter Taste könnte es problematisch werden, vermutlich bräuchte man noch ein Wait hinter der Abfrage. Ich weiß aber auch gar nicht, ob eine gedrückte Taste überhaupt Key Input Processing mehrmals auslöst.
Edit:
Nur so aus wissenschaftlicher Neugier hab ich überlegt, ob man die Methode noch vereinfachen könnte. Ich hab das nicht ausgetestet, aber müsste es so nicht auch gehen? Falls ich nicht missverstanden habe was die alte Methode machen soll. Man würde dann sogar eine Variable sparen. Allerdings müsste man die Variable für das alte Terrain wohl vorher initialisieren.