Az OpenGL története és általános jellemzõi
 

    Az OpenGL-t (akkor még IrisGl) a Silicon Graphics (SGI) nevû amerikai cég fejlesztette ki, eredetileg saját grafikus munkaállomásainak programozására. Ezek a munkaállomások nagyon gyors grafikus célhardverek voltak, amelyek ultragyorsan végeztek olyan mûveleteket, amelyek szükségesek a grafikai számításokban, így a Silicon Graphics számítógépek rendkívül gyorsan végeztek például mátrixtranszformációkat. Azért, hogy a programokat más rendszerekre is át lehessen vinni, az SGI átdefiniálta az IrisGl-t, és az OpenGL nevet adta neki. Az egyik legfontosabb szempont az OpenGL kifejlesztésénél a hordozhatóság volt, ezért az OpenGL, az IrisGl-el szemben más rendszerek felé is nyitott (OpenGL = Open Graphics Library). Az elsõ OpenGL specifikációt 1992 júl. 1-én mutatták be. Öt nappal késõbb, a legelsõ Win32 fejlesztõi konferencián az SGI az OpenGL mûködését egy Iris Indigo gépen demonstrálta több grafikus alkalmazáson keresztül, mint pl. orvosi képfeldolgozó rendszerek, ill. részletek a Terminator 2 címû filmbõl. Ezután az SGI és a Microsoft együtt fejlesztették tovább az OpenGL-t.
    Az OpenGL egy szoftver interfész a grafikus hardverhez. Ez a szoftver interfész pár száz eljárásból és függvénybõl áll, melyek lehetõvé teszik 2 és 3 dimenziós grafikai objektumok létrehozását, és ezeken az objektumokon mûveletek elvégzését. Az OpenGL tehát egy eljárás- és függvénygyûjtemény, melyek 2 és 3 dimenziós geometriai objektumok specifikációját tartalmazzák; ezenkívül olyan eszközöket is nyújt, melyekkel szabályozni lehet ezen objektumok leképezését a képpufferbe, amelyben az OpenGL az eredményként létrejövõ képet tárolja. Ennek megjelenítése már az operációs rendszer, vagy az ahhoz tartozó ablakozó rendszer feladata.  Itt elérkeztünk egy fontos dologhoz: az OpenGL nem tartalmaz ablakozó rendszert, és nem támogatja az input eszközök kezelését sem, tehát ezeket a dolgokat az adott nyelven a programozónak kell megoldania (késõbb majd látni fogjuk, hogy azért mégsem ennyire rossz a helyzet).
    A Unix-os (Linux-os)  OpenGL rendszerek grafikus felülete többnyire az X-Window, amely tartalmazza az ablakozást. Windows 95, 98 és NT esetén maga az operációs rendszer szolgáltatja a grafikus felületet. Az OpenGL platformfüggetlenségét az adatbeviteli és megjelenítési rendszertõl való függetlenség biztosítja. Ugyanezen okok miatt az OpenGL nem tartalmaz olyan parancsokat sem, amelyek magasszintû háromdimenziós objektumok specifikálására szolgálnak, így ezeket a modelleket geometriai primitívekbõl kell felépíteni (vonalak, pontok, sokszögek).
    Az OpenGL az ügyfél-kiszolgáló (kliens-szerver) felépítést követi. Ezáltal lehetõvé válik, hogy a grafikus alkalmazást futtató, és a végeredményt létrehozó gép egyazon, vagy két különbözõ gép legyen. A grafikus alkalmazás - mint ügyfél - parancsokat ad az OpenGL kiszolgálónak, amely létrehozza a képet. Mivel a parancsok átadására szabványos protokollt dolgoztak ki, ezért az ügyfél és a kiszolgáló gépek különbözõ típusúak is lehetnek.

-> következõ oldal
<- elõzõ oldal
<--fõoldal