「ゲームを作るなら UnityUnreal Engine、どっちがいいの?」——これは私もずっと気になっていた疑問です。記事や動画では「Unrealは綺麗」「Unityは手軽」とよく言われますが、言葉だけだと正直ピンときません

そこで今回は、全く同じ3Dゲームを両方のエンジンで実際に作り、見た目・物理・動作の重さを並べて比べてみました。なるべく公平になるよう、同じ構成・同じ物理のシーンを両方で組んでいます。

🎮 この記事でわかること
・Unity と Unreal、同じゲームの見た目の違い(ライティング・影・反射)
物理挙動の違い(箱を崩す)
FPS・容量・学習コストの違いを表で比較
初心者にはどっちがおすすめかの結論

2大ゲームエンジンを、同じ題材で比べる

スポンサーリンク

ゲームエンジンとは、ゲームを作るための「土台ソフト」です。3D空間・物理・光・音などの仕組みが最初から入っていて、その上に自分のゲームを組み立てます。世界的に二強なのが、Unity(多くのスマホゲーム・インディーゲームで採用)と Unreal Engine(フォートナイトの開発元Epic Games製。フォトリアルな大作で有名)です。

両者は思想が違います。ざっくり言うと——Unityは軽量で手軽、Unrealは高品質で本格的。それを実際の画面で確かめます。

今回の環境

再現できるよう、使ったバージョンと設定を細かく載せます。両エンジンとも同じMac1台で、できるだけ条件を揃えました。

項目UnityUnreal Engine
マシンMacBook Pro(Apple Silicon M4)/同一マシン
バージョン6000.4.5f1(Unity 6)5.7.4
言語 / 記述C#(エディタ拡張で自動配置)Blueprint+Python(同じく自動配置)
描画ビルトインRP(標準)Lumen+Nanite(標準・最高品質プリセット)
ライティングDirectional+補助光+Reflection ProbeDirectional+SkyAtmosphere+SkyLight(テンプレ標準)
物理Rigidbody(箱mass1・ボールmass6)Simulate Physics(同等mass)

※ 比較を「同じゲーム」に寄せるため、シーンの箱は 4×4の16個、これに重い球を上から落として崩す、という条件で統一しています。

比較する題材:3D物理ミニゲーム

題材選びは大事です。スコアを数えるだけのアプリでは、エンジンの差はほとんど出ません。そこで「光・影・反射のある3D空間で、積み上げた箱を物理で崩す」ミニゲームにしました。これなら——

  • 描画:床や箱への光の当たり方・影・空の表現で差が出る
  • 物理:崩れ方・転がり方でエンジンの物理挙動が見える
  • 負荷:リアルタイムに物理+描画が走るのでFPS(なめらかさ)に差が出る

と、3つの違いが一度に見える“おいしい”題材になります。

Unityで作る

Unityはとにかく立ち上がりが速いです。プロジェクトを作ってすぐ、床(Plane)と箱(Cube+Rigidbody)を並べ、カメラの前からボールを発射するC#スクリプトを書くだけ。エディタ拡張で16個の箱を自動配置し、数十分でプレイできる状態になりました。

  • 箱:CubeRigidbody(質量1)を付けるだけで物理が効く
  • ボール:スペースキーで Sphere を生成し、linearVelocity で前方へ発射(速度26)
  • 描画:標準のビルトインRP。床に Reflection Probe を置いて軽く映り込みを追加

下が完成したUnity版です。画面左上に出しているのが FPS(1秒あたりの描画回数。多いほどなめらか)約100FPSと非常に軽快でした。

Unityで作った物理ミニゲーム(箱の壁・約100FPS)

Unreal Engineで作る

Unrealは、起動した瞬間から空気感が違います。標準の Lumen(リアルタイムの間接光)と Nanite(高精細ジオメトリ)が効いていて、何もしなくても床に柔らかい陰影と空の照り返しが乗ります。箱を並べただけなのに、それっぽい“画”になるのは正直驚きました。

一方で、手軽さではUnityに一歩譲ります。今回もMac特有の落とし穴がありました。

⚠️ Macでの落とし穴:Metal Toolchainが必要
シェーダーのコンパイルで missing Metal Toolchain エラーが発生。ターミナルで xcodebuild -downloadComponent MetalToolchain を実行して追加部品(約700MB)を入れたら解決しました。Unrealは最初のセットアップでつまずきやすいのが正直なところです。
  • 箱:基本形状の Cube を置き、Simulate Physics(物理シミュレート)をONにするだけで落下・衝突する
  • ボール:重い Sphere を壁の上から落として崩す
  • 描画:Lumen+Nanite+SkyAtmosphere が標準で有効。最高品質プリセットのまま

完成したUnreal版がこちら。砂漠の地平や空の表現、床のなめらかな陰影に注目です。ただし左上のFPSに注目——約12FPS。Unityの約100FPSと比べて、同じMacでもかなり重くなりました(理由は後述)。

Unreal Engineで作った物理ミニゲーム(Lumen/Nanite・約12FPS)

① 描画品質を比べる

まずは見た目。同じ「箱の壁を置いただけ」のシーンを並べます。左がUnity、右がUnrealです。

Unityの描画
Unity(ビルトインRP)
Unrealの描画
Unreal(Lumen+Nanite)

Unrealは空・地平・柔らかい間接光が標準で乗り、立体感とリアルさが一枚上。Unityは空がシンプルなグラデーションで、良くも悪くも“素直で軽い”見た目です。もちろんUnityもHDRPや作り込みで写実に寄せられますが、「何もしない初期状態での美しさ」はUnrealの圧勝でした。

【補足】UnityをURP・HDRPにしたら差は出る?

「Unityにも上位の描画方式(URP・HDRP)があるけど、それなら差が縮まるのでは?」と思う方へ。先に用語を一言で——Unityには描画の“エンジン部分”が3種類あり、ビルトインRP(標準・今回これ)/URP(軽量バランス型)/HDRP(高画質・高負荷)から選べます。このゲームで切り替えると、結果はこうなります。

観点変わる?内容
物理(箱の崩れ方)❌ 変わらない物理計算はレンダリングと無関係。どの方式でも全く同じ挙動
見た目(光・影・反射)⭕ 変わる特にHDRPは差が出る(下記)
重さ(FPS)⭕ 変わる重さは ビルトイン < URP < HDRP。HDRPが一番重い
  • HDRPにすると、より正確な光の回り込み・きれいな影・映り込み(反射)・ふんわりした空気感などが出せて、Unrealのリッチな見た目にかなり近づきます。ただし今回のような「箱と床だけ」の単純なシーンだと、丁寧に設定して初めて差が見える程度で、劇的にガラッとは変わりません。
  • URPはその中間で、ビルトインより少し表現が増える代わりに、軽さを保つバランス型です(スマホ向けの定番)。
  • 共通して、リッチにするほど重くなるので、HDRPにすればMacでのFPSは今回の約100から下がり、Unrealの重さに近づきます。
📝 ここがポイント
今回のUnityは標準のビルトインRPです。Unityでも上位の「HDRP」を選べば、Unrealのようなリッチな描画に近づけられます(ただし動作は重くなります)。つまり今回の見た目の差は「エンジンの差」であると同時に「設定(描画方式)の差」でもある、という点は押さえておきたいところです。

【補足】Unreal Engineにも同じ仕組みはある?

「Unityにビルトイン・URP・HDRPがあるなら、Unrealにも似た選択肢はあるの?」——あります。ただし考え方がかなり違います。Unityが「別々の描画エンジンを丸ごと選んで差し替える」方式なのに対し、Unrealは「強力な描画エンジンは1つだけ。それを機能のオン/オフと品質設定で軽くも重くも調整する」方式です。入口が違うだけで、軽⇔重を選べる点は同じです。

UnityUnrealでの相当物中身
URP / HDRP を選ぶDeferred / Forward / モバイルの切り替え標準のDeferredは高機能・PC向け、Forwardは軽量(VR向け)、モバイル用は別系統の軽い描画
HDRPの高画質機能Lumen + Nanite のオン/オフUE5の目玉機能。入れるとリッチで重い、切ると軽い
Quality設定(低〜最高)スケーラビリティ(低〜シネマティック)段階的に品質と重さを調整

今回のUnrealは Deferred + Lumen + Nanite を最高品質 で動かしていました。これはUnityで言えば「HDRPで全部盛り」に近い、一番リッチで重い状態です。Lumenを切ったり品質を下げれば、Unrealもぐっと軽くなります(≒UnityのURP・ビルトイン寄り)。

🔎 今回の比較を一言でいうと
Unity=軽い方の標準(ビルトイン) vs Unreal=重い方の全部盛り(Lumen最高品質) を並べた構図でした。だからこそ「見た目」と「FPS」の差が大きく出たわけで、どちらのエンジンも設定次第で軽くも重くもできる——ここは公平に押さえておきたいポイントです。

② 物理で箱を崩す

次は物理。ボール(重い球)をぶつけて箱の壁を崩します。どちらも箱がリアルに崩れ、物理エンジンはしっかり機能しました。崩れ方の細かな違いは衝突のさせ方の差で、エンジンの優劣ではありません。

Unityで箱が崩れた様子
Unity:箱が四方に散乱
Unrealで箱が崩れた様子
Unreal:中央が崩落

触ってみた体感では、物理の“それっぽさ”はどちらも十分。重さ・摩擦・反発といった設定項目も両エンジンに揃っていて、ここで困ることはなさそうでした。

③ パフォーマンス・容量・学習コスト

最後に、数字と使い勝手で比較します。

観点UnityUnreal Engine
FPS(Mac M4・エディタ計測)約100約12(最高品質のまま)
※同じプロジェクトをWindows(RTX3060)に渡すと約80に激変 → ④で詳説
初期状態の見た目シンプル・軽いリアル・高品質
動作の軽さ非常に軽い重い(高品質ゆえ)
インストール容量軽め(数GB〜)大きい(十数〜数十GB)
セットアップの手軽さすぐ動く部品追加など一手間(Mac)
記述C#(学びやすい)Blueprint(ノード)+C++
学習コスト低め・日本語情報が豊富やや高め・大規模向け
得意分野スマホ・2D・インディーフォトリアルな3D大作
📝 FPSの数字について(正直な注意書き)
今回のUnrealの約12FPSは、Lumen+Naniteを最高品質のまま・エディタ上で・Mac(Metal)で動かした“盛りに盛った”状態の数値です。MacはUnrealのハードウェアレイトレに非対応で不利なうえ、エディタ自体の負荷も乗っています。品質設定を下げたり、最適化してビルドすれば、Unrealのフレームレートは大きく改善します。「Unrealは常にUnityの8分の1」という意味では決してありません。あくまで“初期状態の重さの傾向”として見てください。
→ これを確かめるため、同じプロジェクトをWindows(RTX3060)に渡して測り直しました(次章)。

④【実機検証】Windows(RTX3060)で測り直したら別物だった

ここまでの数字は Mac(M4)1台での計測です。とくにUnrealの約12FPSは「Macが不利な条件」での値なので、これだけで「Unrealは重い」と結論づけるのは不公平です。そこで、作った2つのプロジェクトをそのままWindows PC(GeForce RTX 3060)に渡し、同じゲームを別マシンで動かしてもらいました。これが今回いちばんの発見でした。

🖥️ 検証マシン(Windows)
Windows 11 / CPU: Ryzen 7 7840HS / GPU: NVIDIA GeForce RTX 3060(VRAM 12GB)
Unity 6000.4.5f1 / Unreal Engine 5.7.4(DirectX 12・ハードウェアレイトレ有効のLumen+Nanite

Mac と Windows でこんなに違った

エンジン(同条件)Mac (M4)Windows (RTX3060)
Unreal(最高品質・HW Lumen)約12 FPS約80 FPS
Unreal(品質:中)約95〜100 FPS
Unity約100 FPS60 FPS(※表示上限・後述)

注目は Unreal。Macで約12FPSだった全く同じ最高品質プロジェクトが、Windows(RTX3060)では約80FPSと、およそ6〜7倍に跳ね上がりました。これは ハードウェアレイトレ対応のGPU(RTX系)でLumenが本気を出すためで、「Unrealが重い」のではなく「Unrealは対応GPUを積んだマシンでこそ真価を発揮する」のだとハッキリ分かりました。品質を「中」に下げれば約100FPSまで伸び、十分実用的です。

Unreal(最高品質)の同一プロジェクト・FPS比較
Mac (M4) 約12 FPS
Windows (RTX3060) 約80 FPS
Windows・品質中 約95〜100 FPS
Windows(RTX3060)でのUnreal実行(最高品質・約80FPS)
Windows(RTX3060)で動かしたUnreal版(最高品質)。Macと同じ見た目のまま、約80FPSで快適に動作。

Unityの「60」は遅いわけではない(正直な補足)

表のUnityは Windowsで60FPS、Macで約100FPSですが、これは「WindowsのUnityが遅い」という話ではありません。Windowsのエディタ再生は画面のリフレッシュレート(60Hz)に上限が張り付くためで、実際のGPU処理時間を見ると わずか1.0ミリ秒——理論上1000FPS級の余力があります(Macの約100も高リフレッシュ表示の差)。つまり Unityはどちらのマシンでも「GPUに余裕で軽い」のが実態です。フレームレートの数字を比べるときは、こうした表示上限の存在に注意が必要、という良い学びになりました。

UnityのStatistics:GPUフレームタイム1.0ms(GPUに大きな余力)
Unityの統計パネル。表示は60FPSでもGPU処理は1.0ms=余力たっぷり。「60=遅い」ではない。
✅ この実機検証でわかったこと
・Unrealの“重さ”はマシン依存。HWレイトレ対応GPUなら最高品質でも約80FPSと実用的
・Unityは元々とても軽く、数字の上限は表示リフレッシュによるもの
・「重い/軽い」は使うPC込みで判断するのが正しい

結論:初心者はどっちを選ぶ?

実際に同じゲームを両方で作ってみた、私なりの結論です。

  • これから始める初心者 → Unity。とにかく軽くてすぐ動き、C#も学びやすく、日本語の情報が圧倒的に多い。最初の「動いた!」までが速いのは正義です。
  • 見た目のリアルさを最優先 → Unreal Engine。何もしなくても綺麗で、フォトリアルな映像・建築ビジュアライズ・大作志向ならこちら。ただしマシンスペックと学習時間は要求されます。

個人的には、「まずUnityで“作りきる”体験を積み、いずれ高品質に挑みたくなったらUnrealへ」という順番が、非エンジニアにはいちばん挫折しにくいと感じました。どちらも無料で始められるので、迷ったら両方触ってみるのがおすすめです。

それでは、今回はここまで。最後までありがとうございました😊