[DIRECTX8.0]Scene heller machen; Pixel-Shader?!



  • Ich denke er wollte Dir sagen, dass der BB keine _normale_ Surface ist.
    Der Backbuffer kann zB nur ein paar ganz bestimmte Formate annehmen (die kompatibel zur Bilschirmausgabe sein müssen). Im Gegensatz zu normalen Surfaces, für die es noch einige Formate mehr gibt.



  • 0x00000001 schrieb:

    Ich denke er wollte Dir sagen, dass der BB keine _normale_ Surface ist.
    Der Backbuffer kann zB nur ein paar ganz bestimmte Formate annehmen (die kompatibel zur Bilschirmausgabe sein müssen). Im Gegensatz zu normalen Surfaces, für die es noch einige Formate mehr gibt.

    Dann soll er es so sagen und nicht ohne irgendeine Erklärung klugscheissen.



  • *lol*

    Solln wir hier mal nen Battle-Channel aufmachen. So TGGC vs. Rest der Welt 😉 :p

    Naja, jetzt mal bitte zurück zu meinem Thema. Ich möchte die Szene manuell heller machen. Ich kann natürlich den Backbuffer-Inhalt auf eine Textur kopieren und dann manuell ändern und dann nocheinmal Zeichnen. Leider ist dies sehr langam. Da finde ich meine Idee mit dem PixelShader doch besser.

    Danke..



  • Ach ja SetGammaRamp kann man vergessen...



  • Naja TGGC meinte das der BackBuffer vielleicht nicht immer gelockt werden kann.
    Back buffer surfaces, which may be accessed using the
    IDirect3DDevice9::GetBackBuffer and IDirect3DSwapChain9::GetBackBuffer
    methods, may be locked only if the swap chain was created with the Flags
    member of the D3DPRESENT_PARAMETERS structure set to include
    D3DPRESENTFLAG_LOCKABLE_BACKBUFFER.

    Also er meint der BackBuffer ist kein normales Surface weil es nicht immer gelockt werden kann. 🙄



  • FragtNicht^^ schrieb:

    const char acGammaPixelShaderCode[] = 
    		"ps.1.1\n"\
    		"def c0, 1.0,1.0,0.5,0.0\n"
    		"mul r0, v0, c0";
    

    Es sollte
    def c0, 0.5, 0.5, 0.5, 0.0
    heißen.

    Bei Deiner Version machst Du nur den Blau-Kanal dunkler.



  • FragtNicht^^ schrieb:

    Ach ja SetGammaRamp kann man vergessen...

    Wieso? Wird seit Jahren von fast jedem Spiel unterstützt. Und außerdem verbrät es keine Füllrate im Gegensatz zu Deiner bisherigen Methode.



  • interpreter schrieb:

    Das jemand wie TGGC natürlich nie zugeben würde das er falsch lag, ist natürlich auch klar.

    Woher willst du das wissen, warst schließlich noch nie dabei.

    FragtNicht^^ schrieb:

    Solln wir hier mal nen Battle-Channel aufmachen. So TGGC vs. Rest der Welt

    Überschrift: Für alle, die mal verlieren wollen

    @dali: Sig ändern nicht vergessen.

    Bye, TGGC (Keine Macht den Dummen)



  • TGGC 👍


  • Mod

    TomasRiker schrieb:

    FragtNicht^^ schrieb:

    const char acGammaPixelShaderCode[] = 
    		"ps.1.1\n"\
    		"def c0, 1.0,1.0,0.5,0.0\n"
    		"mul r0, v0, c0";
    

    Es sollte
    def c0, 0.5, 0.5, 0.5, 0.0
    heißen.

    Bei Deiner Version machst Du nur den Blau-Kanal dunkler.

    sicher? mit 0.5 gemullt macht es doch sicher dunkler und nicht heller so wie er es möchte.

    rapso->greets();



  • Ups, ich dachte irgendwie, er wollte es dunkler machen.
    So macht der Code ja überhaupt keinen Sinn.
    Na dann so:

    def c0, 0.5, 0.5, 0.5, 0.0
    add r0, v0, c0

    oder

    add r0, v0, v0


Anmelden zum Antworten