Portál AbcLinuxu, 8. května 2024 22:10
Pro hraní her využívajících DirectX pod Wine je třeba jej nejdříve nainstalovat. V tomto článku se dozvíte, jak nainstalovat DirectX 9.0c do Wine a jak nastavit různé související věci v registrech.
Microsoft DirectX je kolekce programovacích rozhraní (API) pro úlohy týkající se multimédií, především pak videa a programování her pro Microsoft Windows. Názvy všech těchto API původně začínaly na "Direct", například Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound a podobně. DirectX byl obecný pojem, který označoval všechny tyto "Direct"-něco API a stal se názvem kolekce. Jak léta plynula, některá API časem zastarala a byla nahrazena, takže tato konvence pro pojmenování již tak docela neplatí. Vlastně se "X" uchytilo natolik, že nahradilo část "Direct" v některých nových DirectX technologiích, jako jsou XAct, XInput a další.
Direct3D (API pro 3D grafiku v rámci DirectX) je široce využíváno ve vývoji počítačových her pro Microsoft Windows, Xbox a Xbox 360. Direct3D se využívá také v jiných programech pro vizualizaci a grafické úlohy, především CAD/CAM, a to kvůli rychlému vykreslování vysoce kvalitní 3D grafiky na kompatibilním hardwaru. Jelikož je Direct3D pravděpodobně nejznámější API z DirectX, tak se pro něj nezřídka používá obecný název DirectX.
Následující návod platí pro Wine verze 0.9.58, 0.9.59 a 0.9.60 s čistou konfigurací a DirectX 9.0c redistributable vydané v březnu 2008 (stažení z FileHippo.com, 69,5 MiB).
Začněte spuštěním winecfg
. Vytvoří se adresář ~/.wine
s výchozím obsahem a poté se spustí grafický konfigurační nástroj, ve kterém nastavte verzi Windows na 2000, upravte si zvukové nastavení podle vašich potřeb (možná nebude třeba nic měnit) a případně si aktivujte virtuální plochu (záleží pouze na vašich preferencích). Winecfg nezavírejte a zkopírujte do adresáře ~/.wine/drive_c/windows/system32
nativní knihovny mscoree.dll a streamci.dll z Windows (pokud Windows nemáte, dají se najít na webech jako je dlldump.com, dll-files.com, dll-download.net).
Potom ve winecfg přejděte na tab "Knihovny", přidejte do seznamu mscoree a streamci (bez přípony) a obě položky upravte tak, aby se používaly nativní verze. Poté změny potvrďte stisknutím OK. Je třeba takto nastavit docela velké množství knihoven a rychlejší než přidávat vše ručně, je otevřít si soubor ~/.wine/user.reg
, najít v něm sekci [Software\\Wine\\DllOverrides] a změnit ji tak, aby obsahovala následující:
"d3d8"="builtin" "d3d9"="builtin" "d3dim"="native" "d3drm"="native" "d3dx8"="native" "d3dx9_24"="native" "d3dx9_25"="native" "d3dx9_26"="native" "d3dx9_27"="native" "d3dx9_28"="native" "d3dx9_29"="native" "d3dx9_30"="native" "d3dx9_31"="native" "d3dx9_32"="native" "d3dx9_33"="native" "d3dx9_34"="native" "d3dx9_35"="native" "d3dx9_36"="native" "d3dxof"="native" "dciman32"="native" "ddrawex"="native" "devenum"="native" "dinput"="builtin" "dinput8"="builtin" "dmband"="native" "dmcompos"="native" "dmime"="native" "dmloader"="native" "dmscript"="native" "dmstyle"="native" "dmsynth"="native" "dmusic"="native" "dmusic32"="native" "dnsapi"="native" "dplay"="native" "dplayx"="native" "dpnaddr"="native" "dpnet"="native" "dpnhpast"="native" "dpnlobby"="native" "dsound"="builtin" "dswave"="native" "dxdiagn"="native" "mscoree"="native" "msdmo"="native" "qcap"="native" "quartz"="native" "streamci"="native"
Soubor uložte. Nyní jste připraveni instalovat.
Přejděte v konzoli do adresáře, kam jste stáhli instalační soubor DirectX a spusťte:
wine directx_mar2008_redist.exe
Objeví se dialog, ve kterém zadáte cestu, kam chcete DirectX rozbalit (můžete kamkoliv). Po rozbalení přejděte do adresáře, který jste zvolili v dialogu, a spusťte:
wine DXSETUP.exe
Instalace je prostá: souhlasím, další, další, dokončit. To je vše.
Nyní máte k dispozici všechny nativní knihovny DirectX 9 a můžete si jednotlivě pro každou knihovnu nastavit, zda se má použít nativní nebo vestavěná. Toto nastavení lze vytvořit pro každou aplikaci zvlášť pomocí zmiňovaného winecfg.
Tato část článku je volným překladem článku DirectX 9.0c March 2008 redistributable on Linux with Wine v blogu Wine Review.
Wine používá systém registrů kompatibilní s Windows a stejně jako tam v něm lze nastavit a poladit různé věci. Občas je to dokonce jediný způsob, jak něco nastavit. Grafický editor registrů (stejný jako ve Windows) spustíte příkazem regedit
.
Nastavit Direct3D lze v HKEY_CURRENT_USER -> Software -> Wine -> Direct3D. Platné jsou řetězcové položky s následujícími názvy:
Určuje, který backend se použije pro vykreslování (DirectDraw). Platné hodnoty:
Nastavuje režim čtení a zápisu framebufferu zatímco je zamčený. Platné hodnoty:
Nastavuje režim "off-screen" vykreslování. OpenGL běžně vykresluje do nějakého okna, které lze vidět na monitoru, ale občas je vhodné vykreslovat do bufferu, který není zobrazený, a tomu se říká "off-screen" vykreslování. Platné hodnoty:
Need for Speed ProStreet, 1,4 MB
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.