Grafikmodus abhängiger Fehler

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Travis

Betreff: Grafikmodus abhängiger Fehler

BeitragDo, Dez 16, 2004 4:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei einigen Programmen von mir hat sich ein sehr merkwürdiger Fehler eingeschlichen. Wenn das Spiel im Fenstermodus gespielt wird läuft alles einwandfrei. Läuft es aber im Vollbildmodus tritt folgender Fehler auf.

Wenn ein Spiel zuende ist und der Spieler sich in die Highscoreliste eintragen muss, dann wird die Liste nicht mehr angezeigt. Es wird nur noch der Cursor der Inputfunktion angezeigt. Der Rest des Bildschirmes wird noch korrekt dargestellt, aber alle Grafikausgaben für die Highscoreliste werden irgendwie übergangen.

Dabei wird die Funktion die diese Befehle enthält korrekt ausgeführt. Wenn der Name dann eingegeben wurde wird auch die Liste wieder ordnungsgemäß angezeigt.

Code: [AUSKLAPPEN]

Select GameStatus
   Case 1
    UpdateReihe()
    UpdateBlock()
    UpdateInputGame()
   Case 2
    DrawImage GameOverGfx, 73, 75
    ViewHighScore()
    InputHighScore()   
  End Select


Code: [AUSKLAPPEN]

; --- Highscore anzeigen ---
Function ViewHighScore()

 Color 0,0,25
 Rect 45, 182, 250,183

 Color 200,200,200
 DrawImage HighScoreGfx, 45,170

 ; Namen
 For i = 1 To 9
  Text 70, 200+(i*13), i + ". " + Name$(i)
 Next
  Text 62, 200+130, "10. " + Name$(10)

 ; Punkte
 For i = 1 To 10
  Text 265-(Len(Score(i))*8), 200+(i*13), Score(i)
 Next

End Function
; --- Highscore anzeigen ---


Ein Programmierfehler möchte ich mal ausschließen, da im Fenstermodus alles funktioniert. Dieser Fehler tritt jetzt schon bei zwei Programmen auf.
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.

Tobchen

BeitragDo, Dez 16, 2004 7:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich nehme mal so an, dass du DubbleBuffering hast, aber das Flip nicht eingegeben hast.

Edit: Beispiel
BlitzBasic: [AUSKLAPPEN]
Graphics 640, 480, 0, 2
SetBuffer BackBuffer()

Text 10, 10, \"Hallo\"

WaitKey


Nun ist noch Window. Wenn du dann Vollbild machst, hast du das Problem. Hast du aber Vollbild und setzt ein Flip hin, hast du, was du wolltest.
Tobchen - die Welt von Tobi!

Travis

BeitragDo, Dez 16, 2004 17:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Arrgh, natürlich. Bevor man den Flip-Befehl nicht anwendet wird man wohl nichts sehen. Embarassed Ich habe ihn jetzt direkt vor der Input-Eingabe eingefügt und jetzt funktioniert alles so wie es sein sollte 8)

Was ich aber nicht so ganz begreife ist, dass die anderen Bildschirmausgaben auch ohne ein vorheriges "Flip" angezeigt wurden. Nach meinem Verständnis hätte ich nur den Cursor sehen dürfen.

Naja, egal - Problem gelöst

Danke! 8)
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.

simi

BeitragDo, Dez 16, 2004 20:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Input und Print "machen" alles im FrontBuffer...

Travis

BeitragDo, Dez 16, 2004 20:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Das macht natürlich alles etwas komplizierter. Steht ja auch in der Onlinehilfe, aber wer guckt da schon nach dem Print-Befehl?
www.funforge.org

Ich hasse WASD-Steuerung.

Man kann alles sagen, man muss es nur vernünftig begründen können.

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group