Vad är en OpenGL® -klass?
En OpenGL®-klass kan antingen hänvisa till en objektorienterad implementering av delar av OpenGL® Abstract Programming Interface (API), eller till en klass som använder OpenGL®-funktionssamtal inom sin egen kod. Arten av OpenGL® -biblioteket innebär att det verkligen inte fanns något stöd för en objektorienterad version av API, och de flesta program kallade funktionerna som de skrevs utanför en klass. När objektorienterade språk blev vanligare tycktes olika OpenGL® -klassbibliotek fungera som omslagsobjekt för kärnbiblioteket. Det finns fördelar med att använda en OpenGL® -klass som har realiserats fullt ut istället för bara insamlingen av funktioner som tillhandahålls i biblioteket, inklusive kapsling och ett sätt att härleda nya funktionella klasser genom arv samtidigt som den grundläggande implementeringen skyddas. Inte alla utvecklare använder ett OpenGL® -klassbibliotek, eftersom det kan vara förvirrande att byta till helt objektorienterade programmeringsparadigmer.
i objektorienterad ProGrammning, en klass är en samling data, variabler och funktioner, kallade metoder, som modifierar den information den innehåller. Ursprunget till OpenGL® som ett bibliotek med funktioner för C -programmeringsspråket, som inte var ett objektorienterat språk, betyder några av metoderna och programmeringsmetoderna som utvecklades var inte väl lämpade för objektorienterad programmering. När vissa operativsystem och andra enheter började förlita sig mer på objektorienterade språk kom flera OpenGL® -klassbibliotek till.
Några av OpenGL® -klassbiblioteken kapslade helt enkelt in de grundläggande OpenGL® -funktionerna. Detta gav en säker och kompatibel ram för programmering. Även om denna typ av klass var nödvändig för vissa språk krävde det fortfarande att stödklasser skulle göras till en funktionell applikation. Verkligen organiserade bibliotek delade faktiskt OpenGL® -funktionerna i enserie klasser, med var och en som hanterar ett annat element i biblioteket, till exempel rendering.
Ett antal OpenGL® -klassbibliotek började expandera på den grundläggande OpenGL® -motoren och började inkludera mer funktionalitet. Detta inkluderade främst en speciell klass för att hantera föremålen i en scen, kallad en scengraf. Dessa klasser fungerade som omslag för kärnbiblioteken medan de tillhandahöll en logisk struktur som kunde byggas på för att skapa ett program som gjorde mer än att göra en scen och utgång utan att behöva uppfinna en ny OpenGL® -ram varje gång.
Nästan varje OpenGL® -bibliotek, inklusive verktygsbibliotek, har översatts på ett eller annat sätt till en objektorienterad form. Detta har i vissa fall gjort det lättare för utvecklare att hålla OpenGL® uppdaterad på de olika enheterna som finns genom att bilda en mestadels enhetlig plan för hur man implementerar OpenGL® i en objektorienterad miljö. Med tillägg av objektorienterade utvecklingsverktyg, iT har också gjort det möjligt att dra och släppa en OpenGL® -klass i ett program som stöder visuell utveckling, förenkla några av de mer komplicerade aspekterna.