Hvad er en OpenGL® trekant?
En OpenGL® trekant er den mest basale form, der kan dannes i OpenGL® og har en overflade. I geometri er en trekant en form, der er lavet af tre punkter, der hver sammenføjes af en linje. I OpenGL® er hvert punkt, der danner et hjørne af trekanten, kendt som et toppunkt, som er en samling af koordinater i tredimensionelt (3D) rum. En trekant er den mest basale form med en overflade, hvilket betyder, at den også er baseenheden, der bruges til at skabe alle større former inden for en given scene. En fordel ved anvendelse af en OpenGL® trekant i forhold til andre polygoner er understøttelsen til mere komplekse strukturer såsom trekantstrimler, trekantventilatorer og trekantmasker.
Et af formålene med OpenGL®-biblioteket er at tilvejebringe mekanismer til visning og animation af komplekse 3D-objekter ved at bruge al tilgængelig hardware, herunder grafikkort og grafikbehandlingsenheder (GPU'er). Trekanter er så vidt brugt i 3D-grafik, at de fleste grafikkort er optimeret til at gengive trekanter hurtigere end de fleste andre polygoner. Et objekt dannet i OpenGL® drager fordel af denne funktion ved at konvertere store og komplekse objekter til en sekvens af trekanter. En almindeligt anvendt form, kaldet en firedobler eller er firkantet, er et simpelt rektangel, men det er lavet af to trekanter, der deler en enkelt kant. Det er hurtigere at gengive de to trekanter end at udføre de nødvendige beregninger for at gengive et rektangel.
Selvom det kan være konceptuelt enkelt at bruge en OpenGL® trekantsekvens til at konstruere et større objekt, indeholder biblioteket funktioner, der kan gøre opgaven lettere og hurtigere og potentielt bruge mindre plads. Den mest almindelige kaldes en trekantstrimmel. Dette er en form, der begynder med en enkelt OpenGL® trekant og giver brugeren mulighed for at definere et andet punkt, der, når det er tilsluttet de foregående to punkter, danner en anden tilsluttet trekant. Processen med at definere punkter kan fortsætte og tilføje en ny trekant hver gang ved kun at definere et yderligere punkt og i sidste ende danne en lang stribe trekanter, der skiftevis vender mod hinanden, når de skrider frem.
En strimmel kan bruges til at danne en anden kompleks OpenGL® trekantform kendt som et trekantnet. Dette kan visualiseres som en sekvens af trekantstrimler, der er foret op på den ene oven på den anden. Resultatet ligner et gitter, bortset fra at hver firkant faktisk består af to trekanter. I 3D-rum kan et trekantnet bruges til at danne ikke-ensartede overflader, som f.eks. Et menneskeligt ansigt eller en bjergkæde.
Endelig kan en OpenGL® trekant også bruges til at danne en form kendt som en trekantventilator. En trekantventilator begynder med en enkelt trekant. Et fjerde toppunkt er defineret, og det er forbundet til den forrige trekant, og danner en ny trekant. Forskellen fra en trekantstrimmel er, at ikke kun hver af trekanterne deler en side med den forrige, men de deler også et enkelt fælles slutpunkt, hvorfra de alle ser ud til at stamme. I et 3D-rum kan en trekantventilator bruges til at oprette andre former, såsom en kegle eller pyramide.