Hva er en OpenGL® Quad?

En OpenGL® Quadrilateral, eller Quad, innen dataprogrammering og grafikk er en tredimensjonal (3D) form, også kalt en polygon, som har fire sider og fire punkter. Hvert 3D -punkt som representerer et enkelt hjørne av OpenGL® Quad er kjent som et toppunkt og er definert med tre tall knyttet til koordinatposisjonen i det virtuelle rommet. Hjørnene til en quad trenger ikke å følge noen reelle retningslinjer, bortsett fra at det må være fire av dem; Ellers er formen kjent som en polygon, trekant eller linje avhengig av det faktiske tallet. De fleste digitale bilder er faktisk rektangulære, så en OpenGL® Quad kan være en nyttig form fordi bildet kan kartlegges tekstur til overflaten uten en stor mengde forvrengning og uten behov for komplekse teksturkartleggingsteknikker. Bruken av en OpenGL® Quad har imidlertid sine egne utfordringer, og det er en rekke programmerere som foreslår å unngå bruken av dem.

En av de viktigste bruksområdene for en OpenGL® Quad er å trekke todimensjonal (2D) grafikk i et 3D-miljø. Dette kan gjøres for å få et statisk brukergrensesnitt lagt på toppen av en 3D -scene eller for å etterligne 2D -grafikk med OpenGL®. Selv om OpenGL® var designet for å gjengi kompleks 3D -grafikk, brukes den ofte i 2D -grafikkapplikasjoner på grunn av optimaliseringene og fleksibiliteten til det abstrakte programmeringsgrensesnittet (API). En firhjul blir veldig viktig når det gjelder å gjengi 2D -grafikk, fordi det er en naturlig 3D -representasjon av et digitalt bilde, noe som betyr at en quad kan være proporsjonert for å nøyaktig samsvare med dimensjonen til bildet. Når proporsjonene stemmer overens, kan bildet bli kartlagt, eller projisert, på overflaten av firet uten noen form for forvrengning, innpakning eller rennestein.

En fordel med å bruke en OpenGL® Quad, ifølge noen programmerere, er at det er lettere å tenke på hvordan quads passer sammen, i motsetning til VIsualisering av hvordan trekanter passer sammen. Dette gjelder spesielt for enkle 3D -former som en kube der hver quad er en enkelt side; Med et trekantnett, må to trekanter kombineres for å lage en firhjul som lager en enkelt side. Quads kan også enkelt manipuleres for å skape perspektiv eller andre effekter i et miljø som enten er flislagt eller justert til et rutenett.

Det er noen ulemper med å bruke en OpenGL® Quad, mest på grunn av algoritmene som brukes til å raster eller gjengi et bilde i vinduet til betrakteren. Et av de mest oppståtte problemene er at gjengivelses- eller grafikkortet når som helst kan dele firet i to trekanter for effektivitet. Dette kan føre til at en ellers glatt overflate plutselig har en synlig forvrengning i en vinkel gjennom firkanten der kantene på trekantene møtes.

Et annet problem som er mer vanlig enn noen ganger antatt har å gjøre med klipping av en OpenGL® Quad. Når en del av firedningen er outside Visningsvinduet, utenfor skjermen, gjengivelsen vil klemte firhjulet slik at bare den synlige delen er gjengitt. Dette betyr at en firer vil bli geometrisk kuttet. Hvis firhjulet ble omgjort til to trekanter før utklippet oppstår, blir hver trekant en quad, og hver av disse firene blir omgjort til to trekanter. Dette fører til en situasjon der en klippet quad plutselig består av fire trekanter i stedet for en glatt firer.

Kompleksitetene og uforutsigbarheten av konvertering av quads til trekanter fører til uønskede resultater. Disse inkluderer forvrengninger i teksturer, unøyaktigheter eller gjenstander relatert til toppunktbelysning, og noen ganger manglende polygonoverflater. Av disse grunner unngår noen programmerere å brukes av firer.

ANDRE SPRÅK