Render

A HupWiki-ből...

Háromdimenziós látványt leíró adatszerkezetekből egy konkrét kétdimenziós kép előállítása. Tipikus lépések általában (ezek némelyike hiányozhat, más sorrendben történhet, stb.):

  • Tárgyak transzformációja lokális koordinátákból világkoordinátákba.
  • Görbefelületek esetén: felületek közelítése háromszögekkel.
  • Felesleges felületek (túl távol, túl közel, rossz irányba néz) kiszórása.
  • Egyes textúrákkal közelített effektusok (pl. radiozitás (indirekt megvilágítás)) textúráinak előszámítása.
  • A kapott felületek (háromszögek) megjelenítése.

Ez utóbbi lépés két fő csoportba sorolható:

  • Háromszögenként -- iteráció a háromdimenziós leírás alapelemein. Minden egyes térbeli háromszöget az adott textúrákkal, megvilágítással, a takarás valamilyen figyelembevételével (megfelelő sorrendezés vagy takarási puffer) egyenként kirajzolnak. Előnye a nagyobb sebesség, hátránya a szintetikusabb, idegenszerűbb látvány.
  • Képpontonként -- iteráció a kétdimenziós látvány alapelemein. Minden egyes képponthoz külön számítják ki az ott látott színt. Ilyen módszer például a sugárkövetés ("ray tracing"), amivel a szembe jutó fénysugarak visszafelé követése révén tetszőleges formájú árnyékok, fénytörés, tükröződés, stb. is ábrázolható. Előnye a nagyobb valósághűség, hátránya a nagyobb számítási idő.

Ez persze csak igen elnagyolt, mintegy gyűjtőleírása az egész folyamatnak, amelyet az adott igények szerint millió módon szoktak variálni. A Quake-típusú akciójátékokban például a vetett fény-árnyék viszonyokat a pálya generálásakor előre (egyszer) kiszámítják és egyszerű textúrákként viszik fel. A Maya-típusú, élethű környezeteket filmre vivő programokban viszont a képkockánként több órás renderelés sem szokatlan, így nyilván jóval több részlet helyes kiszámítására jut idő.