Átlátszó objektumok, ködgenerálás
Átlátszó és nem átlátszó objektumok együttes modellezése
- Először modellezzük az összes nem átlátszó objektumot a megszokott módon.
- Engedélyezzük a színkeverést: glEnable(GL_BLEND);
- Célszerű a hátlapok megjelenítését letiltani: glEnable(GL_CULL_FACE);
- Definiáljuk a színkeverés paramétereit, pl.: glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
- Állítsuk a mélység puffert csak olvasható módba: glDepthMask(GL_FALSE);
-
Amennyiben lehetséges, modellezzük az átlátszó objektumokat a nézőpontunktól távoliaktól kezdve a közelebbiek felé haladva.
- A glColor4f(r, g, b, a); függvénnyel állítsuk be az átlátszósági (a) paramétert is.
- Állítsuk vissza a mélység puffert a normál állapotába: glDepthMask(GL_TRUE);
- Tiltsuk le a színkeverést: glDisable(GL_BLEND);
Megjegyzés: Ha az átlátszó objektumok modellezésének sorrendjét megváltoztatjuk, egészen más végeredményt kaphatunk!
Példaprogram
Nate Robins tutorial
 |
Windows: fog.exe
Linux: /pub/szgrafika/szamitogepes_grafika/Tutors.linux/fog
Bal egérgomb: paramétermódosítás. Jobb egérgomb: opciók (az alsó és a jobb felső panelen!).
|
Feladatok
Előadás kapcsolódó anyaga






