DirectX-Forum - Beitragsübersicht -
ThemaDX9: Pixel Shader
Von Gregor
Datum 30. Januar 2010 um 16:16:01
Frage Hallo

Ich möchte einen Shader programmieren der mir alle sichtbaren Pixel eines Models Rot und alle anderen blau färbt und danach auf depth 0 ausgeben.

Ich hab versucht zuerst den Blauen Shader zuzeichnen und danach den roten aber blau überdeckt den roten Shader.
Shader Blau
ps_2_0
def c0, 0.0, 0.0, 1.0, 1.0
mov oC0, c0
mov oDepth, c0.r

Shader Rot
ps_2_0
def c0, 1.0, 0.0, 0.0, 1.0
mov oC0, c0
Jetz zu meiner eigentlichen frage ist es möglich überprüfen ob ein pixel sichtbar ist und dann entscheiden ob es rot oder blau gezeichnet werden soll?

Danke
Gregor
Antwort:
Von Nico
E-Mail nico.schertler@gmx.de
Datum 31. Januar 2010 um 21:28:53
Antwort Hallo Gregor!

Eventuell kommst du da mit dem Stencil-Buffer weiter. Im SDK ist ein Beispiel, das die Pixel einfärbt, je nachdem, wie oft sie überschrieben werden. So in der Art könntest du ja erstmal dein Objekt zeichnen (dabei Stencil erhöhen) und dann alle anderen Objekte (dabei Stencil vermindern). Dort, wo der Stencil 1 ist, ist das Objekt sichtbar, woanders nicht. Vorher müsstest du ihn vielleicht noch auf einen Wert voreinstellen, sodass du auch erkennst, dass dort eigentlich das Objekt ist, aber verdeckt (1-1=0).

Nico
[ Antwort schreiben | Zurück zum DirectX-Forum | Forum-Hilfe ]
Antworten
DX9: Pixel Shader - Gregor 30. Januar 2010 um 16:16:01
Re: Pixel Shader - dot 30. Januar 2010 um 16:47:10
Re: Pixel Shader - Gregor 30. Januar 2010 um 21:47:42
Re: Pixel Shader - Nico 31. Januar 2010 um 21:28:53

Ihre Antwort
(Nick-)Name   Wichtige Informationen zur Namensangabe
E-Mail (opt.)  Wichtige Informationen zur Angabe einer eMail-Adresse
Thema   Wichtige Informationen zur Angabe eines Themas
Betrifft (IDE)  DirectX 9
Ihre Antwort
Smilies
Mehr...
FettKursivUnterstrichen   Übersicht der Tipp-KürzelÜbersicht der Projekt-KürzelÜbersicht der Bücher-Kürzel 
Homepage
Titel
Root-Smilies              
             
             
[ Zurück zum DirectX-Forum | Forum-Archiv | Forum-Hilfe | Chat ]

Zum Seitenanfang

Startseite | VB-/VBA-Tipps | Projekte | Tutorials | API-Referenz | Komponenten | Bücherecke | Gewinnspiele | VB.Net | .Net-Forum | DirectX | DirectX-Forum | Chat | Ausschreibungen | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Sonntag, 13. Dezember 2015