Zde uvadene tema je mi blizke ale nepochopil jsem o cem chce autor psat. Nekolik veci se mi na clanku i nelibi:
1) "Je mi jasné, že u DirectX části budu povětšinou, jak se říká, vařit z vody." - proc autor pise o API se kterym nema potrebne zkusenosti? A ze je to z clanku poznat...
2) "Jeho prvních několik verzí bylo prakticky téměř nepoužitelných (jako u mnoha dalších MS technologií), v současnosti jich existuje devět" -
porad to nedokazu spocitat stejne jako autor. Treba DirectX 4.0 nikdy neexistovalo. Zato mame DX6.1 a 8.1 a treba 2.0a (kde se myslim poprve objevilo Direct3D). Tvrzeni ze nekolik prvnich verzi bylo nepouzitelnych je VELMI sporne (a navic ta zbytecna poznamka v zavorkach, ach jo). Treba DirectX 3.0 je na 2D grafiku super a moje plosinovka vyuzivajici tuto verzi DX funguje standardne a nemuzu si stezovat.
3) "DirectNet" - :-)) komentovano vyse
4) Soucasna verze DX runtime je 9.0c a ne 9.0. Vysla priblizne pred peti dny.
5) "To znamená, že pokud používáte DX5 a chcete přejít na DX6, musíte se vše začít učit znovu od začátku a všechen dosavadní kód musíte upravit nebo dokonce kompletně přepsat" - nesouhlasim. DX6 prineslo: Direct3D zacina byt pouzitelne (DX5 D3D se uzivalo velmi zridka, spise vubec ne), DirectDraw - vylepseni vykonu, DirectSound - vylepseni vykonu a podpora MMX, DirectInput - zadna zmena, DirectPlay - podpora firewallu. Takze zadny uceni od zacatku a kompletni prepisovani kodu. API zustalo vice mene konzistentni. Direct3D je jedina oblast kde doslo k velikym zmenam ale stejne jej drive (treba DX5) nikdo neuzival protoze to bylo VELMI obtizne (dodnes jsem ten zpusob nepochopil).
Mohl bych pokracovat ale nevidim v tom zadny prinos. Nechapu o cem budou nasledujici clanky pojednavat kdyz obe API umi stejne veci pomoci stejnych technik a algoritmu protoze ovladaji stejnou grafickou kartu - a jeji vlastnosti dokazi vyuzit naplno. Lisi se ve zpusobu uvadeni novinek a tim API (DX uziva COM) ale popisovat zde rozdily mezi API nepovazuji za moudre kdyz neexistuje rozdil mezi uzitymi algoritmy a technikami a naopak prunikem mezi nazvy funkci je prazdna mnozina. Lepsi je jedna serie clanku o DX a druha o OGL. Je to mene zbytecne nez diff mezi gl.h a d3d9.h obsahujici jak gl.h tak d3d9.h :-).
Uz se mi nechce dal psat...doufam ze muj prispevek nevyzni moc kriticky a ze jsem nejakou blbost neplacl zase ja. Chtel jsem hlavne opravit nektere chyby v clanku.
Zdroje: google->search("DirectX versions");
S tím, že v DirectX neprogramuju a nějak moc ho neumím souhlasím, ale možná jsem neměl napsat zovna "vařit z vody", protože jsem přečetl čtyřsetstránkovou knížku o Direct3D.... nemyslíš, že je to dost na to, abych si o něm udělal vlastní názor?
Devět verzí jsem psal proto, že se nejnovější verze jmenuje DirectX 9.0(cosi) a myslím, že kdo v Direct nedělá od samýho začátku by to tak bral taky.
DirectNet... jméno použito v [3], ale moje chyba, měl jsem to zkontrolovat :-(
Ohledně přechodu programu na vyšší verzi. V té knížce co jsem četl byly všechny funkce zakončeny na číslo devět - tj. funkce patřící do directX devět. Až vyjde DX deset, budu moct používat funkci, která končí na devítku, nebo budu muset přepisovat zdrojáky? U padesáti kilových her to může být na chvíli, ale co třeba až budou mít zdrojáky mega? Chtěl bych tě vidět.
"DX6 prineslo: Direct3D zacina byt pouzitelne (DX5 D3D se uzivalo velmi zridka, spise vubec ne)" - už v šesté verzi začíná být direct3D použitelné, ale to nevadí protože se předtím nepoužívalo (když nebylo použitelné, tak se není čemu divit!!! :-)
Ale jinak všechno v dobrym...
Tva odpoved nic nemeni na platnosti mych poznamek ale to neni jadrem problemu. Ani si nemyslim ze tvuj clanek je kdovijak spatny.
Me pripada zvlastni prave to o cem pises. Direct3D a OpenGL jsou dve stoprocentne rozdilna API ktere ve vysledku delaji naprosto totez. Jak je tedy chces porovnavat? Jedine reseni vidim v tom postupne vypsat vsechny objekty a metody D3D a funkce OpenGL. Ale o OpenGL byl na ROOTu vycerpavajici serial a D3D neni free software ani open source.
Od cloveka ktery prekladal NeHe tutororialy bych ocekaval spis serii clanku ve ktere postupne ukazes ruzne cool graficke efekty a vychytavky pro mirne pokrocile v OpenGL, ktere si kazdy kdo ma zajem doma vyzkousi. Myslim ze u tohoto tematu bys byl jako ryba ve vode a nekomentoval bych zadne nepresnosti.
Jen se vyjádřím ještě k těm zdrojákům - pokud si stahneš SDK pro desítku, až vyjde, tak (podle mě) nemusíš nic přepisovat, stejně jako jsi nemusel do teď. Nad novějším SDK myslím můžeš klidně kompilovat starší zdrojáky... Prostě to jen bude využívat starší DX a spustíš pak výsledek i na každém stroji s nainstalovaným novějším. Když se podíváš kupříkladu na include adresář u DX SDK 9.0nevimco (ten co tu mám já :) tak tam najdeš jak d3d.h (do verze 8), tak d3d8.h a d3d9.h!
Jinak doufám, že jsme autora neodradili od napsání dalšího dílu, mě osobně by to každopádně mrzelo, těšil jsem se, že se podívám na pohled jiného člověka na srovnání těchto dvou zmiňovaných API.