DirectX i Direct3D
Direct3D predstavlja grafički API za Windows operacijski sustav te je dio Microsoftove kolekcije DirectX.
Napravljen je 1992. godine od strane kompanije RenderMorphics koju je Microsoft kupio 1995. godine, a prva verzija Direct3D-a je puštena sa DirectX 2.0 verzijom 1996. godine.
DirectX služi za razvoj aplikacije koje su grafički intenzivne te zahtjevaju veliku razinu optimizacije poput računalnih igara ili alata za 3D modeliranje.
Razvijen je u COM (Component Object Model) tehnologiji koja služi za modularni razvoj aplikacija.
OpenGL
OpenGL (Open Graphics Library) je grafički API za više operacijskih sustava te služi za prikaz 2D i 3D grafike.
Prva verzija je napravljena 1992. godine od strane Silicon Graphics Inc. kompanije, a trenutno je pod nadzorom neprofitne grupe Khronos Group.
OpenGL je otvorenoga koda i napisan je u C jeziku. Zadnja verzija je 4.6.
Apple je 2018. godine ugasio podršku za OpenGL na svim njihovim platformama te preporučio korištenje njihovog Metal API-a.
Usporedba
- Matematička podloga za oba API-a je manje više identična
- Direct3D je podržan samo na Windows i Xbox sustavima dok je OpenGL cross-platform
- Direct3D je napravljen prvenstveno za developere računalnih igara kao alat vizualizacije te ih oslobađa dosta posla vezanog uz grafički hardver, a OpenGL je sustav za renderiranje koji se može prikazati pomoću sotfvera
- Zadnja mjerenja su pokazala da OpenGL može imati značajno bržu performansu od Direct3D-a
- Povijesno, velike inovacije su generalno prvo napravljene u Direct3D, a onda preuzete i implementirane od strane OpenGL-a
Direct3D Pipeline | OpenGL Pipeline |