ゲーム開発者から見た iMac 2019

自宅の作業環境として iMac の 2019 年モデルを使用しているので、 ゲーム開発者から見たスペックや使用感について記録しておく。 同業者の参考にでもなれば。

(なお、写真の画面は雰囲気を出すために Unreal のサンプルプロジェクトを表示しているだけである。)

スペック

27 inch モデルを選択した。庶民なので iMac Pro ではなく普通のほう。

モデル iMac (27-inch, 2019)
ディスプレイ Retina 5K / 5,120 x 2,880 ピクセル
プロセッサ 3.7 GHz 6 コア Intel Core i5
メモリ 64 GB 2667 MHz DDR4
グラフィックス Radeon Pro 580X 8 GB
ストレージ 2TB Fusion Drive
  • デフォルトの仕様で購入し、メモリは別途手頃な値段のものを買って増設している
  • (デフォルトだと 1 〜 2 日程度で家に届くのが嬉しい)

最初に結論

  • 標準カスタムのものだが、CPU / GPU に関しては申し分ない。しばらくは戦えると思う
  • もちろん単純なスペックあたりのコストパフォーマンスで見れば Windows 機の方が安く上がると思う
    • まあでも 5k ディスプレイとそれなりに良いスピーカー、専用に設計されたハードウェアが 30 万円ほどでまとまって手に入るのならば良い買い物ではないかと思う
    • (オプションのメモリは高いので自分で用意しよう!)
  • 5k ディスプレイは確かに美しい
    • エンジニアは人生の大半を画面ばかり見て過ごすので、画面が美しいというのは人生の質に直結する

背景

  • 自分はゲーム開発を生業としている。時代柄、もっぱら iOS / Android 向けがメインになる
  • Client 開発は Unity が主流で、たまに Unreal Engine がある。もしくはネイティブ (C++)
  • Server 開発も行う。昨今だと Docker で環境構築することが多い
  • 仕事では基本的に会社や常駐先の機材を使用するが、家で仕事のプロジェクトを開くこともある
  • 仕事でないにしてもエンジニアというのは家で色々と試したりするものである

これまでは MacBook Pro (15-inch, 2015 Mid モデル) を使用していた。 手軽なのでラップトップ 1 台で済ませていて、実際これで十分に仕事はこなせていた。

まあ仕事はできるものの、4 〜 5 年くらい使っていると少し物足りなくなってくるのが実状である。 メモリは 16 GB だったので、Chrome で調べ事をしながら Photoshop を開きつつ Unity をいじっていると Unity がたまに落ちた。 Docker for Mac も内部的には Linux VM を動かしているのでそれなりにリソースを食う。 Unreal は一番重く、立ち上げているだけで Mac のファンが唸る。 (エディタのフレームレートを大幅に下げて何とかなるといった感じ)

MacBook Pro もまだ戦えるには戦えるが、とは言え環境をアップデートしたいな… ということでデスクトップの iMac を家に置くことにした。

ゲーム開発観点での各スペック観察

GPU

  • 作るゲームがモバイル向けであったとしても、開発環境の描画性能は高いに越したことはない
  • 一般にゲーム向きのグラフィックボードは NVIDIA の GeForce で、AMD の Radeon は動画向きと言われているが、 実際にゲーム系の 3D レンダリング性能はどんなものか

とりあえず Unity 公式の技術デモ Book of the Dead のアセットをビルドして実行してみた。 (ちなみに Unity 2019.2.0b05 ではエラーが出てビルドできなかった。2018.2.21f1 なら動いた)

  • (実行時の解像度は 2560 x 1440)
  • 安定して 30 FPS は出ている感じ
  • 外部ディスプレイをつないだ状態で動かすと当然性能は落ちるが、少しカクつくな、くらいで許容範囲
    • (2560 x 1440 の外部ディスプレイ 1 台を接続した場合)

CPU

  • ゲーム開発では、ソースコードのコンパイル時間、アセットや実行可能ファイルのビルド時間に効いてくる
    • この辺は開発効率の観点で、意外と軽視できない部分だ
  • MacBook Pro で何とかやっていたところが単純に速くなるので、単純に快適になる
  • ちなみに上記の Book of the Dead は、アセットのインポート処理に 30 分弱、app のパッケージングに 30 分程度という感じだった
  • Unreal Engine のシェーダのコンパイルなども、MacBook Pro 2015 と比べて体感で倍くらいは速くなっているように感じる

メモリ

メモリというのは足りない事はあってはならないが、多いぶんにはいくらあってもよいものである。 2019 年現在において、メモリサイズに対する自分のイメージは以下のようなところだ:

8 GB 開発や創作を行うには足りない
16 GB ギリギリ最低ライン
32 GB これくらいあれば安心
64 GB 何も考えなくてよくなる
128 GB 何に使ったらいいんだ

実は iMac というのは MacBook と異なり、容易にメモリを増設できるようになっている。

スロットは 4 つあり、デフォルトの 8 GB カスタムでは 4 GB のメモリが 2 つ刺さっている。 おすすめは 16 GB のメモリを 2 つ追加して 40 GB にすることだ。コスパが良く、十分な容量になる。

と言いつつ、自分は調子に乗って 64 GB 積んだ:

自分の場合は以下のメモリを 4 枚、別途購入して増設した。 購入時のオプションでメモリを積むと 16 GB あたり 47,520 円かかってしまうが、こちらだと 12,000 円程度で済む。 この差は大きい。

40 GB で十分とは言ったが、OS はメモリに余裕があれば余裕のある使い方をするもので、 64 GB のメモリが無用の長物ということにはならない。 パーキンソンの法則 だ。

ちなみに、1 週間ほど Mac を起動したまま、色んなソフトウェアを出しっぱなしにして無邪気に作業した時のメモリ使用状況は、 以下のようになった。

※ Unity は Book of the Dead を開いている状態

※ Unity は Book of the Dead を開いている状態

Chrome のキャッシュが解放されずにたまっていくことはあるが、 専有メモリが 40 GB を越えることはそう無いと思ってよさそうだ。 (それはそうと、Epic Games Launcher は Launcher のくせにちょっとやんちゃしすぎだと思う。普段は落としておこう)

ストレージ

SSD は良いものだが、なにぶん高価だ。2 TB の Fusion Drive を 2 TB の SSD に変えると税込みで + 13 万円くらいかかる。 生きていればファイルアクセスは避けられないので読み書きの速度は重要なのだが、とは言えストレージは容量も求められる。

  • ゲーム開発時には大量のアセットが生み出され、その元データなども管理する必要がある
  • ゲームのリポジトリが(ビルドされたファイルも含めて) 数十 GB のサイズになる ことはザラである
  • Server 開発も環境構築にストレージを食う。Docker のイメージファイルなどは肥大化しやすい
  • 君が趣味で写真や動画や音楽を嗜むならば、そうしたものにもストレージは必要だろう
    • 例えば Logic Pro で音源をインストールすると 50 GB は優に超える

容量は 512 GB が最低ライン、1 TB は欲しい、2 TB あるなら安心、といったところだろう。

Fusion Drive は HDD + SSD のハイブリッド型で、2 TB の場合内部的には 128 GB の SSD が含まれている形だ。 そのためストレージの消費量がより大きくなってきた時にどうなるか分からないが、 現状では速度面は特に気になっていない。 まあそりゃ SSD よりは遅いだろうけど、コスパを考えると Fusion Drive で十分なのでは、と思える。

ちなみにデータを外付け SSD から iMac にコピーした時は、以下のような書き込み速度だった:

  • 計 10 GB (4500 ファイルくらい) をコピーしきるのに 30 秒程度
  • 計 50 GB (350,000 ファイルくらい) をコピーしきるのに 10 分程度

ゲーム機としてはどうか

ゲームはゲーム機でやる派なので Mac でゲームをやるつもりはあまり無いのだが、 まあ普通に遊ぼうと思えば遊べる。

以下は EVERSPACE という、シューティングのローグライクみたいなゲームを iMac で動かしている時の画面。 (コントローラは PS4 のものが接続できた)

ちなみに 5k ディスプレイだからといって 5k の解像度でゲームができるわけではない。 そこまでのグラフィック性能は無い。 大抵は最大 2560 x 1440 でプレイすることになるだろう。(まあそれで十分だが)

ゲーム自体は少ない

これはよく知られていることだが、Windows と比べて対応しているゲームは圧倒的に少ない。

Mac で遊べるゲームを探すくらいなら、Bootcamp で Windows をインストールして Windows 上で遊ぶ道を進む方が、 時間を無駄にしなくて済むだろう。

そもそもなぜ Windows ではなく Mac か

これはまあ macOS が Mac というハードウェア上でしか実行できない ということに尽きるのだが、 一番わかりやすい説明は iOS 向けのビルドがしたいから、 である。 まあ、巨大なベンダーロックインではあるが、iOS 端末がこれほど世界に普及しているのだから仕方ない。

と言いつつ、何だかんだ僕は Mac を気に入っている。 学生時代は Windows を使っていたが、就職してからは自宅のメイン環境はずっと Mac だ。

Mac の気に入っている部分

  • フォントが美しい
    • 冗談のようだが、割と本気だ
    • Windows も時が経てば大差無くなるかなと思っていたが、意外とそうはならなかった (個人の感想です)
  • UNIX ベースでターミナルが使えて Server 開発と相性がよい
    • (このあたりは Windows にも WSL が乗ったことで優位性は無くなりつつある)
  • 何だかんだ Mac 専用のソフトウェアを購入して使っている
    • OmniGraffle はとても気に入っている図表作成ソフトだ。あとは Logic Pro とか

その他所感

背面ポート

  • 気持ちは分かるが ヘッドフォン端子も背面にある ので不便は不便である
    • 見た目が美しいのは良いが、使いやすさの観点でデザインとはこれで良いのか…? と思ってしまう
  • 何となく MacBook のようにもう USB-C しかついてないのかな? と思っていたが意外に USB 3 ポートが 4 つもついていた
  • HDMI ポートは無いので注意

配線

  • マシンとディスプレイとスピーカーが電源コード 1 本で済むのは机がすっきりして良い
  • いざ使ってみると一体型のデザインはなかなか良いものだなと感じた

ディスプレイの映り込み

  • 若い頃はグレアタイプのディスプレイはありえないと思っていたが、意外と気にならなくなった
  • 仕事で Apple Thunderbolt Display (2011 年に発売されたもの) を使ったことがあるが、 その頃のディスプレイの映り込みは凄まじかった。暗い背景のエディタでコードを書いていると、鏡を見ているかのようだった。
    • (後ろから人が近づいてきた時にすぐに気付けるという効用はある)
    • が、そのレベルのディスプレイも使っていると意外と慣れるもので、人は環境に適応できる生き物なのだなと思った
  • それと比べ、近年の Apple の液晶は映り込みや光の反射がかなり軽減されるようになっている
    • (歴代の MacBook や iPad を眺めてきた経験からもそう思う)
    • 今回の iMac も黒背景だとまあ多少の映り込みや反射はあるのだが、自分としては気にならないレベルである

スピーカーの品質

  • 思ったよりも良かった。 「ディスプレイの内蔵スピーカー」 という括りで見ればなかなかの品質なのではないだろうか
  • ただ、以前は Bose のデスクトップスピーカーを置いて使っていたが、そうした外部スピーカーと比べると低音は軽い印象
  • この辺は個人の趣味だが、自分は音楽を聴くには低音が軽すぎて落ち着かないなと感じたので iTunes のイコライザを使用している
    • プリセットの Bass Booster をかけるくらいの音が自分にはちょうどよかった

まとめ

ということで、しばらくはこの作業環境で快適に仕事していけそうである。

道具は整ったのでアウトプットを頑張ろうと思う。