Gettimerall()

Previous topic - Next topic

Baggi

Alles klar.

Jetzt kann ich x auch auf Null setzten und sowas machen :


Code (glbasic) Select
x = 0
LIMITFPS -1 // Brüll
WHILE TRUE
   PRINT "X", x, 0
   x = x + GETTIMER() / 100 // Bisserl langsamer
   
   IF x>=15
   y=y+1
   x=0
   ENDIF
   
   PRINT y,100,100
   SHOWSCREEN
WEND


Also nochmal, nur damit ichs kapiert habe :

Code (glbasic) Select
**********************************************************
Rechnergeschwindigkeit | Bei jedem Durchlauf | nach 60ms |
für den Code zwischen  |                     |           |
SHOWSCREEN             |                     |           |
                       |                     |           |
        15ms           |  x=x+15             | x=60      |
                       |                     |           |
        30ms           |  x=x+30             | x=60      |
**********************************************************
Angenommen da sind zwei Rechner, der eine schafft den Code
zwischen SHOWSCREEN in 15ms, der andere in 30ms. Dann wird
beim langsameren, x alle 30 ms um 30 erhöht. Macht nach 60 ms
genau x=60 und braucht (weil langsam) 2 Durchläufe.
Beim Schnellen wird alle 15 ms um 15 erhöht. Macht nach 60 ms
genau x=60 und schafft (weil schnell) 4 Durchläufe.

Das ist genial.

Kitty Hello

Sehr schön veranschaulicht.