Millised on OpenGL®-i efektide tüübid?

Segamise, pinnanormaalide skaleerimise, materjalide ja valgustuse abil on võimalik saavutada mitmeid OpenGL®-i efekte. OpenGL® ei toeta tegelikult otseselt paljusid eriefekte, nagu mõned graafikakaardid, kuid see pakub tööriistu, nagu OpenGL®-i varjundikeel (GLSL), mis võimaldab mõningaid OpenGL®-i efekte suhteliselt lihtsalt luua. Stseeni stilistilisema renderdamise tagamiseks saab kasutada põhiefekte, nagu udu, servatuvastus ja valgustusnipid, samas kui selliseid efekte nagu tõeliselt peegeldavad pinnad, mahulised varjud ja dünaamiliselt animeeritud tekstuurid saab kasutada väga realistliku stseeni paljastamiseks.

Üks kõige elementaarsemaid OpenGL®-i efekte, mida paljudes rakendustes võib leida, on antialiasing. See hõlmab renderdatud pikslite seeria võtmist ja seejärel nendevaheliste tühikute arvutamist, et luua vaheastmeid ja neid ümbritsevaid värve. Lõpptulemuseks on stseen, mis võib mõnikord tunduda pisut udune, millele on lisatud pehmust kõik joonistatud kõvad servad. Enamik graafika riistvara toetab kiirendatud antialiasi, kuna see vähendab ebaatraktiivset pikslimist ekraanil.

Paljud programmeerijad, kes alles alustavad, on üllatunud, kui saavad teada, et stseeni sees olevad varjud on tegelikult üks spetsiaalsetest OpenGL®-i efektidest, mis tuleb selgelt programmeerida ja mida vaikimisi ei esine. Selle efekti saab saavutada, renderdades mudeli piirjooned šabloonipuhvrisse ja projitseerides seejärel selle šablooni tasapinnale, mis asetatakse stseeni sobiva nurga all. Keerulisemate segamistehnikate abil saab teha ka oma sügavuselt realistlikumaid varje.

OpenGL®-i kasutatav valgusmudel ei arvuta tegelikult valguskiirte põrgatamist stseenis viisil, mis on kooskõlas füüsilise maailmaga. See on viinud tõeliselt peegeldavate pindade väljatöötamiseni, mis on üks populaarsemaid OpenGL®-i efekte. Seda tüüpi efekt renderdab stseeni sisuliselt pildile erineva nurga alt ja seejärel kasutab seda pilti peegeldava pinna tekstuurina. Kuigi see on arvutuslikult kallis, võib see aidata stseenis realistlikkust jäljendada.

Üks üldisemaid ja enim kasutatavaid OpenGL®-i efekte, mida varjunditega saab teostada, on osakeste süsteem. See on viis, kuidas rakendada stseeni elementidele algoritme, tavaliselt fraktaalalgoritme, et pakkuda objekte või muid elemente, mis võivad näida liikuvat või orgaanilisi omadusi kuvavat, kuigi need omadused on tegelikult staatilise valemi tulemus. Osakeste süsteeme saab OpenGL®-is kasutada, et simuleerida põlevat tuld, lindude liikumist või isegi pilvede kuju taevas.