Delay + Bewegung in einer Schleife
Übersicht BlitzBasic Beginners-Corner
nameitBetreff: Delay + Bewegung in einer Schleife |
Fr, Okt 30, 2015 23:56 Antworten mit Zitat |
|
---|---|---|
Hallo zusammen!
Ich bin ziemlicher Anfänger in BB3D und versuche ein "png" Bild per Tastendruck auf der X-Achse verschieben zu lassen in Echtzeit. Ein Counter soll nach einer Sekunde das Bild auf der Y Achse nach unten verschieben, so im Tetris, Space Invader Stil. Leider klappt das nicht so wirklich. Mein finaler Ansatz ist gewesen 2 uhrzeiten abzugleichen mit millisecs(), also führe Schleife so lange aus bid der Zweite Timer (Aktuelle Uhrzeit minus 1000 Milisekunden) der ersten Uhrzeit entspricht. Code: [AUSKLAPPEN] Global wnd#=2 Global GraphicsMode#=2 Global posx=400 Global posy=1 SetBuffer BackBuffer () timer= CreateTimer(60) SetGraphicsMode() ; begin mit core und so Repeat timer1=MilliSecs() ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;TIMER1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; posy=posy+40 Repeat timer2=MilliSecs()-1000 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; TIMER 2 ;;;;;;;;;;;;;;;;;;;;;;;;;; If KeyHit(203) posx=posx-40 Else If KeyHit(205) posx=posx+40 End If drawtest() WaitTimer(timer) Flip(0):Cls Until timer1=timer2 ;;;;;;;;;;;;;;;;;;;;;;;;; LE VERGLEICH ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Until KeyHit(1) ; END OF MAIN CODE Function drawtest() ; Zeichne! testbild=LoadImage("viereck.png") DrawImage testbild, posx, posy End Function Function SetGraphicsMode() ; Set Graphics Select True Case GraphicsMode#=1 ;1: 640x480 Graphics 640,480, 32, wnd# Case GraphicsMode#=2 ;2: 800x600 Graphics 800,600,32, wnd# Case GraphicsMode#=3 ;3: 1024x768 Graphics 1024, 768, 32, wnd# Default End Select End Function Doch ich denke das funktioniert nicht, das geht schon aus Prinzip nicht, weil ich die FPS auf 60 begrenzt habe mit createtimer, also nicht milikesunden genau gearbeitet werden kann etc.. Was wäre denn die denkbar einfachste Lösung das sonst zu realisieren? |
||
nameit |
Sa, Okt 31, 2015 1:48 Antworten mit Zitat |
|
---|---|---|
Danke, habs einfach mit >= statt = gelöst | ||
Übersicht BlitzBasic Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group