wineでUnreal Engineで作られたアプリを動作させて低スペでもちょっと快適に

by haturatu

2 min read

こんにちは、無能です。
割とツボったのでメモしておきます。

インストール

pacman

sudo pacman -S wine-staging winetricks
yay -S dxvk-bin

winetricks & dxvk

環境変数を設定
デフォルトでは$HOME/.wineですが念の為

WINEPREFIX=~/.wine 

dxvk

setup_dxvk install

winetricks

これを入れてました。
なお、vkd3dDX12をVulkanで使えるための互換レイヤーとして機能させるためのパッケージですが結構重たくて消しました。
wineの引数でもDX11指定はできるようです wine app.exe -d3d11

$ winetricks list-installed
Executing cd /usr/bin
------------------------------------------------------
warning: You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
------------------------------------------------------
warning: You appear to be using Wine's new wow64 mode. Note that this is EXPERIMENTAL and not yet fully supported. If reporting an issue, be sure to mention this.
------------------------------------------------------
Using winetricks 20250102 - sha256sum: 53194dead910f8a5eb1deacaa4773d4e48f5873633d18ab1ecd6fdb0cb92243b with wine-10.15 (Staging) and WINEARCH=win64
mf
atmlib
andale
arial
comicsans
courier
georgia
impact
times
trebuchet
verdana
webdings
corefonts
gdiplus
w_workaround_wine_bug-26925
msxml3
msxml6
ole32
w_workaround_wine_bug-50894
ucrtbase2019
vcrun2019
lavfilters
quartz
wsh57
wmp11
d3dx9
d3dx10
d3dx11_43
remove_mono internal
remove_mono internal
winxp

winecfg

winecfgでの設定。パッケージによりけりでデフォでwine側が実装したライブラリ先を見るようになってたりするので全てWindowsネイティブ実装に変えました。

$ wine reg query "HKCU\Software\Wine\DllOverrides"
027c:fixme:winediag:loader_init wine-staging 10.15 is a testing version containing experimental patches.
027c:fixme:winediag:loader_init Please mention your exact version when filing bug reports on winehq.org.

HKEY_CURRENT_USER\Software\Wine\DllOverrides
    *devenum    REG_SZ    native
    *mf    REG_SZ    native
    *quartz    REG_SZ    native
    d3d10core    REG_SZ    native
    d3d11    REG_SZ    native
    d3d8    REG_SZ    native
    d3d9    REG_SZ    native
    dxgi    REG_SZ    native
    mf    REG_SZ    native
    mfplat    REG_SZ    native

mfplat自体がwine側で実装されるようになったようなのですが、不安定でクラッシュすることが多く完全な互換をまだ提供できていないようなので、Windowsネイティブなmfplatを使うように指定

間違いなく反映させるためWine自体を仮想的な再起動

wineboot

アプリ起動

余計なムービーをスキップしてくれるみたいです。実際ゲームで有効にしましたが軽くなった程度でなんか影響は見当たりませんでしたが場合によっては影響あるかもしれません。

wine app.exe -nomoviestartup
PGP --- Contact --- Machines --- cat -v