Skip to main content

Vad är en OpenGL Sfär?

Ett öppet grafikbibliotek reg;(OpenGL ) Sphere, på den mest grundläggande nivån, är ett tredimensionellt (3D) -objekt som består av en serie trianglar eller fyrkantiga vars vertikaler alla är likadant från en mittpunkt.Detta betyder att när en OpenGL Sfär betraktas från valfri vinkel, konturen visas som en perfekt cirkel för tittaren, även om belysning och skuggning kan ge volymen ett mer bollliknande utseende.Antalet toppar som används för att skapa en openGL reg;Sfär bestämmer objektets jämnhet i dess tillnärmning av en verklig sfär, med mindre än 12 poäng som skapar ett objekt som inte kan betraktas som en sfär.Även om en sfär anses vara en form primitiv i många grafiska tillämpningar och bibliotek, OpenGL har ingen medfödd funktionalitet för att göra en sfär, vilket innebär att kompletterande verktygssatser som OpenGL Utility Toolkit (GLUT) måste användas för att undvika att skriva kod för att manuellt generera formen.

När man hanterar vertikaler i OpenGL , den minsta mängden punkter som kan användas för att generera en sfär med viss grad av smidighet är 12, är 12,Skapa ett objekt med 20 triangulära ansikten kända som en icosahedron.Utan ytterligare bearbetning, en OpenGL Sfär konstruerad på detta sätt kommer att ha synliga skarpa hörn runt kanterna, vilket kan vara acceptabelt för vissa applikationer.Sfär innebär att skapa nya toppar i mitten av varje kant i varje befintlig triangel.Detta innebär att varje triangulärt ansikte nu kommer att innehålla fyra trianglar.Underavdelningen kan fortsätta så mycket som krävs, även om att lägga till punkter exponentiellt snabbt kan skapa ett objekt som har en hög renderingstid och kan bli svår att översätta.

Trots några av de matematiska bekvämligheterna är en openGL reg;Sfär tillhandahåller programmerare, såsom ytnormaler som lätt kan beräknas från topp -koordinaterna, och strukturering av en sfär kan presentera vissa komplexiteter.Att använda en standard tvådimensionell (2D) textur som projiceras på sfären innebär att de övre och nedre områdena på texturbilden kommer att komprimeras, eftersom formen på trianglarna nära sfärens poler komprimeras själva.För att övervinna detta kan kubkartning användas eller programmeraren skulle kunna generera textarkoordinaterna manuellt för objektet.

En faktor bör noteras om att använda ett verktygsbibliotek för att generera en OpenGL sfär.En sfär som genereras av GLUT eller liknande verktygssatser kan ibland vara svåra att modifiera, optimera och hantera inom OpenGL sig.Av denna anledning är det ibland fördelaktigt att använda anpassad skriftlig kod för att generera en OpenGL sfär så att den skapas och kan användas på det mest effektiva sättet som möjligt inom programmet.