Mac mini 2018のWindowsでデュアルディスプレイを使う

PCゲーム用途に購入したMac mini 2018(MRTT2J/A)でeGPUを使った外付けディスプレイ表示に成功し、内蔵ディスク容量不足も解決したところで、MBP2012を使っている子供がAPEXなどの重ためなゲームでFPSが一桁しか出ないと不満を漏らし始めたため、現環境を譲り、新たにMRTR2J/Aを調達し環境を構築していたところ、DDUでインテルのドライバを削除した直後はeGPU出力ができるけれども、その後に再起動するとeGPU側に信号が届かずどれだけ待っても画面は黒いままになっているということがあったり、NVIDIAのドライバをインストール中によく知られているリソース不足と思われる症状で突然落ちて再起動してしまうということがあり、DSDTオーバーライド手法を検討していたところで予期せず素晴らしい情報に出くわしました。

毎度のことながら目的は表題とは少し異なり「NVIDIA製ドライバでディスプレイの出力先を(意図的に)制御する」ということになるの(AMD製の場合は不可)ですが、デュアルディスプレイ出力が出来てしまえばWindowsの設定→システム→ディスプレイからeGPU出力している識別子2をメインモニターにして複製するようにすれば達成となります。ということで過去の2事例と上述した意訳を含め手順をまとめると次のようになります。

  1. 本体HDMI出力しているmacOSのリカバリモードでターミナルを使ってSystem Integrity Protection (SIP) を無効化、起動セキュリティユーティリティで「安全な起動」の設定を「セキュリティなし」に、「外部起動」の設定を「外部メディアからの起動を許可」にします。
  2. macOSで起動しログイン、ブートキャンプアシスタントでWindowsをインストール、サポートソフトウェアを入れ再起動、更にWindowsでログインしApple Software Updateを適用し再起動します。
  3. Windowsでログインしデバイスマネージャを開き「High Definition Audio コントローラー」と「PCIe Controller(x16) – 1901」を無効化します。
  4. eGPUからのThunderbolt3端子をMac mini(どのポートでも良いのですが電源に近い方が無難)に挿し電源を入れます。
  5. 右下に表示される通知とデバイスマネージャのディスプレイアダプタを眺めつつ、eGPUで使っているGPUのドライバがオンラインで自動インストールされるのを待ちます。(その間にNVIDIA公式ページから最新のドライバインストーラをダウンロードしておくと良いです)
  6. デバイスマネージャのディスプレイアダプタで名称が「Microsoft 基本ディスプレイアダプター」から該当するものに変わったのを確認して、右下タスクバーの「BootCampコントロールパネル」から「macOSで再起動」を選びmacOSでログインします。(この時点でHDMIとeGPUのThunderbolt3は挿したままでおk)
  7. Clover Configuratorbootx64.efi (v0.5)をダウンロードし(手順1〜2間でやっておいても可)、Clover ConfiguratorでEFIパーティションをマウント、/EFI/Boot/ディレクトリにあるbootx64.efibootx64_original.efiに名称変更し、ダウンロードしたbootx64.efi/EFI/Boot/に配置します。(この部分について以下に手順の詳細があります)
    [EFI Loader] Error 12 Fix in Boot Camp for Apple T2 Security Chip Macs (apple_set_os loader v0.5) | BootCamp eGPU Setup
  8. システム環境設定→起動ディスクからWindowsを選択し再起動します。黒い画面にズラズラと英字が流れ5秒間くらいの間に下方に2つのディスプレイドライバ名(インテル+Nvidia || AMD)が書いてあることを確認します。(無ければどこかで間違っています)この画面をすっ飛ばしたい場合は、バイパスする用途のZ以外の何かのキーを押します。
  9. HDMI出力のWindowsのログイン画面で認証しログインします。HDMI側ではディスプレイが拡張に、eGPU側では単独のそれぞれ独立した出力となるので、先述したようにHDMI側の画面でディスプレイの設定をし完了です。

最後に容量不足を解決するThunderbolt3のNVMe SSDはeGPUと違う(電源側にeGPUが挿してあれば反対のUSB-A側)レーンのポートに挿し、Steamのダウンロード設定でデフォルトにしました。

運用に関して、2つのThunderbolt3ポートに挿したままで起動すると、外部SSDのみが認識されeGPUが認識されないことがあるので、設定→アプリ→スタートアップでSteamの自動起動を解除し、外部SSDを外して起動することを(面倒なのですが)お勧めします。また、スリープからの復帰の際に問題が発生することが多く、スリープしないようにするか必ずシャットダウンする必要があるかと思います。

このEFI編集での起動方法の良さは内蔵HDMIポートが有効になり続ける点で、Mac miniの背面を覗き込む必要がなくなり、実際一つのモニタにHDMIハブを使い検証ができました。

それでは素敵なPCゲームライフを!

投稿者: hkitago

個人事業主でウェブと iOS, Android アプリの開発者で一児の父親。JavaScript, ActionScript, AppleScript, PHP, SQL, ObjC, Swift, Java の読書実行試験運用管理を生業とし、Bind, Postfix, Apache を MacOS で使い、エディタは Vi, mi, Kod, Smultron, TextWrangler を経て Coda, Xcode, Android Studio, Atom といった IDE と CotEditor を重用しています。座右の銘は「アウトプットは量多い方がいい。フィルタは各自がやればいい。」です。