Unterschiedliche Farbwerte im Fenstermodus / Fullscreen
Übersicht

![]() |
TravisBetreff: Unterschiedliche Farbwerte im Fenstermodus / Fullscreen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe festgestellt, dass die ReadPixelFast-Funktion im Vollbildmodus einen anderen Farbwert ermittelt, als im Fenstermodus. Wie kann ich das denn anpassen? Ich würde gerne einen Farbwert eindeutig erkennen, und zwar unabhängig vom Bildschirmmodus.
Hier mal ein Beispiel damit ihr seht, was ich meine. Code: [AUSKLAPPEN] Dim FullScreenRGB(5) Dim WindowRGB(5) ; Fullscreenmodus Graphics 800,600,16,1 Bild = CreateImage(5,1) SetBuffer ImageBuffer(Bild) Color 255, 0, 0: Plot 0,0 Color 0,255, 0: Plot 1,0 Color 0, 0,255: Plot 2,0 Color 255,255, 0: Plot 3,0 Color 255, 0,255: Plot 4,0 LockBuffer ImageBuffer(Bild) For x = 0 To 4 FullScreenRGB(x) = ReadPixelFast(x,y,ImageBuffer(Bild)) Next UnlockBuffer ImageBuffer(Bild) ; Fenstermodus Graphics 800,600,16,2 Bild = CreateImage(5,1) SetBuffer ImageBuffer(Bild) Color 255, 0, 0: Plot 0,0 Color 0,255, 0: Plot 1,0 Color 0, 0,255: Plot 2,0 Color 255,255, 0: Plot 3,0 Color 255, 0,255: Plot 4,0 LockBuffer ImageBuffer(Bild) For x = 0 To 4 WindowRGB(x) = ReadPixelFast(x,y,ImageBuffer(Bild)) Next UnlockBuffer ImageBuffer(Bild) ; -- Auswertung SetBuffer FrontBuffer() ScaleImage Bild, 30,30 DrawImage Bild, 0,0 Text 30, 50, "Die Farbwerte der einzelnen Bildpunkte einer Grafik." Text 30, 60, "Die Werte wurden mit ReadPixelFast ermittelt. Das angezeigte" Text 30, 70, "Bild wurde zur Kontrolle Scaliert. Es ist nur 5x1 Pixel groß." Text 30,130, "Fullscreen:" For i = 0 To 4 Text 30, 150+i*15, i + ". " + FullScreenRGB(i) Next Text 200,130, "Fenstermodus:" For i = 0 To 4 Text 200, 150+i*15, i + ". " + WindowRGB(i) Next WaitKey End |
||
www.funforge.org
Ich hasse WASD-Steuerung. Man kann alles sagen, man muss es nur vernünftig begründen können. |
![]() |
Bfox |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Also das find ich komisch! |
||
Glauben ist Mangel an Wissen! |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das liegt daran dass im Fenstermodus die Farbtiefe benutzt wird die für das Desktop benutzt wird. Unterscheidet sich die von der für den Fullscreen gibts auch bei Readpixel unterschiedliche Ausgaben. (16bit <--> 32 bit)
Auf der Blitzbase müsste die Formel zum Umrechnen vorhanden sein (16 bit ist wenn ich nicht irre "blaulastiger"). Das negative Werte ausgegeben werden ist nit ungewöhnlich, das heißt nur dass das 32.e bit gesetzt ist welches auch als Vorzeichenbit fungiert (das Alphabyte ist also <>0). |
||
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 |
![]() |
Travis |
![]() Antworten mit Zitat ![]() |
---|---|---|
Tatsächlich. Da muss man erstmal drauf kommen. Dann werde ich zur Entwicklung wohl auf 16 Bit runterschalten. Später gibt's ja sowieso nur den Vollbildmodus, dafür kann ich die Farbtiefe festlegen. | ||
www.funforge.org
Ich hasse WASD-Steuerung. Man kann alles sagen, man muss es nur vernünftig begründen können. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group