Što je OpenGL® Text?

OpenGL® tekst opisuje bilo koji računalni font koji se, kroz niz različitih metoda, pojavljuje kao element unutar OpenGL® scene. Ne postoji urođena sposobnost OpenGL®-a da prikaže tekst unutar trodimenzionalne (3D) scene, a zapravo ne postoje intrinzični načini za preklapanje teksta sustava unutar okvira međuspremnika. To je dovelo do stvaranja različitih neovisnih knjižnica koje pokušavaju učiniti korištenje OpenGL® teksta što jednostavnijim. Postoje tri osnovne metode stvaranja OpenGL® teksta: mapiranje teksture, geometrija i bitmap. Svaki od njih ima prednosti i nedostatke, a najveći nedostatak za gotovo sav OpenGL® tekst je smanjenje brzine renderiranja.

Ne postoji mehanizam za prikaz teksta u OpenGL®-u, uglavnom zato što je svrha knjižnice pružiti hardverski ubrzanu 3D grafiku. Prikaz fontova ili drugog teksta ne smatra se nužnim dijelom OpenGL® biblioteke funkcija. Umjesto toga, programeri softvera i operacijskih sustava osigurali su neovisne knjižnice u pokušaju da olakšaju korištenje teksta unutar 3D okruženja.

Korištenje bitmap OpenGL® teksta može se izvesti na nekoliko načina, ali to je daleko jedna od najjednostavnijih metoda za implementaciju. Ovaj proces počinje s jednom bitmapiranom slikom cijelog skupa fontova koji će se koristiti. Kada se riječ treba prikazati na ekranu, pojedinačna slova se kopiraju iz bitmape i raspoređuju na OpenGL® teksturu. Ova tekstura, koja sada sadrži cijeli niz, zatim se preslikava na četverokut i postavlja ispred scene tako da prekriva ostatak 3D objekata.

Također je moguće koristiti geometriju za stvarno konstruiranje OpenGL® teksta. To uključuje korištenje fonta koji ima dvodimenzionalne (2D) vektorske informacije o tome kako nacrtati svako slovo. Ovi vektori su prevedeni u vrhove i trokute, čineći svako slovo vlastitim modelom. Za prikaz niza teksta s geometrijskim fontovima, modeli samo trebaju biti poređani ispravnim redoslijedom u sceni. Jedna od prednosti ove metode je da se tekstualni modeli mogu lako ekstrudirati u 3D slova poput blokova.

Posljednja uobičajena metoda koja se može koristiti za prikaz OpenGL® teksta je korištenje jednostavne unaprijed izrađene mape teksture. Ovo je slika na kojoj je željeni tekstualni niz već nacrtan na način na koji bi se trebao pojaviti unutar scene. Slika se tada može primijeniti na bilo koji objekt, prikazujući tekst kada se objekt renderira. Mape tekstura uglavnom su učinkovite za statični tekst, kao što su riječi na bočnoj strani modela 3D kartonske kutije. To je jedan od najjednostavnijih načina za prikaz teksta koji ima ispravan razmak i kerning.