Open14

Game Porting Toolkit 2

katzumikatzumi

x86版のHomebrewのインストール

  • ARM64 Homebrew削除
    以前にHomebrewをインストールしたことがある場合は、ARM64 Homebrewを削除推奨なので削除す

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
    
  • Rosettaをインストール

    softwareupdate --install-rosetta --agree-to-license
    

M1でsoftwareupdate[47278:3488002] Package Authoring Error: 062-01890: Package reference com.apple.pkg.RosettaUpdateAuto is missing installKBytes attribute とかエラーがでるが、無視して良さそう
https://apple.stackexchange.com/questions/407640/rosetta-2-installation-on-m1-mbp-fails

Rosetta環境内でのステップ

ここから先はx86_64シェルに入り、Rosetta環境でのセットアップをまとめます

以下のコマンドからスタート

arch -x86_64 zsh

Intelを使っていることを確認するために、もう一度 arch コマンドを実行する。arm64 ではなく i386 と表示されればOK

brew(x86版)の再インストール

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

installの実行ログにある、Next stepsの通りにbrewのパス設定

(echo; echo 'eval "$(/usr/local/bin/brew shellenv)"') >> ~/.zprofile
eval "$(/usr/local/bin/brew shellenv)"

~/.zprofileeval "$(/opt/homebrew/bin/brew shellenv)"があったらArm64版のやつなので、削除しておくこと

katzumikatzumi

game-porting-toolkitのインストール

brew tap apple/apple http://github.com/apple/homebrew-apple
brew -v install apple/apple/game-porting-toolkit

1時間ぐらいかかる

壊れているらしい。。
リポジトリを見る感じだと 7 months ago

katzumikatzumi

案の定失敗

Last 15 lines from /Users/miserarenaiyo/Library/Logs/Homebrew/game-porting-toolkit/01.configure:
--enable-win64
--with-gnutls
--with-freetype
--with-gstreamer
CC=/usr/local/opt/game-porting-toolkit-compiler/bin/clang
CXX=/usr/local/opt/game-porting-toolkit-compiler/bin/clang++

checking build system type... x86_64-apple-darwin23.5.0
checking host system type... x86_64-apple-darwin23.5.0
checking whether make sets $(MAKE)... yes
checking for gcc... /usr/local/opt/game-porting-toolkit-compiler/bin/clang
checking whether the C compiler works... no
configure: error: in `/private/tmp/game-porting-toolkit-20240616-30276-i2a977/wine64-build':
configure: error: C compiler cannot create executables
See `config.log' for more details

If reporting this issue please do so to (not Homebrew/brew or Homebrew/homebrew-core):
  apple/apple
katzumikatzumi

pre-built toolkitの動作確認

pre-built toolkitがインストールされるとアプリケーションフォルダーに Game Porting Toolkit が追加される

クリックして起動するとターミナルが起動される

このターミナルで wine winecfg コマンド実行して

こんな画面が表示されればOK

katzumikatzumi

Steamインストール

windows版steamをダウンロード
https://cdn.cloudflare.steamstatic.com/client/installer/SteamSetup.exe

MTL_HUD_ENABLED=0 WINEESYNC=1 wine ~/Downloads/SteamSetup.exe

インストール後に以下のコマンドを実行

MTL_HUD_ENABLED=0 WINEESYNC=1 /Applications/Game\ Porting\ Toolkit.app/Contents/Resources/wine/bin/wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/steam.exe
katzumikatzumi

Steamのショートカット作成

ショートカットアプリケーションでSteamのショートカットを作成する

こんな感じで登録する。テキストは以下をコピーして貼り付けると良い

cd ~/.wine/drive_c
MTL_HUD_ENABLED=0 WINEESYNC=1 /Applications/Game\ Porting\ Toolkit.app/Contents/Resources/wine/bin/wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/steam.exe
katzumikatzumi

Prebuildインストール

brew tap gcenx/homebrew-apple
brew install gcenx/wine/game-porting-toolkit
echo 'export PATH="/usr/local/opt/game-porting-toolkit/bin:$PATH"' >> ~/.zshrc
export LDFLAGS="-L/usr/local/opt/game-porting-toolkit/lib"
brew update && brew upgrade gcenx/wine/game-porting-toolkit
katzumikatzumi
WINEPREFIX=~/steam `brew --prefix game-porting-toolkit`/bin/wine64 winecfg
ditto /Volumes/Evaluation\ environment\ for\ Windows\ games\ 2.0/redist/lib `brew --prefix game-porting-toolkit`/lib/
/Volumes/Evaluation\ environment\ for\ Windows\ games\ 2.0/gameportingtoolkit ~/steam ~/Downloads/SteamSetup.exe
katzumikatzumi

homebrew-wineインストール

curl -L https://raw.githubusercontent.com/Gcenx/homebrew-wine/master/Casks/game-porting-toolkit.rb > game-porting-toolkit.rb
brew install game-porting-toolkit.rb

ログイン状態引き継ぎ

cp -R $HOME/Library/Application\ Support/Steam/{config,registry.vdf,userdata} "$HOME/.wine/drive_c/Program Files (x86)/Steam/"
katzumikatzumi

Sonomaでの手順まとめ

  • Homebrew(X86版)インストール
arch -x86_64 zsh 
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
alias brew86=/usr/local/bin/brew
  • GPTK2(Prebuild版) install
brew86 install --cask --no-quarantine gcenx/wine/game-porting-toolkit

or

brew86 tap gcenx/homebrew-apple
brew86 update ; brew86 -v install gcenx/wine/game-porting-toolkit
ditto /Volumes/Evaluation\ environment\ for\ Windows\ games\ 2.0/redist/lib/ `brew86 --prefix game-porting-toolkit`/lib/ 
cp /Volumes/Evaluation\ environment\ for\ Windows\ games\ 2.0/gameportingtoolkit* /usr/local/bin
  • Steamインストール
    言語設定をEnglishにすること
WINEPREFIX=~/Steam wine64 winecfg
WINEPREFIX=~/Steam MTL_HUD_ENABLED=0 WINEESYNC=1 wine64 ~/Downloads/SteamSetup.exe
  • Steam起動
WINEPREFIX=~/Steam MTL_HUD_ENABLED=1 WINEESYNC=1 wine64 'C:\Program Files (x86)\Steam\Steam.exe'

起動オプションを調整

MTL_HUD_ENABLED=1 WINEESYNC=1 DXVK_ASYNC=1 ROSETTA_ADVERTISE_AVX=1 WINEPREFIX=~/Steam wine64 'C:\Program Files (x86)\Steam\Steam.exe'
katzumikatzumi

ベンチマーク

以下のページからダウンロードして実行する
https://www.streetfighter.com/6/benchmark/ja-jp/

  • インストール
WINEPREFIX=~/SF6Bench MTL_HUD_ENABLED=1 WINEESYNC=1 wine64 /Users/katsumi/Downloads/StreetFighter6_Benchmark/setup.exe
  • ベンチマーク起動
WINEPREFIX=~/SF6Bench MTL_HUD_ENABLED=1 WINEESYNC=1 DXVK_ASYNC=1 ROSETTA_ADVERTISE_AVX=1 CORESVG_VERBOSE=1 WINEDLLOVERRIDES="dxgi,d3d9,d3d10,d3d11,d3d12,dxgi,atidxx64=n,b" wine64 'C:\Program Files (x86)\CAPCOM\StreetFighter6 Benchmark\StreetFighter6.exe'
katzumikatzumi

DirectX動作確認

  • dxdiag
WINEPREFIX=~/Steam MTL_HUD_ENABLED=1 WINEESYNC=1 WINEESYNC=1 VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue DXVK_ASYNC=1 ROSETTA_ADVERTISE_AVX=1 CORESVG_VERBOSE=1 WINEDLLOVERRIDES="d3d12,dxgi=n,b"  wine64 'C:\windows\syswow64\dxdiag.exe'

fixme:dxdiag:wWinMain Information dialog is not implemented と言われて駄目だった。