Mis on OpenGL® tekst?

OpenGL®-i tekst kirjeldab mis tahes arvutifonti, mis mitmel erineval viisil kuvatakse OpenGL®-stseenis elemendina. OpenGL®-il puudub loomupärane võime kuvada teksti kolmemõõtmelises (3D) stseenis ja tegelikult pole kaadripuhvris süsteemiteksti katmiseks loomupäraseid viise. See on viinud erinevate sõltumatute teekide loomiseni, et OpenGL®-i teksti kasutamine oleks võimalikult lihtne. OpenGL®-i teksti loomiseks on kolm põhimeetodit: tekstuuri vastendamine, geomeetria ja bitmap. Igal neist on eelised ja puudused, kusjuures peaaegu kogu OpenGL®-i teksti suurim puudus on renderduskiiruse vähenemine.

OpenGL®-is teksti kuvamise mehhanism puudub, peamiselt seetõttu, et teegi eesmärk on pakkuda riistvaraliselt kiirendatud 3D-graafikat. Fontide või muu teksti kuvamist ei peeta OpenGL®-i funktsioonide teegi vajalikuks osaks. Selle asemel on tarkvara ja operatsioonisüsteemide arendajad pakkunud sõltumatuid teeke, et hõlbustada teksti kasutamist 3D-keskkonnas.

Bitmap OpenGL®-i teksti saab kasutada mitmel viisil, kuid see on vaieldamatult üks lihtsamini rakendatavaid meetodeid. See protsess algab ühe bitmapitud kujutisega kogu kasutatavast fondikomplektist. Kui sõna on vaja ekraanil kuvada, kopeeritakse üksikud tähed bitmapilt ja paigutatakse OpenGL® tekstuurile. See tekstuur, mis sisaldab nüüd täielikku stringi, kaardistatakse seejärel nelinurgale ja asetatakse stseeni ette, nii et see katab ülejäänud 3D-objektid.

Samuti on võimalik OpenGL®-i teksti tegelikuks konstrueerimiseks kasutada geomeetriat. See hõlmab fondi kasutamist, millel on kahemõõtmeline (2D) vektoripõhine teave iga tähe joonistamise kohta. Need vektorid tõlgitakse tippudeks ja kolmnurkadeks, muutes iga tähe oma mudeliks. Geomeetriliste fontidega tekstistringi kuvamiseks tuleb mudelid lihtsalt stseenis õiges järjekorras rivistada. Selle meetodi üheks eeliseks on see, et tekstimudeleid saab hõlpsasti välja pressida, et moodustada plokitaolisi 3D-tähti.

Viimane levinud meetod, mida saab kasutada OpenGL®-i teksti kuvamiseks, on kasutada lihtsat eelnevalt valmistatud tekstuurikaarti. See on pilt, millel soovitud tekstistring on juba joonistatud nii, nagu see peaks stseenis ilmuma. Seejärel saab pilti rakendada mis tahes objektile, näidates teksti objekti renderdamisel. Tekstuurikaardid on enamasti tõhusad staatilise teksti, näiteks 3D-pappkarbi mudeli küljel olevate sõnade puhul. See on üks lihtsamaid viise, kuidas näidata teksti, millel on õiged tühimikud ja keringud.