Hva er en OpenGL® polygon?

En Open Graphics Library® (OpenGL®) polygon er et hvilket som helst objekt som er laget i OpenGL® som består av mer enn to hjørner. I hovedsak regnes ethvert objekt som ikke er et punkt eller en linje som en polygon. OpenGL®, så vel som de fleste grafikkort, har vanligvis spesielle optimaliseringer for å forholde seg primært til trekanter, eller tre-sidige polygoner, fordi trekanter er den enkleste typen polygon som kan gjøres med færrest hjørner og sider. I noen tilfeller kan firedoblinger eller firsidede polygoner håndteres av OpenGL®, hovedsakelig i todimensjonale (2D) tegningsmodi. Med unntak av en konveks, enkel OpenGL®-polygon, vil de fleste former med mer enn tre hjørner til slutt bli brutt ned i trekanter gjennom en prosess som kalles tessellering, som kan ha dramatiske uønskede effekter på en scene.

Den eneste typen OpenGL®-polygon som kan tegnes innfødt uten behov for tessellering, er kjent som en ganske enkel polygon. Denne formen følger noen veldig enkle regler. Sidene må være konvekse, noe som betyr at de ikke skaper vinkler i hjørnene under 90 °. Ingen kanter kan krysse hverandre, og bare to linjer kan møtes i et gitt toppunkt. Dette begrenser en enkel polygon til en 2D selvforsynt form, for eksempel en firkant eller en åttekant, fordi hvis det var tredimensjonalt (3D), ville mer enn to linjer møtes på noen toppunkt.

Når du konstruerer en veldig kompleks OpenGL®-polygon, er det ofte lettere å lage objektet i et eksternt 3D-modelleringsprogram. Dette tillater ikke bare et mer praktisk, visuelt miljø å bygge et objekt på, men har den ekstra fordelen med å gi designeren kontroll over hvordan figurer er tessellert slik at de ikke skaper problemer når de gjengis. Alternativt kan en polygon opprettes prosessuelt gjennom algoritmer som plotter vertiksene i henhold til et mønster, slik det kan gjøres for å lage en helix eller spiralmønster.

Hver OpenGL®-polygon har et ansikt, det faste området innenfor formlinjene. Selv om det er mulig å endre denne oppførselen, er hver polygon generelt bare synlig når ansiktet peker mot visningskameraet. Hvis en polygon vender feil vei, kan den bli usynlig, avhengig av gjengivelsesmodus.

Hver OpenGL®-polygon har også en verdi kjent som en normal. Normalen brukes til å definere retningen overflaten til polygonet vender mot. Selv om mangekantet er tydelig i en viss vinkel og i en bestemt posisjon, kan overflatenormalt bidra til å skape spesielle tekstureffekter eller etterligne fysiske egenskaper som ikke er ensartede. En normal for en OpenGL®-polygon kan settes til hvilken som helst verdi, til og med negative verdier, selv om resultatene kan være uforutsigbare.

ANDRE SPRÅK

Hjalp denne artikkelen deg? Takk for tilbakemeldingen Takk for tilbakemeldingen

Hvordan kan vi hjelpe? Hvordan kan vi hjelpe?