Flüssige Bewegung

Sogomn

Bekanntes Mitglied
Ich habe ein kleines Programm gemacht, welches einen Punkt anzeigt, den ich mit den Pfeiltasten bewegen kann. Funktioniert auch super. Nur würde ich gerne eine Bewegung hereinzaubern, welche so ist, als würde sich der Punkt auf Eis bewegen, sodass er, nachdem ich die Bewegung abgebrochen habe, immernoch ein bisschen weiter "glitscht" und dabei immer langsamer wird. Hätte da jemand eine Idee, wie ich das umsetzen könnte? Ich dachte schon daran, eine Variable als Pixel/Bewegung festzulegen, die mit jeder Bewegung weniger wird. Hat leider nicht so geklappt...
 

misterbanana

Mitglied
Hallo Sogomn,

ich gehe davon aus, dass du den Punkt immer genau einen Pixel weiterbewegst.

Du könntest nun einen counter bei jeder k-ten bewegung hochzählen und bei nicht-Tastendruck dafür sorgen, dass dieser
counter runtergezählt wird und bei counter == 0 aufhört die bewegung auszuführen.

Evtl. solltest du in betracht ziehen dies für jede richtung zu machen und somit auch ein "bogenförmiges" glitschen zu unterstützen.

mfg misterbanana
 

DrZoidberg

Top Contributor
Du brauchst zwei Variablen für die Geschwindigkeit, z.b. speedX/speedY. Die addierst du in jedem Durchlauf zur aktuellen Position. Ausserdem hast du noch eine Variable für die Reibung, die könnte z.B. den Wert 0.99 haben. Diesen Wert multiplizierst du in jedem Durchlauf mit der Geschwindigkeit.
 

Sogomn

Bekanntes Mitglied
So in etwa hatte ich mir das auch gedacht. Danke für die Ideen, ich werd es gleich mal versuchen, umzusetzen.
 

Ähnliche Java Themen

Neue Themen


Oben