DirectX-Forum - Beitragsübersicht -
ThemaDX9: Texturen vergleichen.
Von Nico
E-Mail nico.schertler@gmx.de
Datum 26. Januar 2009 um 18:07:07
Frage Hallo!

Ich hab mal wieder ein Problem:
Und zwar versuche ich einen Fog-of-War zu realisieren. Dazu habe ich mir gedacht, dass ich in einer Textur die sichtbaren Bereiche mit Alpha=0 male und die unsichtbaren Bereiche mit schwarz. Dann müsste ich nur die Textur über die Karte legen und schon hätte ich das geschafft. Bliebe nur noch die Frage, wie ich dann herauskriege, ob ein Objekt sichtbar ist. Und dazu habe ich mir folgendes überlegt.
Ich kopiere die Fog-Textur, indem ich sie einfach als Sprite in eine neue Textur zeichne. Dann zeichne ich mit Schwarz ein Rechteck in die Textur an der Stelle und in der Größe wie das zu überprüfende Objekt. Falls dann beide Texturen noch identisch sind, ist das Objekt nicht sichtbar, andernfalls ist es sichtbar.
Nun zu meiner Frage:
Wie kann ich zwei Texturen miteinander vergleichen? Oder gibt es evt. eine einfachere Methode für den FoW?

Nico
Antwort:
Von Nico
E-Mail nico.schertler@gmx.de
Datum 03. Februar 2009 um 18:32:17
Antwort So. Jetzt hab ich das Grobe geschafft und hier ist erstmal der Screen: Screen.
Und jetzt zu meinem Problem:
Im Vordergrund ist das Gebäude, das in seiner Sichtweite die Karte offenlegt. Das wäre der Kreis, den man da sehen kann. Außerhalb des Kreises sollte nichts sichtbar sein. Also muss ich überprüfen, ob Objekte sichtbar sind, bevor sie gezeichnet werden. Da ich dafür noch keine Lösung habe, werden die Berge im Hintergrund trotzdem gezeichnet. Dazu habe ich mir folgendes überlegt:
Die Sichtbarkeit wird in einer Textur gespeichert. Dabei bedeutet Weiß=Sichtbar, Transparent=Unsichtbar. Damit wird auch die Sichtbarkeit der Karte über Multitexturing bzw. Stenciling realisiert. Wenn nun ein Objekt ein Rechteck mit seinen Ausmaßen an die entsprechende Position in der Sichtbarkeitstextur zeichnet, kann ich ermitteln (bzw. eben noch nicht), ob es sichtbar ist. Ist die Textur unverändert, ist es sichtbar (da der Bereich, in den das Objekt zeichnet) schon ohnehin weiß war, andernfalls ist es unsichtbar.
Irgendetwas in der Art stellt doch DX bestimmt bereit, oder?

Nico
[ Antwort schreiben | Zurück zum DirectX-Forum | Forum-Hilfe ]
Antworten
DX9: Texturen vergleichen. - Nico 26. Januar 2009 um 18:07:07
Re: Texturen vergleichen. - mdx 29. Januar 2009 um 00:50:53
Re: Texturen vergleichen. - Nico 29. Januar 2009 um 09:06:56
Re: Texturen vergleichen. - mdx 29. Januar 2009 um 19:06:10
Re: Texturen vergleichen. - Nico 30. Januar 2009 um 18:32:20
Re: Texturen vergleichen. - mdx 30. Januar 2009 um 21:23:24
Re: Texturen vergleichen. - Nico 31. Januar 2009 um 08:49:03
Re: Texturen vergleichen. - mdx 31. Januar 2009 um 19:18:00
Re: Texturen vergleichen. - mdx 02. Februar 2009 um 17:07:26
GUI - Nico 02. Februar 2009 um 22:42:24
Re: Texturen vergleichen. - Nico 03. Februar 2009 um 18:32:17
Re: Texturen vergleichen. - mdx 03. Februar 2009 um 22:25:44
Re: Texturen vergleichen. - Nico 12. Februar 2009 um 12:24:13

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