A mai estén megpróbálok némi rendet rakni az enginem grafikai része körül vagyis megpróbálok választ kapni azokra a kérdésekre, hogy mit, hogyan, mikor, miért (nem) és miért éppen úgy rendereljek. Mindehhez szükséges tisztázni, hogy mi is szükséges a rendereléshez. Az első válasz természetesen az, hogy valamilyen (térbeli) geometria adatra (modellre) van szükség. Önmagában a modell nem tud annyira részletes lenni (vagy túl sok adat kellene ahhoz), hogy tökéletesen visszaadja azt a látványt, amelyről az készült. A megfelelő hatás eléréséhez textúrát feszítünk a modellre vagyis egy megadott kép egy részletét ráillesztjük rendereléskor egy háromszögre. Némi fizikával megfűszerezve a témát, használhatjuk itt az albedó kifejezést (adott felület adott hullámhosszon vett elektromágneses hullám visszaverő képessége - vagyis milyen színűnek látjuk...): a felhasznált kép adott pontossággal tárolja egy felület albedóját.
Tehát kiindulási pontnak tekintsünk egy képet (image), amelyet egy pixel tömbként tömörítve vagy tömörítés nélkül tárolunk. Ezt a többnyire 2d-s pixel tömböt fogja a videokártya felhasználni a renderelés során textúraként, amelynek elemeit már texeleknek hívjuk. Szerintem azonban létezik egy köztes, "elméleti" állapota a textúrának, amelyet mapnek nevezünk. Ez már utal az adott textúra felhasználási módjára (maga a textúra ritkán utal a felhasználási módjára) ill. magára a renderelési technikára vagyis megadott funkciónak megfelelő adatokat tárol, megfelelő formában. Egy adott felületnek megfelelő map csoportot talán hívhatunk materialnak, mivel ugyanazt a felületet írják le, de eltérő szempontokból. Azonban azt, hogy mik ezek a szempontok a renderelési technika befolyásolja tehát célszerűbbnek látom a mapeket a renderelés alapján materialokba rendezni és utána azokat példányosítani felületek alapján.
Azt hiszem a legtöbb renderelési típushoz szükséges a felület albedóját leíró map. Hogy hogyan tároljuk az egy külön történet itt csak annyit érdemes megemlíteni, hogy manapság 3 csatornán (RGB) tároljuk. Talán ennek a mapnek létezik a legtöbb neve: a leggyakoribb a diffuse map, de találkozhatunk vele color mapként, diffuse albedo mapként és ritkán, de helytelenül decal mapként is.
Viszonylag egyszerű a felhasználása a mask mapnek közismertebb nevén alpha masknak. Ez egy olyan képnek felel meg, amelynek pixelei egy logikai változót jelentenek azaz eldönti, hogy azt a renderelés eldobja vagy sem. Elméletileg elég egy bit egy pixel tárolásához. Az alpha mask elnevezés onnan ered, hogy nagyon sokszor egy textúra alfa csatornájába töltik fel ezt a mapet (főleg hatékonysági szempontok miatt mivel a fenn említett eldobás így alpha testtel könnyen elvégezhető).
A mask mappel némileg rokonságban áll a transparency map ill. annak ellentéte az opacity map. Az előbbi egy felület átlátszóságát, az utóbbi a felülelet átlátszatlanságát tárolja intenzitás értékként.
Az egyszerűen felhasználható mapek közé tartozik még az emissive map más néven glow map. A felület színét módosítja oly módon, hogy hozzáadódva a diffuse maphez fénykibocsájtó tulajdonságot kölcsönöz neki. Általában RGB csatornákban tárolják, ritkán egy egycsatornás intenzitás értékként.
Létezik még ambient map, amely általában a modell elkészültekor készül el többnyire egy raytracer algoritmussal.
Most következzenek azok a mapek, amelyek felhasználása már bonyolultabb és nem ennyire egyértelmű. Elsőként említsük meg a height mapet félrevezető nevén bump mapet. Ez a felület síkjához mért magasság különbségeket tárolja intenzitásként. Használata sokrétű: készülhet belőle normal map, de felhasználható közvetlenül rendereléshez is.
A normal map a nevéből adódóan normál vektorokat tartalmaz, amelyek a felület normálvektorához képest relatívak vagy abszolút értelemben vett, a világban mért normálokat tárolhat. Relatív vektorok esetén már elegendő két csatorna is ehhez ellenkező esetben mindenképp három csatorna szükséges.
A specular map a felület fényvisszaverő képességét tárolja általában egy csatornán, de specular color mapként RGB csatornákon is tárolhat színt. Ebbe a témakörbe tartozik még a glossiness map, amely a felület simaságát veszi figyelembe bár én nem látom különösebb jelentőségét.