Seite 1 von 2

OpenScreen und Grafik

Verfasst: 16.10.2007 10:32
von studroa
Hallo,

ich habe da so ein paar verständniss Probleme mit der Grafik darstellung.
Und zwar, wenn ich in einem Bildschirmmodus eine Grafik anzeigen möchte und den befehl DrawText nehme, wieso geht dass nicht?
Wenn ich ein Grafik anzeigen möchten z.B DisplayTransparentSprite(0,100,100) geht das im Rahmen von StartDraw - StopDraw nicht, oder sehe ich dass falsch?
Und wozu genau dient FlippBuffers und ClearScreen?
Es würde mich wirklich freuen, wenn mir jemand den Rahmen der Grafik-Darstellung erklären würde, also von StartDrawing bis StopDrawing.
Danke euch :allright:

Verfasst: 16.10.2007 10:50
von Fluid Byte
...eine Grafik anzeigen möchte und den befehl DrawText nehme, ...

Verfasst: 16.10.2007 11:02
von studroa
Hi,

oh, falsch ausgedrückt, ich meine ich möchte einen Text Zeichnen und eine Grafik anzeigen

Verfasst: 16.10.2007 11:03
von gekkonier
Ist es nicht so korrekt?:

Du möchtest einen Text in eine Grafik zeichnen und dann beides anzeigen, nicht?

Verfasst: 16.10.2007 11:23
von studroa
Ja,

aber dass Schlüsselwort DisplayTransparentSprite() darf ja nicht zwischen "StartDrawing() und StopDrawing" stehen, dann bekomme ich eine Fehlermeldung. Oder was geht da falsch?

Verfasst: 16.10.2007 12:12
von Fluid Byte
... aber dass Schlüsselwort DisplayTransparentSprite() darf ja nicht zwischen "StartDrawing() und StopDrawing" stehen
Das ist richtig, also stell es davor oder dahinter. Wo ist jetzt das Problem?

Verfasst: 16.10.2007 12:20
von studroa
Hi,

dann kommt die Fehlermeldung dass mein Sprite nicht initialisiert werden kann...

Hier mal ersten Code:

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenScreen(1024,768,16,"Fenster") ; Fenster Öffnen
Repeat
LoadSprite(1,"test.bmp",0)
DisplayTransparentSprite(1,400,400)
FlipBuffers()
ClearScreen(0)
Until KeyboardPushed(#PB_Key_Escape)

Verfasst: 16.10.2007 12:32
von Fluid Byte
LoadSprite() in einer Endlosschleife ist ne' ganz schlechte Idee...

Das bedeuted du lädst dein Bild ununterbrochen neu in den Speicher. Deshalb wird es niemals angezeigt werden.

Verfasst: 16.10.2007 12:41
von studroa
Hallo,

ok klar, habe es aus der Schleife genommen, war mein versehen.

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenScreen(1024,768,16,"Fenster") ; Fenster Öffnen
LoadSprite(1,"test.bmp",0)
Repeat
ExamineKeyboard()
DisplayTransparentSprite(1,400,400)
FlipBuffers()
ClearScreen(0)
Until KeyboardPushed(#PB_Key_Escape)
Trotzdem bekomme ich die Meldung "#Sprite Objekt not initialized"
Was mache ich falsch... bekomme glaube ich dass einfachste der Welt nicht hin...

Verfasst: 16.10.2007 12:45
von Fluid Byte
Prüfen ob LoadSprite() erfolgreich war:

Code: Alles auswählen

Debug LoadSprite(1,"test.bmp",0)
oder

Code: Alles auswählen

Result = LoadSprite(1,"test.bmp",0)

Debug Result
[edit]
Ich muss mich korrigieren, hab da was durcheinander gebracht. Es ist möglich ohne Fehler in der Schleife die Grafik mit LoadSprite() kontinuierlich neu zu laden.
[/edit]