„Számítógépes grafika házi feladat tutorial” változatai közötti eltérés
| 892. sor: | 892. sor: | ||
</div><br/> | </div><br/> | ||
==== A | ==== A pontfényforrás ==== | ||
A pontfényforrás a grafikában egy nagyon gyakran használt fényforrás, de a valóságban nem létezik. A valóságos fényforrásoknak egyáltalán nem elhanyagolható a kiterjedése, nem pontszerűek. Viszont a kisebb fényforrásokat, például egy izzót, közelíthetünk ezzel a modellel, és így sokkal könnyebb lesz velük számolni. A pont fényforrás az irányfényforrástól annyiban különbözik, hogy az intenzitása és az iránya se állandó. Az intenzitásról annyit tudunk mondani, hogy az bármely, a fényforrást körülvevő zárt térfogat felületén állandó (hiszen a fotonok nem vesznek el a semmibe, és nem is születnek a semmiből). Ebből következik, hogy a fényforrás középpontú gömbök felületén is állandó az energia. Viszont erről a felületről tudjuk, hogy a távolság négyzetével arányos (A = 4*r^2*Pi), így az egy pontra jutó energia a távolság négyzetének reciprokával lesz arányos. A fény iránya pedig egyszerűen a fényforrásból az megvilágítandó anyag felületi pontjába mutató egységvektor. A beesési szög figyelembevételéhez itt is használhatjuk azt a koszinuszos képlet. | |||
A pontfényforrásnak fontos, hogy ne csak a színét adjuk meg, hanem az energiáját is, pl. egy húsz wattos zölden világító izzót a Color(0.0f, 20.0f, 0.0f) vektorral jellemezzünk. Természetesen itt egy egység nem fog pontosan megfelelni egy wattnak, ez függ attól is, hogy a távolságot hogyan választottuk meg. | |||
Egy lehetséges implementáció: | |||
<br/> <syntaxhighlight lang="c"> | <br/> <syntaxhighlight lang="c"> | ||
| 906. sor: | 909. sor: | ||
</syntaxhighlight> <br/> | </syntaxhighlight> <br/> | ||
A kamera fölül - fejlámpaként - világító | A kamera fölül - fejlámpaként - világító pontfényforrás hatása: | ||
<div style="text-align:left;margin:0px auto;"> | <div style="text-align:left;margin:0px auto;"> | ||
http://i.imgur.com/3ZjMobS.png | http://i.imgur.com/3ZjMobS.png | ||