[DX9] Lightmapping

Für Fragen zu Grafik APIs wie DirectX und OpenGL sowie Shaderprogrammierung.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [DX9] Lightmapping

Beitrag von Zudomon »

@Chromanoid
Wie ist das automatische UV-Mapping gemacht? Oder sind die Bilder aus einem externen Programm?

@eXile
Man muss mehr als 1px Rand um die Charts lassen, weil ansonsten in höheren Mipmapstufen die Nähte wieder sichtbar werden.
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4262
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: [DX9] Lightmapping

Beitrag von Chromanoid »

Zudomon hat geschrieben:@Chromanoid
Wie ist das automatische UV-Mapping gemacht? Oder sind die Bilder aus einem externen Programm?
Ja, in diesem Fall 3D Studio Max. Ggf. finde ich dazu Sourcecode, wenn es dich interessiert.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [DX9] Lightmapping

Beitrag von Zudomon »

Brenndend interessiert mich das. Habe ja schon damals Threads in dieser Richtung erstellt, aber da kam dann letztlich keine Lösung.
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4262
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: [DX9] Lightmapping

Beitrag von Chromanoid »

Hast ne PM... :)
DomiOh
Establishment
Beiträge: 132
Registriert: 08.10.2002, 14:44

Re: [DX9] Lightmapping

Beitrag von DomiOh »

Ich habe noch immer Probleme mit meinen Lightmaps. :-(
Im Moment ist es so, dass ich Lightmaps per Dreieck generiere und diese dann in eine große Lightmap packe.
Das Problem sind allerdings die Dreiecksränder, z.B. wenn ich versuche einen Schatten zu berechnen.
Das Problem ist, dass die Lightsmaps dann zackige Ränder haben, weil das Mapping und auch der Ray-Intersects-Tri-Test nicht genau genug ist.

Heisst, dass manche Bereiche einen schwarzen Rand haben, wo Licht sein müsste, u.s.w.

Ich verzweifle nochmal an diesem Mist.
Ich denke, ein Rechnen von Lightmaps per Dreieck ist dann auch nicht möglich.
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4262
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: [DX9] Lightmapping

Beitrag von Chromanoid »

Die meisten Programme malen am Rand der Dreiecke die Randfarben einfach etwas weiter. Das nennt sich dann glaube ich Padding...
Hast jetzt auch gleich ne PM ;)

Hier mal geschaut: http://www.blackpawn.com/texts/lightmaps/default.html ?
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [DX9] Lightmapping

Beitrag von Zudomon »

Das ist ein Problem, was sich nicht so einfach beheben lässt.
Wenn du das meinst, woran ich denke zumindest. Angenommen du hast eine Grundplatte und da ist eine Lightmap drauf. Desweiteren steht da eine schräge Wand drauf, und verdeckt so einen Teil der Grundplatte. Wenn nun die Texel der Grundplatte beleuchtet werden, dann werden die hinter der Wand nicht beleuchtet und diese sind dann z.B. schwarz.
Da diese ja mit ihren Nachbarn interpoliert werden, erhälst du da, wo die Wand ist am Boden entsprechend die dunklen zackigen Ränder.

Die Lösung für dieses Problem wäre, rauszufinden, welche Texel ungültig sind und diese dann durch gültige Lichtinformationen zu ersetzen.
DomiOh
Establishment
Beiträge: 132
Registriert: 08.10.2002, 14:44

Re: [DX9] Lightmapping

Beitrag von DomiOh »

Nunja und genau mit diesen ungültigen Pixeln habe ich so meine Probleme.
Bisher habe ich so einen Algorithmus verwendet, wo getestet wird, ob der Punkt der für das Lumel verwendet wird, auf dem Dreieck liegt. Dieser ist aber äußerst ungenau.
Desweiteren habe ich es mit D3DXIntersectTri versucht, Lichtposition und Lichtrichtung angegeben, aber auch das Ergebnis ist bei weitem nicht genau genug.
Antworten