Mis on kiirendatud OpenGL®-režiim?

Accelerated Open Graphics Library® (OpenGL®) režiim arvutigraafikas on olek, mille saab aktiveerida arvutigraafikakaardil, et kasutada graafikakaardi riistvaralisi võimeid, et täita mõnda või kõiki OpenGL®-i käske ja renderdusi, selle asemel, et vaikimisi seadistada. puhtalt tarkvarapõhine funktsionaalsus. Mitte kõik graafikakaardid ei toeta riistvarakiirendusega OpenGL®-i režiimi ja mõned, mis seda režiimi toetavad, ei kiirenda täielikult kõiki OpenGL®-i teegis saadaolevaid käske. Olenevalt konkreetses arvutis või seadmes kasutatavast riistvarast ja draiveritest võib kiirendatud OpenGL®-i režiim aeg-ajalt olla tegelikult aeglasem kui tarkvara renderdusrežiim, olgu siis konfliktide tõttu või lihtsalt seetõttu, et arvutiprotsessor on graafikaprotsessorist kiirem. Kiirendatud OpenGL®-i režiimi kasutavate rakenduste kirjutamisel võib režiimi täpne tuvastamine ja eranditult kasutamine olla keeruline, kuna kiirendatud režiimide käsitsemise rakendamine ei ole standardiseeritud ja võib draiverite lõikes oluliselt erineda.

OpenGL® graafikateek on abstraktne programmeerimisliides (API), mis pakub puhvrit graafika riistvara ja sellele juurdepääsuks kirjutatud tarkvara vahel. Üldiselt töötab OpenGL® klient-server mudeliga, mis tähendab, et tarkvarast saab klient, mis saadab seejärel joonistuspäringuid ja -teavet serverile, milleks tavaliselt on OpenGL®-i draiver ja riistvara. Kas operatsioonisüsteemi või graafikakaardi tootja pakutav draiver võib oma sisemiselt oluliselt erineda, seega pole mõned täiustatud riistvarafunktsioonid alati standardiseeritud. Riistvarakiirendusega OpenGL®-režiim on üks funktsioone, mille rakendamiseks jäetakse graafikakaartide tootjad.

Kui programm kasutab riistvarakiirendusega OpenGL®-i režiimi, siis tegelikult tehakse OpenGL®-i funktsioonikutse ja edastatakse see draiverile. Kui draiver tuvastab, et kiirendus on aktiivne või konkreetsel toimingul on otsene riistvaratugi, edastatakse funktsioon otse graafikakaardil asuvale graafikaprotsessorile (GPU). Kui kiirendus pole aktiivne või olemas, töödeldakse ja täidetakse käsku standardsete tarkvarakõnede ja algoritmide kaudu. Enamikul juhtudel tagab riistvarakiirendus palju kiirema renderdusaja kui puhas tarkvara.

Mõned graafikakaardid toetavad kiirendatud OpenGL®-i režiimi, kuid ainult kindla eraldusvõime ja värvisügavusega. See tähendab, et graafikakaart võib automaatselt kasutada kiirendatud režiimi, kui programm nõuab OpenGL®-i lähtestamisel kindlat eraldusvõimet ja värvisügavust. Graafika riistvara võib olla väga erinev, nii et see režiim ei ole alati ilmne ja mõnikord võib olla raske programmis automaatselt tuvastada ilma kasutaja sisendita. Lisaks sellele, et draiver ja riistvara peavad toetama kiirendatud OpenGL®-i režiimi, peab monitoril või kuvaseadmel olema ka natiivne tugi soovitud eraldusvõime ja värvisügavuse jaoks, vastasel juhul ei õnnestu kiirendatud režiimile lülituda ja see võib takistada programmi käivitamist.