
Proč se musí instalovat DirectX?
Ahoj, na webu Microsoftu jsem se dozvěděl, že od Visty už DirectX v systému je. Na Windows 8 mám verzi 11, a přesto pro spuštění hry potřebuji dodatečně nainstalovat verzi 9.
Copak ta novější verze 11 neobsahuje to, co ta starší verze 9?
Protože hra je hloupá. Vznikla v době, kdy byl Direct X 9 a novější nezná. Takže i když tam máš novější, hra to neví.
Hra si kontroluje, jestli verze DirectX >= '9' a protože '11' je menší jak '9', tak...
11 je menší jak 9?
Co se tu člověk nedozví...
V podstate - je to práve hrou a jej rozhodovaním, čo má zisťovať. A pretože tvorcovia hier uvažujú často nelogicky - tak je 9 viac ako 11 -
Skúste si v nejakom editore, tabuľkovom procesore dať zoradiť 8, 9, 10, 11 .... nezoradí to, pretože prvé číslo verzie 10 je "1" tak podľa logickej nelogiky to bude menej ako "9" - a to i napriek tomu, že DirectX 11 má v sebe i ver.9. A samozrejme, že sa potom dožaduje ver.9. Ak by bolo číslovanie DirectX 09,10,11,12 - tak to zoradí správne. a nebude sa dožadovať staršej verzie, pretože 10 > 09.
Tak to vidím ja, ako to "funguje" (nezmyselne).
Ne, není nesmyslné. Prostě to porovnává jako textový řetězec a neanalyzuje obsah, nehledí na to, že 9 je číslo a 10 taky jedno číslo. Jak by měl podle tebe porovnat např. 1f a 1g? Ovšem, bez diskuze je to chyba programátora, co co programoval to porovnávání, že to porovnával jako textový řetězec a ne jako číslo...
To určitě ano. Už samotné označování verzí mi přijde špatné - do verze 9 včetně např. 3.0, 3.0a, 3.0b a teprve až od verze 10 např. 11, 11.1, 11.2.