Mis on OpenGL® kolmnurk?

OpenGL®-i kolmnurk on kõige elementaarsem kuju, mida OpenGL®-is saab moodustada ja millel on pind. Geomeetrias on kolmnurk kujund, mis koosneb kolmest punktist, millest igaüks on ühendatud joonega. OpenGL®-is tuntakse iga punkti, mis moodustab kolmnurga nurga, tipuna, mis on koordinaatide kogum kolmemõõtmelises (3D) ruumis. Kolmnurk on pinnaga kõige elementaarsem kujund, mis tähendab, et see on ka põhiüksus, mida kasutatakse antud stseenis kõigi suuremate kujundite loomiseks. OpenGL®-i kolmnurga kasutamise eeliseks teiste hulknurkade ees on tugi keerukamatele struktuuridele, nagu kolmnurkribad, kolmnurkventilaatorid ja kolmnurkvõrgud.

OpenGL® teegi üks eesmärke on pakkuda mehhanisme keerukate 3D-objektide kuvamiseks ja animeerimiseks, kasutades kogu saadaolevat riistvara, sealhulgas graafikakaarte ja graafikaprotsessoreid (GPU-sid). Kolmnurki kasutatakse 3D-graafikas nii laialdaselt, et enamik graafikakaarte on optimeeritud nii, et need renderdaksid kolmnurki kiiremini kui enamik teisi hulknurki. OpenGL®-is moodustatud objekt kasutab seda funktsiooni ära, teisendades suured ja keerulised objektid kolmnurkade jadaks. Tavaliselt kasutatav kujund, mida nimetatakse nelinurkseks või nelinurgaks, on lihtne ristkülik, kuid see koosneb kahest kolmnurgast, millel on üks serv. Kahe kolmnurga renderdamine on kiirem kui ristküliku renderdamiseks vajalike arvutuste tegemine.

Kuigi OpenGL®-i kolmnurga jada kasutamine suurema objekti konstrueerimiseks võib olla kontseptuaalselt lihtne, pakub teek funktsioone, mis muudavad ülesande lihtsamaks ja kiiremaks ning võivad potentsiaalselt vähem ruumi kasutada. Kõige tavalisemat nimetatakse kolmnurkseks ribaks. See on kujund, mis algab ühe OpenGL®-i kolmnurgaga ja võimaldab kasutajal määrata teise punkti, mis kahe eelmise punktiga ühendatuna moodustab teise ühendatud kolmnurga. Punktide määratlemise protsess võib jätkuda, lisades iga kord uue kolmnurga, määratledes ainult ühe lisapunkti, moodustades lõpuks pika kolmnurkade riba, mis edenedes vahelduvad vastamisi.

Riba abil saab moodustada veel ühe keeruka OpenGL® kolmnurga kuju, mida tuntakse kolmnurkvõrguna. Seda saab visualiseerida üksteise peale asetatud kolmnurga ribadena. Tulemus sarnaneb ruudustikuga, välja arvatud see, et iga ruut koosneb tegelikult kahest kolmnurgast. 3D-ruumis saab kolmnurkvõrku kasutada ebaühtlaste pindade, näiteks inimese näo või mäeaheliku pindade moodustamiseks.

Lõpuks saab OpenGL®-i kolmnurka kasutada ka kolmnurga ventilaatorina tuntud kuju moodustamiseks. Kolmnurga ventilaator algab ühe kolmnurgaga. Määratletakse neljas tipp, mis on ühendatud eelmise kolmnurgaga, moodustades uue kolmnurga. Erinevus kolmnurga ribast seisneb selles, et igal kolmnurgal ei ole mitte ainult üks külg eelmisega, vaid igal kolmnurgal on ka üks ühine lõpp-punkt, millest need kõik paistavad pärinevat. 3D-ruumis saab kolmnurga ventilaatori abil luua muid kujundeid, näiteks koonust või püramiidi.