VMware Fusion 6 で Retina 環境の OS X を動かす。

VMware Fusion 6

VMware Fusion 6 を使って Retina ディスプレイ上で Retina モードの仮想 Mac を動かしてみました。


Mac 用の PC 仮想化ソフトVmware Fusion 6 を使って、Retina ディスプレイにRetina 環境のOS X 仮想 PC を動作させてみました。

環境は、Retina ディスプレイを搭載したiMac をホスト PC として使用します。

仮想環境で精細な解像度を有効にする

OS X 用に作成した仮想 PC では、既定ではRetina ディスプレイ上でも精細な解像度は出せないようになっているようなので、まずは仮想 PC の設定を調整して、Retina ディスプレイをフルに活用できるようにします。

ここのRetina ディスプレイのフル解像度を使用します にチェックを入れると、仮想 PC 上の OS X がRetina ディスプレイをピクセルレベルで認識できるようになります。

ただし、既定ではRetina モードは利用できず、4K ディスプレイを接続したMac みたいな感じになります。

Retina モードを有効化する

仮想 PC 上のOS X でRetina モードを有効化するには、仮想 PC 上のOS X のターミナルで、次のコマンドを実行します。

sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES
sudo defaults delete /Library/Preferences/com.apple.windowserver DisplayResolutionDisabled

sudo コマンドを使っているので、実行時に管理者パスワードを尋ねられる場合があります。

このコマンドを実行してから仮想 PC を再起動すると、画面設定でRetina モードが設定できるようになります。

画面設定の解像度でHiDPI と記された項目を選択すると、その解像度のRetina ディスプレイとして画面を利用できるようになります。

仮想 PC でRetina モードを利用する場合の注意点

VMware fusion 6 の仮想 PC 上でRetina モードを使用してみて、いくつか気になる動作があったので、以下に記しておきます。

画面設定の挙動について

仮想 PC の画面設定は、既定ではHiDPI ではない精細な最高画質で出力される様子でした。

そのため、とてもメニューが小さかったり、文字が細かく表示されます。

これを上記の方法でHiDPI 出力すれば、Retina モードになり、文字は読みやすい大きさのまま綺麗に表示されるようになります。


ただ、仮想 PC の場合、ホスト PC 側でウィンドウサイズを変更すると、それにつられて仮想 PC 側の画面解像度が変更になります。

このとき、既に設定した解像度のとき以外は、既定のHiDPI ではない精細な最高画質での表示に切り替わるようで、少しサイズを変更するたびにHiDPI モードに設定し直す必要があるようでした。

このときVMware Fusion のウィンドウをフルスクリーンで表示させれば、常に同じ解像度の画面になるせいか、以前に行った画面設定が有効になる様子だったので、仮想 PC をRetina モードで使う場合は、フルスクリーンで利用するのが勝手が良いかもしれません。

Retina モードでの仮想 PC の動作速度について

仮想 PC の解像度でHiDPI を指定してRetina モードで動かすと、かなり描画速度が遅くなります。

たとえばログイン画面で見てみると、画面全体が上から下へ描画されるのが見えるくらいの遅さがあります。その影響は普通の操作でもあるようで、仮想 PC を操作するときもなんとなく遅い感じがしました。

プログラムのソースコードを書いている分には特に問題にはなりませんが、高画質な画像描画やアニメーションを動かすなどでは実用的ではないかもしれません。

ホスト PC 上でマウスカーソルのサイズを変更している場合

OS X のアクセシビリティ 設定では、ディスプレイ 設定として、マウスカーソルのサイズを変更できるようになっています。

ここでカーソルのサイズ を「通常」よりも大きく設定していると、Retina モードで動作させた仮想 PC 上の OS X で、マウスカーソルが表示されている位置とずれて動作してしまうことがあるようです。

少し大きめに設定していたところ、表示よりも左上にカーソルひとつ分ずれたくらいが実際のマウスカーソル位置になっていたので、そのような症状が発生したときは、ホスト PC のアクセシビリティ 設定を確認すると良いかもしれません。