Az elmúlt napokban gondoltam, hogy a "klasszikusok" (Quake1-3) iránti tiszteletből megvalósítom a dinamikus (pont)fénykezelést hozzájuk hasonlóan.
A technika a következő.
Kigyűjti a fény hatáskörébe tartozó háromszögeket.
A látvány alapján valódi árnyalást nem alkalmaz (esetleg eldobálja normál alapján a szükségtelen háromszögeket?), hanem csak áttűnést számol egy meglehetősen agyafúrt módon. Az áttűnéshez a pontfény 2D textúráját használja fel és a háromszögek vertexeihez megfelelően kiszámolja a textúra koordinátákat úgy, hogy a végeredmény egy 3D áttűnésnek tűnjön.
A rendereléskor pedig decalként rajzolja ki ezen háromszögeket.
Én annyiban változtattam ezen, hogy az áttűnést 3D textúrával oldom meg.
A technika a fénytér szinezését ill. skálázását teszi lehetővé.
Megjegyzés:
Valószínű, hogy a Doom3 / Quake4 fénykezelési alapelve is ez volt ill. kiegészítették korszerű árnyalással.