Kaj je pospešeni način OpenGL®?

Način Accelerated Open Graphics Library® (OpenGL®) v računalniški grafiki je stanje, ki ga je mogoče aktivirati v računalniški grafični kartici, da uporabi zmogljivosti strojne opreme grafične kartice za izvajanje nekaterih ali vseh ukazov in upodabljanja OpenGL®, namesto da bi privzeto funkcionalnost, ki temelji izključno na programski opremi. Vse grafične kartice ne podpirajo načina OpenGL®, pospešenega s strojno opremo, in nekatere, ki podpirajo način, ne pospešijo v celoti vseh ukazov, ki so na voljo v knjižnici OpenGL®. Glede na strojno opremo in gonilnike, ki se uporabljajo v določenem računalniku ali napravi, je lahko pospešeni način OpenGL® občasno dejansko počasnejši od načina upodabljanja programske opreme, bodisi zaradi konfliktov ali samo zato, ker je računalniški procesor hitrejši od grafičnega procesorja. Pri pisanju aplikacij, ki uporabljajo pospešeni način OpenGL®, je lahko težko natančno zaznati in uporabljati izključno način, ker izvedba ravnanja s pospešenimi načini ni standardizirana in se lahko zelo razlikuje od enega gonilnika do drugega.

Grafična knjižnica OpenGL® je abstraktni programski vmesnik (API), ki zagotavlja medpomnilnik med grafično strojno opremo in programsko opremo, napisano za dostop do nje. Na splošno OpenGL® deluje z modelom odjemalec-strežnik, kar pomeni, da programska oprema postane odjemalec, ki nato pošlje zahteve za risanje in informacije strežniku, ki je običajno gonilnik in strojna oprema OpenGL®. Gonilnik, ki ga zagotavlja bodisi operacijski sistem bodisi proizvajalec grafične kartice, se lahko zelo razlikuje po svoji notranji izvedbi, zato nekatere naprednejše funkcije strojne opreme niso vedno standardizirane. Strojno pospešen način OpenGL® je ena od funkcij, ki je prepuščena proizvajalcem grafičnih kartic za implementacijo.

Ko program uporablja strojno pospešen način OpenGL®, se dejansko zgodi, da se izvede klic funkcije OpenGL® in se posreduje gonilniku. Če gonilnik zazna, da je pospeševanje aktivno ali da ima določena operacija neposredno strojno podporo, se funkcija prenese neposredno na grafično procesno enoto (GPU), ki se nahaja na grafični kartici. Če pospeševanje ni aktivno ali prisotno, bo ukaz obdelan in izveden prek standardnih klicev programske opreme in algoritmov. V večini primerov strojno pospeševanje zagotavlja veliko hitrejši čas upodabljanja kot čista programska oprema.

Nekatere grafične kartice podpirajo pospešeni način OpenGL®, vendar le pri določeni ločljivosti in barvni globini. To pomeni, da lahko grafična kartica samodejno uporabi pospešeni način, če program, ko inicializira OpenGL®, zahteva določeno ločljivost in barvno globino. Grafična strojna oprema je lahko zelo različna, zato ta način ni vedno očiten in ga je včasih težko samodejno zaznati znotraj programa brez uporabniškega vnosa. Poleg tega, da morata gonilnik in strojna oprema podpirati pospešeni način OpenGL®, mora monitor ali zaslonska naprava imeti tudi izvorno podporo za zahtevano ločljivost in barvno globino, sicer preklop v pospešeni način ne bo uspel in bi lahko preprečil izvajanje programa.