Flimmern
Übersicht

totonak5Betreff: Flimmern |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hi!
wie verhindere ich das flimmern von kreisen oder rechtecken in einem spiel? lg |
||
Just for Fun!
Jesus loves U! |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Eine genauere Fehlerbeschreibung wär nett. Vermute aber mal du hast kein Doublebuffering (Forumssuche) benutzt. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
Code: [AUSKLAPPEN] Graphics 640, 480, 32 Setbuffer Backbuffer() ;<-- while not keyhit( 1 ) ;Scene malen flip //puffer flippen cls //backbuffer löschen wend end So in der Art funktioniert das! Wie das Prinzip von Doublebuffering funktioniert, darüber machst du dich am besten selbst kundig! Manche schwören darauf, das "cls" am Beginn deiner Scene zu setzen und das "flip" am Ende, macht aber kein Unterschied. grüße |
||
http://bl4ckd0g.funpic.de |
getlose |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
so egal ist das nicht ob cls vor oder hinter flip
steht, cls löscht nämlich den gesamten bildschirm. bei deinem beispiel würde man also rein garnix sehen :) |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
getlose... erst denken dann posten.... er Flipt und DANACH löscht er den Screen.
hätte er cls:flip, ja dann hättest du recht, aber ob er Code: [AUSKLAPPEN] while
cls malkrempl flip wend oder Code: [AUSKLAPPEN] while
malkrempl flip cls wend schreibt ist sch....egal. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
@getlose_back: Falsch! Cls löscht nicht den Bildschirm sondern den Backbuffer und der interessiert nichtmehr nachdem das Bild in den Frontbuffer geschaufelt wurde! Code: [AUSKLAPPEN] Graphics 640, 480, 32 SetBuffer BackBuffer() While Not KeyHit( 1 ) Rect( 270, 190, 100, 100 ) Flip Cls Wend End Funktioniert also genaus wie: Code: [AUSKLAPPEN] Graphics 640, 480, 32 SetBuffer BackBuffer() While Not KeyHit( 1 ) Cls Rect( 270, 190, 100, 100 ) Flip Wend End Probleme gibts nur wenn du das Cls direkt VOR das Flip schreibst, denn dann wird der leere Backbuffer angezeigt! Edit: @BladeRunner: Meine Rede! ![]() grüße |
||
http://bl4ckd0g.funpic.de |
getlose |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
oha, ok ok, hab ich was dazu gelernt :)
'hack hack hack' ... |
||
totonak5 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
im folgenden quelltext klickt auf das quadrat links oben, dann gebz ihr x- beliebige zahlen unten ein und klickt auf das unterste rechteck! das rechteck das dann rechts erscheint flimmern!
wie kann ich das verhindern? code: Code: [AUSKLAPPEN] Graphics 800,600 SetBuffer BackBuffer() Font = LoadFont("Arial",15,0,0,0) Eingabe = 1 Repeat Cls Color 220,220,220 Rect 0,0,800,600 ; Button Color 215,215,215 Rect 20,50,25,2 Rect 20,50,2,25 Color 128,128,128 Rect 45,50,1,25 Rect 44,51,1,24 Rect 20,75,26,1 Rect 21,74,25,1 If RectsOverlap(X,Y,2,3, 20,50,25,25) If MouseDown(1) ; Design Color 128,128,128 Rect 20,50,25,2 Rect 20,50,2,25 Color 215,215,215 Rect 45,50,1,25 Rect 44,51,1,24 Rect 20,75,26,1 Rect 21,74,25,1 Aktion = 1 EndIf EndIf If Aktion = 1 Color 0,0,0 Text 10,400, "Länge: " Text 10,430, "Breite: " ; Design Länge Color 215,215,215 Rect 55,395, 40,2 Rect 55,395, 2,25 Color 128,128,128 Rect 55,420, 40,1 Rect 56,419, 39,1 Rect 95,395, 1,26 Rect 94,396, 1,24 Color 225,225,225 Rect 57,397,37,22 ; Design Breite Color 215,215,215 Rect 55,425,40,2 Rect 55,425,2,25 Color 128,128,128 Rect 55,450, 40,1 Rect 56,449, 39,1 Rect 95,425, 1,26 Rect 94,426, 1,24 Color 225,225,225 Rect 57,427,37,22 ; Design Button Color 220,220,220 Rect 22,52,22,22 Color 128,128,128 Rect 20,50,25,2 Rect 20,50,2,25 Color 215,215,215 Rect 45,50,1,25 Rect 44,51,1,24 Rect 20,75,26,1 Rect 21,74,25,1 ; Schreiben If Eingabe = 1 If RectsOverlap(X,Y,1,2, 55,425,40,25) And MouseHit(1) Then Eingabe = 0 A = GetKey() Color 0,0,0 If A > 47 And A < 57 And Len(Neu1$) <= 2 Then Neu1$ = Neu1$ + Chr(A) Text 60,400, Neu1$ + "_" If A = 8 And Len(Neu1$) > 0 Then Neu1$ = Left$(Neu1$, Len(Neu1$) - 1) EndIf If Eingabe = 0 If RectsOverlap(X,Y,1,2, 55,395,40,25) And MouseHit(1) Then Eingabe = 1 A = GetKey() Color 0,0,0 If A > 47 And A < 57 And Len(Neu2$) <= 2 Then Neu2$ = Neu2$ + Chr(A) Text 60,429, Neu2$ + "_" If A = 8 And Len(Neu2$) > 0 Then Neu2$ = Left$(Neu2$, Len(Neu2$) - 1) EndIf If Eingabe <> 1 And Len(Neu1$) > 0 Then Text 60,400, Neu1$ If Eingabe <> 0 And Len(Neu2$) > 0 Then Text 60,429, Neu2$ ; Eingabe ENTER Color 215,215,215 Rect 55,470,35,2 Rect 55,470,2,25 Color 128,128,128 Rect 90,470,1,25 Rect 89,471,1,24 Rect 55,495,36,1 Rect 56,494,35,1 If RectsOverlap(X,Y,1,2, 55,470,35,25) If MouseDown(1) Color 128,128,128 Rect 55,470,35,2 Rect 55,470,2,25 Color 215,215,215 Rect 90,470,1,25 Rect 89,471,1,24 Rect 55,495,36,1 Rect 56,494,35,1 Color 192,192,192 Rect 57,472,32,22 Flip If Len(Neu1$) <> 0 And Len(neu2$) <> 0 Then NeuesBild = 1 EndIf EndIf EndIf Flip If NeuesBild = 1 Neu3 = Int(Neu1$) Neu4 = Int(Neu2$) PosX = Neu3 / 2 PosY = Neu4 / 2 NeuX = 450 - PosX NeuY = 300 - PosY Color 255,255,255 Rect NeuX,NeuY,Neu3, Neu4 Color 0,0,0 Rect NeuX - 1, NeuY - 1 , Neu3 + 2, Neu4 + 2,0 EndIf ; Maus X = MouseX() Y = MouseY() Flip Until KeyHit(1) |
||
Just for Fun!
Jesus loves U! |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du verwendest mehrere Flip in einem Scheifendurchlauf- das kann nicht funktionieren. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
totonak5 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja das war ein fehler aber es flimmert immer noch.
lg |
||
Just for Fun!
Jesus loves U! |
totonak5 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
oh! es funktioniert doch!
danke lg |
||
Just for Fun!
Jesus loves U! |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group