Seite 1 von 1

Mstschige Anzeige nach Flippbuffer()

Verfasst: 09.02.2021 18:03
von northstarex
Bevor ich alles zerlege, da frage ich erst mal hier nach.

Als ich ein PBScript auf einen anderen Rechner überprüfen wollte, ist mit aufgefallen, wenn man Flippbuffer() verwendet, dann wird die Ausgabe matschig.

Bild

Vorher hatte ich auf dem Rechner keine Problene mit der Darstellung. Ich habe auch andere Prgs probiert. Da ist alles ok. Auf anderen Rechnern funktioniert das ganze ohne Darstellungsprobleme.

Könnte an der Grafikkarte liegen, an Win10 oder gar an Purebasic?

PBVersion: PureBasic 5.73 LTS (Windows - x64)
Betriebssystem: Windows 10 Pro, 64-bit
DirectX-Version: 12.0
GPU-Prozessor: GeForce GTX 750 Ti
Treiberversion: 461.09

Hat das Problem wer schon mal gehabt?

// Von "Bugs" nach "Grafik & Sound - Programmierung" verschoben (Kiffi)

Re: Mstschige Anzeige nach Flippbuffer()

Verfasst: 09.02.2021 18:15
von STARGÅTE
>> "[...], wenn man FlipBuffer() verwendet, dann wird die Ausgabe matschig."
Blöde Frage, aber was wäre denn die alternative von "FlipBuffer() verwendet"? Nicht FlipBuffer() zu verwenden? Das geht ja nicht, dann wird deine Ausgabe ja nie aktualisiert.

>> "Vorher hatte ich auf dem Rechner keine Problene mit der Darstellung. Ich habe auch andere Prgs probiert.
>> "Da ist alles ok. Auf anderen Rechnern funktioniert das ganze ohne Darstellungsprobleme."
>> "Könnte an der Grafikkarte liegen, an Win10 oder gar an Purebasic?"
Ohne Lauffähigen Beispiel-Code können wir nur raten.
Möglicherweise ist die Ausgabe nicht Pixelgenau, spricht der Screen wurde gestretcht.
Oder aber das Bild wird mit einem Sub-Pixel Offset gezeichnet und verliert daher seine Schärfe.
Oder aber du verwendest DrawImage() mit eigener Breite und Höhe.
Oder aber du nutzt ZoomSprite und hast #PB_Sprite_BilinearFiltering aktiviert.
Oder aber ...

Re: Mstschige Anzeige nach Flippbuffer()

Verfasst: 09.02.2021 19:00
von northstarex
ja genau.... flippbuffer matschig, bei nicht flippbuffer alles ok. Bissel kontraproduktiv so ohne Screen-Akualisierung.

Egal was für ein PB Prg. Wäre das nur bei einen Prg., dann hätte ich schon ein Listing gepostet. Ist aber bei allen...

Aber nun gut:

Code: Alles auswählen

Enumeration
   #Window
EndEnumeration


  
If InitSprite() And InitKeyboard() = 0
    MessageRequester("Error", "Can't open screen & sprite environment!", 0)
    End
  EndIf

  UseJPEGImageDecoder()     
  LoadImage(2,"pac2.jpg")    ;<------- kann irgendein Bild sein 960x540

If OpenWindow(#Window, 0, 0, 960, 540, "Graphics", #PB_Window_ScreenCentered|#PB_Window_MinimizeGadget)
OpenWindowedScreen(WindowID(#Window), 0, 0, WindowWidth(#Window), WindowHeight(#Window))

       StartDrawing(ScreenOutput()) 
       DrawImage(ImageID(2),0,0)   
       StopDrawing()                
       
       
       
       Repeat
        


        ExamineKeyboard()
        
        taste$ = KeyboardInkey()
          
          If taste$="1"
            End
          EndIf
          
          
          
          
          FlipBuffers()  ;<-------------------------------------- wenn gesetzt, dann wird es matschig
 
       
       
        Repeat
          Event = WaitWindowEvent(1)
          If Event = #PB_Event_CloseWindow Or KeyboardPushed(#PB_Key_Escape)
            
            End
          EndIf    
        Until Event = 0
        
      ForEver 
    Else
     MessageRequester("Error", "Ups! Irgendwie geht das nicht", 0)
    EndIf
  

Das ist jetzt nur ein Beispiel.Listing. Ohne groß Funktion. Läd ein jpg. Macht ein Screen auf und wartet auf Beendigung vom Nutzer.

Das ist mir nur bei dem einen Rechner auf gefallen, dass bei Flippbuffer die Grafik matschig wird. Ohne Flippbuffer halt nicht.

Also wie gesagt, egal was ich compiliere, Grafiken werden matschig. Nicht bei allen Rechnern... nur bei dem einen, da wo ich auf die Infos gepostet habe.

Re: Mstschige Anzeige nach Flippbuffer()

Verfasst: 09.02.2021 19:27
von northstarex
Problem gelöst:

Irgendwann wurde der GraKa Treiber aktualisiert. Dabei wurden ein paar neue Funktionen hinzugefügt.
Wird wohl bei vielen Nvidea Grafikkarten so sein. Zumindest bei der GeForce GTX 750 Ti

Wer das matschige Anzeige-Problem hat, dann die Funktion

Antialiasing FXAA Funktion auf "aus" stellen.

Dann ist wieder alles im compilierten Fenster knackig scharf.

Re: Mstschige Anzeige nach Flippbuffer()

Verfasst: 09.02.2021 20:48
von NicTheQuick
Ich möchte auch noch was raten: Kann es unter Windows Probleme geben, wenn man die DPI auf mehr als 100% stehen hat?

Re: Mstschige Anzeige nach Flippbuffer()

Verfasst: 10.02.2021 01:47
von northstarex
bei einen Rechner habe ich bei Win10 die DPi Geschichte auf 120%. Hatte keine Probleme bis jetzt. Ich glaube das kann man auch in den Compilereinstellungen bestimmen, ob mit oder ohne Berücksichtigung der DPI.