MiniGL
Utvecklare | 3dfx Interactive och andra |
---|---|
Initial release | 1996 |
Skrivet i | C , C++ , montering |
Typ | Grafikbibliotek |
MiniGL är en ofullständig implementering av OpenGL -specifikationen som implementerar tillräckligt med API för att tillåta 3D- videospel i slutet av 1990-talet att köras med hårdvaruacceleration på samtida grafikkort , som annars gav sina egna API:er. Den ursprungliga implementeringen kom från 3dfx Interactive och designades kring att stödja Quake . Andra företag som implementerar liknande programvara inkluderar PowerVR och Rendition .
Historia
1996 tillkännagav id Software att Rendition Vérité skulle vara den enda hårdvaru-3D-acceleratorn som Quake riktar in sig på . Dels på grund av det upplevda krånglet med att stödja chipsetspecifika API:er och dels för att Quakes utvecklingsarv på avancerade arbetsstationer gjorde en sådan sak lätt. De släppte också en Microsoft Windows- port av sin OpenGL-version av Quake , även om ingen konsumentchipset hade OpenGL-stöd vid den tiden.
Som svar utvecklade och släppte 3dfx snabbt den första MiniGL: en snabb implementering av det absoluta minimum av OpenGL API som krävdes för att köra OpenGL-versionen av Quake . Genom att skaffa en kopia av den körbara OpenGL Quake och en kopia av den relevanta MiniGL, kunde 3dfx-ägare enkelt modifiera sina kopior av Quake för att spela med full 3D-acceleration, vilket ger en jämnare och snyggare skärm än vad som var möjligt med Quake- programvarurenderaren . Efter framgången med 3dfx-originalet följde flera andra tillverkare 3dfx för att producera MiniGL-drivrutiner.
Vid den tiden var OpenGL API nästan allmänt överens om att vara överlägset det då nya och omogna Direct3D- systemet från Microsoft , så efter ankomsten av de olika MiniGL:erna försökte många programmerare att använda dem i andra program som ett enkelt sätt att stödja flera 3D-chipset. Tyvärr hade id Software inte släppt någon officiell lista över OpenGL-anrop och parametrar som används av Quake och ingen av MiniGL-implementörerna hade släppt listor över vad deras implementering skulle stödja och inte.
I praktiken ledde detta till en mycket försiktig användning av OpenGL-funktioner av programmerare och nya utgåvor av MiniGL: er med lite mer funktionalitet varje gång det kom ett större spel som inte fungerade på föregående generation.
Alla större 3D-korttillverkare stöder nu kompletta OpenGL-implementeringar, vilket eliminerar behovet av någon form av MiniGL.
Andra implementeringar
MiniGL-implementationer har utvecklats för andra operativsystem , inklusive Palm OS och AmigaOS .