Postavit herní engine přímo závislý na DirectX, OpenGL či jiném rendereru je začátečnická chyba. Herní engine má být nezávislý na tom, co je pod ním. Již Unreal Tournament 99 vám dal vybrat jestli chcete OpenGL, DirectX nebo Software Render a když to někomu nevyhovovalo, mohl jsi dodělat vlastní.
Nerozumiem, herny engine musi byt na niecom postaveny a ci chces alebo nie obvykle optimalizovany pre prislusne rozhranie. HRY by nemali byt zavisle na ziadnom grafickom API.
Potom mozes mat 3 enginy kazdy s inou optimalizaciou pre prislusnu platformu ktora dokaze z daneho HW a rozhrania vytlct vsetko co v nom je bez toho aby sa HRA musela upravovat. Alebo ako si to myslel?
Blbost, delat mezivrstvu moc dobre nejde, uz i DirectX a OpenGL je mezivrstva 3D primitiv v grafice.
Naopak postavit engine na uzavrene platforme je blbost, takze OpenGL, nove verze jiz umi to, na co casto vyvojari cekali a OpenGL bezi snad temer vsude, mobilem pocinaje a RISCem konce.
Mimochodem OpenGL je vsude implementovano trochu jinak, ale API se tvari jako jednotne.
Tedy OpenGL na windows pouziva DirectX, OpenGL na linuxu zase pouziva kernel modul + moduly z Xorg. Na mobilu je to casto akcelerovany FB atd. atd.
Ono popravde, jeste by mohli zacit pouzivat SDL, ty jsou multiplatformne odladeny taktez.
SDL je něco úplně jinýho než OpenGL a DirectX... SDL je jen knihovna která multiplatformně dokáže vytvářet okna (případně i s OpenGL kontextem) a která dokáže taky softwarově renderovat. Často je právě používaná proto, aby se vytvořilo OGL okno a používá se pak už něco, co si naprogramuje uživatel.
SDL2 už dokáže renderovat i akcelerovaně pomocí OpenGL.