Co je to třída OpenGL®?
Třída OpenGL® může odkazovat na objektově orientovanou implementaci částí Abstraktního programovacího rozhraní OpenGL® (API), nebo na třídu, která používá volání funkce OpenGL® v rámci svého vlastního kódu. Povaha knihovny OpenGL® znamená, že pro objektově orientovanou verzi API skutečně nebyla podpora a většina programů nazývala funkce, jak byly napsány, mimo třídu. Vzhledem k tomu, že objektově orientované jazyky se staly častějšími, zdálo se, že různé knihovny tříd OpenGL® fungují jako objekty obalů pro základní knihovnu. Používání třídy OpenGL® má výhody, která byla plně realizována namísto pouze sběru funkcí uvedených v knihovně, včetně zapouzdření a způsobu, jak odvodit nové funkční třídy prostřednictvím dědičnosti při ochraně základní implementace. Ne všichni vývojáři používají knihovnu třídy OpenGL®, protože může být matoucí přepnout na plně objektově orientované paradigmata programování.
v objektově orientovaném Pro ProGramming, třída je kolekce dat, proměnných a funkcí, nazývaných metody, které upravují informace, které obsahuje. Původ OpenGL® jako knihovny funkcí pro programovací jazyk C, který nebyl objektově orientovaným jazykem, znamenají, že některé z metodik a programovacích postupů, které se vyvinuly, nebyly dobře vhodné pro objektové programování. Když se některé operační systémy a další zařízení začaly více spoléhat na objektově orientované jazyky, vzniklo několik knihoven třídy OpenGL®.
Některé z knihoven třídy OpenGL® jednoduše zapouzdřily základní funkce OpenGL®. To poskytlo bezpečný a kompatibilní rámec pro programování. Ačkoli byl tento typ třídy nezbytný pro některé jazyky, stále vyžadoval, aby se podpůrné třídy staly funkční aplikací. Skutečně organizované knihovny skutečně rozdělily funkce OpenGL® na aSérie tříd, přičemž každý z nich spravuje jiný prvek knihovny, jako je vykreslování.
Řada knihoven třídy OpenGL® se začala rozšiřovat na základní motor OpenGL® a začala zahrnovat více funkčnosti. To primárně zahrnovalo speciální třídu pro manipulaci s objekty ve scéně, nazvanou graf scény. Tyto třídy fungovaly jako obaly pro základní knihovny a zároveň poskytly logickou strukturu, na které by bylo možné vytvořit program, který udělal více než vykreslit scénu a ukončit, aniž by musel pokaždé vymyslet nový rámec OpenGL®.
Téměř každá knihovna OpenGL®, včetně knihoven obslužných prostředků, byla tak či onak přeložena do objektově orientované formy. To v některých případech usnadnilo vývojářům udržovat aktualizaci OpenGL® na různých zařízeních, která existují, vytvořením převážně jednotného plánu, jak implementovat OpenGL® v objektově orientovaném prostředí. S přidáním objektově orientovaných vývojových nástrojů iT také umožnilo přetáhnout třídu OpenGL® do programu, který podporuje vizuální vývoj, a zjednodušuje některé ze složitějších aspektů.