Nazda. Chcel by som sa zacat ucit niektoru z tychto kniznic, ale prakticky viem o nich velmi malo. Mohli by ste sem pisat svoje vedomosti, poznatky skusenosti a postrehy tykejuce sa tychto kniznic?
Viem ze zakladny rozdiel je v tom , ze OpenGl je multiplatformove a DirectX nie.
OpenGl sa stara iba o grafiku a DirectX sa stara aj o zvuk oladanie sietovu komunikaciu...
ale to je asi tak vsetko
Fórum › C / C++
OpenGl vs. DirectX
Ja by som povedal ze OpenGL is best. Je prevda ze zvuk v tom neprehrajes ale je OpenAL alebo to mozes spojit s SDL a s SDL_mixer. Takze odporucam OpenGL. :ms_0002:
To je snad 3. nejčastější dotaz: zkus se mrknout na starší podobný flamy.
eraser17 píše:#
# mal som spor s kamosom , ze co je lepsie, on tvrdi, ze DirectX a zevraj sa v tom robia vsetky nove hry a ze OpenGl sa us par rokov u hier nepouziva.. #
#ale podla mna to je blbost... a OpenGl sa mi aj tak lubi viacej.....
To nemá pravud - DirectX je sice v mnoha věcech lepší (jen škoda, že je pouze pro Win, ale to se snad brzo změní) a já osobně bych ho zvolil, ale nelze říct, že OpenGL je špatný nebo, že se málo používá.
Tu ide skôr o to čo pracuješ pod Winom alebo nie. Ked nie tak OpenGL ked ano DirectX. Ja pracujem pod Winom a aj tak som vybral OpenGL a som spokojny ked si ho zvolis tak vyborne tutorialy najdes tu: http://nehe.ceskehry.cz.
no ved na to tu je OpenGL alebo DirectX roby sa v nich 3D grafika a teda aj 3D hry. Ale aby si mohol vobec zacat musis sa naucit C++ alebo C a nejake API napr. Win32 alebo ako som uz spomenul SDL v ktorom sa da pomocou kniznice SDL_mixer prehravat hudba.
Já osobně bych určitě doporučoval začít s OpenGL. Možnosti má v podstatě stejné jako DirectX a je jednodužší (zejména v začátcích).
Co se týče API tak bych pro začátek zvolil GLUT, je to absolutně triviální a člověk nemusí trávit hromadu času učením se něčeho s OGL nemá nic společnýho, než nakreslí první trojůhelník. Navíc s kombinací GLUT a OGL se dá zvládnout spousta věcí. Na nějakou freeware hru to v pohodě stačí. (stejně tak ale i na nejnovější HC efekty)
Co se týče tutoriálů tak nehe jsou sice dobrý (taky sem na nich začínal), ale spoustu věcí nechávaj nevysvětlených a člověk to pak sice umí použít ale vlastně vůbec neví proč to dělá. Taky používaj WinAPI tj. všude je tam okolo mrtě kódu, který člověka akorát matou.
Spíš bych se podíval nejdřív na www.root.cz/serialy/tvorba-prenositelnych-grafickych-aplikaci-vyuzivajicich-knihovnu-glut/
a pak bych pokračoval s ...www.root.cz/serialy/graficka-knihovna-opengl/
další tutoriály jsou třeba tady ... [url]www.lighthouse3d.com/opengl/ a potom taky [/url] ... www.gamedev.net/reference/list.asp?categoryid=31 (kde jsou mj. odkazy na originál NeHe tutorialy a články)
moc do tohoto jeste nevidim, ale ted byl v computeru clanek DirectX vs. OpenGL a psali mimo jine to, ze co v OpenGL napisete na par desitek radku, to se vam v Xkach jen tezko vleze pod 200 radku kodu...
http://herakles.zcu.cz/~miva/index.php?prom=projects&lang=cz jestli se ti openGL nezd8 mrkni se sem treba na "Bump Mapping se spekulární texturou pro odlesky". Me prijde ze to moc hnusny neni ne :) Taky jsem nasel toto -> http://www.zive.cz/h/Testcentrum/Ar.asp?ARI=119309&CHID=7&EXPS=&EXPA=. DOOM III taky nema 100let zastaralou grafiku.
DeaLer píše:#
##eraser17 píše:#
# mal som spor s kamosom , ze co je lepsie, on tvrdi, ze DirectX a zevraj sa v tom robia vsetky nove hry a ze OpenGl sa us par rokov u hier nepouziva.. #
#ale podla mna to je blbost... a OpenGl sa mi aj tak lubi viacej.....
#To nemá pravud - DirectX je sice v mnoha věcech lepší (jen škoda, že je pouze pro Win, ale to se snad brzo změní) a já osobně bych ho zvolil, ale nelze říct, že OpenGL je špatný nebo, že se málo používá.
chjo a v cem je teda lepsi ?? pochybuju ze jsi nekdy neco vytvoril v DirectX nebo openGL, zase blbě kecáš....
je uplne jedno v cem budete delat, obojí se dá srovnat, jinak stačí nebýt línej a trošku zaggoglit a najdete hned + a -
To eMan: chjo .. žádám tě, abys tuto diskusi neposazoval na osobní úroveň. Ještě nějaké otázky....
To VojtaK: tak bych být tebou tím céčkem začal.. sice to v něm psát nemusíš ale něco lepšího budeš těžko hledat.. a tu analytickou geometrii bych si zopakoval taky ;) jo a s tim jak používat ty knihovny v c tak opengl knihovny jsou většinou už součástí instalace(mingw v devc++ nebo snad i v VS) pokud budeš používat něco méně exotického a directX sdk stáhneš třeba odsud msdn.microsoft.com/directx/
DeaLer píše:#
# To eMan: chjo .. žádám tě, abys tuto diskusi neposazoval na osobní úroveň. Ještě nějaké otázky....
no hlavně že jsi mě odpověděl že...
VojtaK: na tehle strance http://nehe.ceskehry.cz/ najdes vsechno co do zacatku programovani her s opengL potrebujes, je tam vsechno pekne od zacatku staci jsi to poradne vsechno precist. Jinak je celkem jedno v cem budes delat, já bych doporucil openGL.
aleshus Jinak v openGL se klidně dá dělat 2D není v tom žádnej problém...a jinak 3D je totiž IN :D a není to zas o tolik složitější...
To eMan: a kde jsem tvdril že nejde v openGL dělat 2D?? a s tou složitostí tak je to z hlediska toho opengl to samé akorát se pohybuješ jenom v rovině a ne v prostoru. jenom jsem říkal že je to celý o tý a. geom. toť vše.. takže pokud jí někdo neumí tak se v tom opengl bude celkem strácet a nepomůže mu ani nehe.
To eMan: ano, neodpověděl jsem právě kvůli stylu tvé otázky
aleshus píše:#
# To eMan: a kde jsem tvdril že nejde v openGL dělat 2D?? a s tou složitostí tak je to z hlediska toho opengl to samé akorát se pohybuješ jenom v rovině a ne v prostoru. jenom jsem říkal že je to celý o tý a. geom. toť vše.. takže pokud jí někdo neumí tak se v tom opengl bude celkem strácet a nepomůže mu ani nehe.
ne ne :) v prvních 25 lekcích nehe jsi vystačíš s COS a SIN a matematikou ze základky. Vyšší matematika určitě taky bude potřeba ale až pozdějc. Začátečník se tím vůbec nemusí zabývat.
To DeaLer: aha, nejpíš bych tě měl asi prosit abys mě odpověděl :) už sis to mohl dávno vygooglit...
To eMan: ne to nemusíš. V DX ani OGL jsem nikdy nic nevytvořil a zatím to ani nemám v plánu, ale hlavní výhodou DX (tedy alespoň pro mě) je to, že v něm můžu pracovat snadněji a rychleji než v OGL.
tommz9 píše:#
# DirectX není multiplatformní ... tenhle argument by měl stačit, aby si člověk vybral OpenGL
To by nemusel - záleží na tom, jestli to požaduješ. Pokud ne, tak to není rozhodující.
Jelikoz na vistach jiz neni podpora kernelu ovladace DirectSound - HW podpora :(. Tim samozrejme klesa komplexnost DirectX. Na vistach je to reseno pres AopenAl coz je obdoba OpenGl, ale v praci se zvukem.
Proste OpenGl, OpenAl je multiplatformni, na jejich vyvoji se podili dost velke firmy.
OpenGL je prumyslovy standart oproti DX.
Navic je tu komplikovanost s revizemi DX napr. DX9c byla aspon nekolirate revidovana a pokud napisete kod tak je to pro tu konkretni revizi. Tzn. musite pri distribuci aplikace nato myslet a pribalit soubory dll konkretni revize, ktere si musite od MS stahnout ovsem pokud mate piratsky OS tak nemate mate smulu. Daji se stahnout i nekde jinde.
I na nove technologie, ktere jsou HW podporovany jsou v OpenGl k dispozici Extensiony, ktere vam umozni je vyuzit.
V žádnym případě se nedá ani jedna technologie vyvyšovat. Tyhle dvě technologie mají obě velikou historii, plnou bojových změn. OGL je ve verzi 2.0 DX je ve verzi 10...
OGL se určitě vyplatilo před vznikem DX 8.0, ale od té doby se to obrací čím dál více k DX. Jenže stejně se nedá říci, že od roku 2002 používat jenom DX, protože jak bylo zmiňováno, DX není tak dobře přenositelné, navíc se plánuje OGL 3.0 o kterym se toho zatim moc neví...
Já osobně zvolil DX, protože vim že Ms ho bude stále a providelně vyvíjet. Stačí mi aby moje projekty byly spustitelné na Windows... Pak mám taky víc zdrojú o DX než o OGL. DX má několik předem připravených funkcí, díky kterým se dá soustředit spíše na vývoj té aplikace....
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
SDL, OpenGL, DirectX — založil radypala
C++ = pogramování her v DirectX(/OpenGL) — založil Ceyn
C++, OpenGL, SDL /// C++, OpenGL — založil Kolemjdouci
DirectX 9c a 10 — založil eraser17
Moderátoři diskuze