今回はゲームエンジンに関する話題で、タイトルの通り「Unity」と「Unreal Engine(UE)」を徹底比較するという内容の話です。
両者はどちらもプロ仕様のゲームエンジンであり、競合製品でもあるのでお互いライバルとして巷で比較されることも多いですよね。ただ両方のゲームエンジンを実際に使ったうえで相違点を言える人はかなり少ないと私は思っていて、ほとんどの人は片方だけ使って「やっぱもう一方の方がいいのかな」とか「いや、きっと今使っている方が良いに決まっている」などと言っているだけだと思います。
そこでここでは実際に両方のゲームエンジンの使用経験がある私が、
- これからゲーム開発を始めたいけどどちらのエンジンを使えばいいのか分からない
- いま片方を使っているけど、もう片方がどんな感じなのか気になる
という方向けにこの2つのゲームエンジンを徹底的に比較し、どういった場合にどちらを使うべきなのかを書いていきますね。
結論:どのような場合にどちらのゲームエンジンを使うべきか?
まず最初に結論から言ってしまうと、Unityを使った方が良い場合・Unreal Engineを使った方が良い場合はそれぞれ次の通りです。
- 2Dゲーム・もしくは(2D/3D問わず)スマホゲームを作りたいならUnity
- ハイクオリティな3Dゲームを作りたいならUnreal Engine
まず2Dゲームやスマホゲームを作るのであればUnityのほうがオススメです。理由は単純なゲームを作るのであればUnityのほうが使い方・作り方の情報が多く習得しやすいからです。
一方、Unreal Engineはデフォルト設定でも美麗な3D表現が可能なので、最初からハイクオリティな3Dゲームを作ろうと思っているならUEのほうがオススメだといえます。
…ただまあ後述する比較表を見て頂ければ分かると思うのですが、Unityでも美麗な3Dゲームは作れますし、Unreal Engineでも2Dゲームを作れるので上記の結論が必ずしもあなたにとって正しいとは限りません。結局どちらも優れたゲームエンジンであり甲乙つけがたいので、機能をよく比較してご自身のゲームに合った方を選んでいただくのが一番だというのが正直なところです。
UnityとUnreal Engineの比較表
では結論を述べたところで、UnityとUnreal Engineの比較を行っていこうと思います。主な比較項目の一覧表は次の通りです。
比較項目 | Unity | Unreal Engine |
---|---|---|
プログラミング言語 | C# | C++ |
ビジュアルプログラミング | 対応(※Unity2021~) | 対応 |
マルチプラットフォーム | 対応(PC/スマホ/ゲーム機) | 対応(PC/スマホ/ゲーム機) |
デフォルトのグラフィック | ダサい~普通 | 美麗 |
エディタの動作・容量の重さ | 普通~やや重め | 重い |
開発スタイルの違い | ゲームシステムは自分で作るかアセットを使うのが基本 | テンプレートが用意されており、ゼロから作らなくても始められる |
公式アセットストアの特徴 | 無料アセットの数が多い。アセットごとの品質のバラつきが大きい | 全体的に高品質なアセットが多い。価格は高め |
エディタ・公式マニュアルの日本語化 | 一部のみ対応 | ほぼ完全に対応 |
ネット・書籍等の情報量 | 多い | 少ない |
それぞれ詳しく説明していきますね。
プログラミング言語
まずプログラミング言語についてはUnityはC#・Unreal EngineはC++です。
一般的に言えばC#のほうが習得しやすいと思うので、自力でプログラミングするならUnityのほうが初心者でもやりやすいかなと思います。
ビジュアルプログラミング
次にビジュアルプログラミング、つまり「視覚的にプログラミングする機能」があるかどうかについてですが、これに関しては(執筆時点の)最新バージョンではどちらのゲームエンジンも対応しています(下図)。
ただし先にこの機能を取り入れたのはUnreal Engineのほうで、Unityはかなり遅れる形での実装となりました。Unityのほうは新しいバージョン(=2021以降)でないと公式機能として使えませんし、実際に使ってみたところまだまだ使いにくさが残っているので、この項目については先駆者のUEのほうが勝っているといえるでしょう。
マルチプラットフォーム
さてマルチプラットフォーム対応、つまりゲームを色々な環境向けに出力できるかどうかについては、どちらも対応しておりほぼ互角です。
一応Unityのほうが出力できるプラットフォームの種類が多いのですが、どちらも主要なプラットフォームに対応しているという点では変わりありません。
デフォルトのグラフィック
次は皆さんが一番気になるであろうグラフィックについての比較です。これに関しては正直どちらのゲームエンジンも設定次第ではあると思うのですが、デフォルト設定に限って言うとUnreal Engineの圧勝です。
まあグラフィック面はUnityもけっこう頑張っていて、「HDRP」というテンプレートを使うとUEに近い美麗な3D表現を行うことが可能です。しかしデフォルトテンプレートや、その後継に当たる「URP」というテンプレートでは表現力がイマイチでそのまま使うとダサい絵面になってしまう感は否めません。
ただし当然ながら美麗な表現ほど処理コストが高いので、一概に「グラフィックがきれいだからUEのほうがいい」とは言い切れないのがまた難しいところです。要はスタート地点がシンプルなのか美麗なのかの違いであり、それを考えると作るゲームによって表現力を柔軟に変えやすいUnityのほうが便利だとも言えます。
※ただしUnityはグラフィックのテンプレートが3種類あり、なんとそれぞれ互換性がなくて使い方も大きく違うので「やっぱ別のテンプレートを使いたいなぁ」という場合にはとんでもなく不便です。この点に関してはUnityの設計ミスと言わざるを得ないと思います。
エディタの重さ
次にそれぞれのエディタの重さについては、作るゲームにもよりますがUnityのほうが若干軽い印象です。
Unityエディタは2Dゲームとかであればスペックが高くないノートPC等でも動くのに対して、UnrealエディタはハイスペックなPCを前提としているようです。あとインストール時のサイズ(=必要な空き容量)で言うと、Unityは数GBで済むのに対してUnreal Engineは20~30GBとかなり多くの容量を食うのも大きな違いですね。
開発スタイルの違い
さてお次は開発スタイルの違い、つまり「どういう風にゲームを作るのを前提としているか?」について比較してみましょう。
まずUnityにはテンプレートがあるのですが、テンプレートといっても基本的にグラフィックに関する設定がされているだけなのでゲームシステムやキャラクターの動きは自分で作るか、またはアセットを使うのが前提となっています(下図)。
一方でUnreal Engineには
- アクションゲーム用
- FPS用
といったすぐ動かせるテンプレートが用意されており、初心者でもゼロからゲームを作ることなくゲーム開発を始めることが可能です(下図)。
それを考えるとこの点についてはUEのほうが優れていると言えるでしょう。
公式アセットストアの特徴
次に公式アセットストアの違いを見てみると、
- Unityアセットストア:質より量
- UEマーケットプレイス:量より質
という感じでちょうど真逆の特徴を持っていると思います。
まずUnityアセットストアには膨大なアセットがあり、無料アセットも充実していて価格も比較的安い傾向があるのですが、何といっても品質は玉石混淆で注意しないと粗悪品をつかまされる可能性があります。
一方のUEマーケットプレイスは全体的な品質は高いのですが、例えばUnityアセットストアと同じアセットを出しているパブリッシャーを見てみるとマーケットプレイスのほうが価格が高くなっているため割高なのが見て取れます。また無料アセットの種類が少ないので自分で素材を用意できない人にとっては大きな出費を強いられることになるかもしれません。
ちなみに意外な盲点である決済の観点から比較すると、Unityアセットストアはドルかユーロでしか支払いできないので追加で為替手数料がかかりますが、UEマーケットプレイスは日本円で支払いできるため追加の為替手数料はかかりません。
エディタ・公式マニュアルの日本語化
それからエディタや公式マニュアルがどれくらい日本語に翻訳されているかで比較すると、これに関してはUnreal Engineがほぼ完全に日本語化されているのに対して、Unityは翻訳が遅く一部しか日本語化されていません。
Unityについては最近のバージョンであればエディタの日本語化はまあまあ進んでいますが、まだ細かい項目が未翻訳だったりしますし、公式マニュアルでは新しめの情報はほぼ未翻訳なので英語が苦手だとかなり不便だと思います。
ネット・書籍等の情報量
最後はそれぞれネットや書籍等でどのくらい作り方・使い方の情報があるのか?といった点についてはUnityのほうが日本語の情報が圧倒的に多いです。
ただしUnityは巷の情報は多いのですが、先述の通り公式マニュアルの日本語化がすごく遅いので正確な情報を知りたいときに少し苦労する場合が少なくありません。一方でUnreal Engineは巷の情報こそ少ないものの、公式マニュアル・チュートリアルは問題なく日本語化されているため安心して取り組むことができるでしょう。
両者を比較した場合のメリット・デメリットについて
では上記を踏まえて、UnityとUnreal Engineを比較した場合のそれぞれのメリット・デメリットをまとめてみようと思います。
Unityのメリット・デメリット
メリット
- プログラミング言語がC#であり、比較的習得しやすい
- 幅広いジャンル・表現方法のゲームを作ることができる
- 無料アセットが充実している
- ネット等に載っている情報量が多く学習しやすい
デメリット
- デフォルトのグラフィック設定だと見た目がダサい(そのままだとUnityで作ったことが即バレるレベル)
- グラフィックのテンプレートがいくつもあり、それぞれ互換性がない上に使い方も大きく異なるので分かりにくい
- 正確な情報を知るためには英語力が必要
Unreal Engineのメリット・デメリット
メリット
- デフォルトのグラフィック設定でも十分かっこいい
- テンプレートがあり、動くゲームをすぐに作り始めることができる
- ほぼ完全に日本語化されている
デメリット
- ハイスペックなPCが必要
- ネットや書籍などの情報量が少ない
おわりに
以上、少し長くなりましたがUnityとUnreal Engineの比較結果について書いてきました。
まあ結局のところどちらも一長一短ありますが素晴らしいゲームエンジンであることには変わりはなく、総合的に比較するとほぼ互角だと言えるでしょう。ただ(冒頭にも書いた通り)それぞれ向き不向きがあるので、よく機能を比較してご自身のゲームに合った方を選ぶのがとても重要だと思います。ぜひご自身でどちらが良いかを吟味してみてください。
この記事がゲームエンジン選びのお役に立てば幸いです。