Das ist einleuchtend, danke. Jetzt bin ich aber auf mein Hauptproblem zurückgeworfen: Was, wenn ich eine beliebige Maximalhöhe y erreichen will? Dann reicht es nicht aus, wenn sich in jedem Additionsschritt v um g verkleinert, weil y erreicht wird, lange bevor v gegen 0 tendiert.

Ich habe für y mal 15 eingesetzt und nach g aufgelöst:
5 * 5 - (g/2)*5^2 = 15
...
g = 0,8
Die Schrittfolge sähe dann so aus:
1. Schritt: v = v - g/2 = 4,6
y = 4,6
2. Schritt: v = v - g = 3,8
y = 8,4
3. Schritt: v = v - g = 3
y = 11,4
4. Schritt: v = v - g = 2,2
y = 13,6
5. Schritt: v = v - g = 1,4
y = 15
y ist also erreicht, aber v noch deutlich über g. Wenn ich v jetzt ins Negative verkehren würde, sähe das im Spiel abgehackt aus.

Alternativ könnte ich auch g lassen und nach v auflösen:
v * 5 - (1/2)*5^2 = 15
...
v = 5,5
Damit würde die Schrittreihenfolge wieder passen. Nur was, wenn ich ganz andere Werte einsetze?
t = 60, g = 1, y = 48 (übersetzt: bei 60 fps soll mit einer Gravitation von 1 eine maximale Höhe von 48 Pixeln erreicht werden)
Nach v aufgelöst:
...
v = 30,8
Das kann ja nicht stimmen, denn schon im 2. Schritt wäre y übertroffen. Ich verhaspele mich damit, die abstrakte Mathematik zu verstehen und kriege das nicht mehr in Einklang mit meinem konkreten Problem. Ist das überhaupt praktikabel?

Die Fallgeschwindigkeit habe ich momentan stumpf auf 10 begrenzt.