Vilka är de olika typerna av OpenGL®-tillägg?

Det finns ett antal olika OpenGL®-tillägg, som oftast används för att hantera och underhålla den ordnade strukturen för OpenGL®-biblioteken. Det finns fyra huvudtyper av OpenGL®-tillägg: leverantör, godkänd, generisk och kärna. Godkända, generiska tillägg och kärntillägg betecknar alla funktioner och bibliotek som på något sätt rör sig på vägen mot att inkluderas i den allmänna distributionen av OpenGL®-utvecklingspaketet. Leverantörstillägg är skräddarsydda funktioner som gäller specifika hårdvaru- eller mjukvarumiljöer. Det finns några andra typer, även om de är mer för underklassificering av de många tillägg som finns.

En av anledningarna till att det finns olika typer av OpenGL®-tillägg är på grund av den utbredda användningen av kärnbiblioteken och den potentiellt förvirrande mängden proprietär kod som skapas för att utöka den. OpenGL® Architecture Review Board (ARB) hjälper till att underhålla och upprätthålla OpenGL®-standarden och hantera tillägg. Många tillägg börjar antingen som leverantörstillägg eller allmänt förekommande tillägg och kan med tiden användas av flera leverantörer, vilket ger titeln en generisk tillägg. Generiska tillägg kan sedan granskas av ARB och bli ARB-godkända tillägg som med största sannolikhet kommer att ansluta sig till kärntilläggen.

Leverantörens OpenGL®-tillägg är funktioner som implementeras av tillverkare av grafikhårdvara eller operativsystem. Dessa typer av tillägg gör det möjligt för en tillverkare att förbättra eller introducera ny funktionalitet till sin grafikprestanda och sedan göra dessa förbättringar tillgängliga för OpenGL®-program. Alla leverantörstillägg börjar med en ARB-tilldelad kod för att representera tillverkarens namn, vilket indikerar i vilken miljö funktionen kan vara tillgänglig.

Generiska OpenGL®-tillägg är funktioner som har använts och implementerats av flera tillverkare och som inte längre behöver betecknas med speciella leverantörsprefixkoder. Alla generiska tillägg behöver inte implementeras för att upprätthålla överensstämmelse med OpenGL®-standarden. Ett generiskt tillägg använder prefixet GL_EXT före namnet på funktionen eller konstanten.

Godkända OpenGL®-tillägg är de som har antagits av mer än en tillverkare och har granskats av ARB, vilket gör att de kan bli en del av det normala OpenGL®-biblioteket. Funktioner av denna typ implementeras i allmänhet av alla tillverkare, oavsett vilken leverantör som faktiskt uppfann tillägget och oavsett om de andra leverantörerna har hårdvara som kan stödja de efterfrågade funktionerna. Denna typ av tillägg har prefixet GL_ARB.

Core OpenGL®-tillägg är funktioner som kan uppgradera prestandan för äldre program genom att tillåta anrop till tidigare versioner av OpenGL®-funktionen att exekvera den senaste koden. När nya OpenGL®-versioner släpps kan de nya kärntilläggen anropas sömlöst från ett äldre program utan att behöva ändra någon av källkoden. Trots bekvämligheten med att förbättra bakåtkompatibiliteten kan kärn OpenGL®-tillägg fortfarande skrivas av över tiden.