見出し画像

Unityではなく、 Unreal Engineを使うという選択肢

この記事の目的は、VRを作るならとりあえずUnityという風潮があるので、もう一つくらい選択肢を提示しても良いと思い、書いた記事です。ターゲットは、VRで何かをしたいと思っている方です。

雑にいうと、Unreal Engine4(以下UE4と省略します。)でもUnityでも、できることはほとんど変わりません。他のものに例えると、フォークかスプーンのような違いだと思います。フォークでもスプーンでも大体の食べ物は食べれます。スープに関しては、スプーンの方が優位ですが、フォークでも時間をかければ、スープを飲み切れるはずです! w なので、大体同じことは実現可能だけど、それぞれには得意不得意があります。

ここでは、ほぼ似たことができる二つのツールについて、どちらも実際の仕事の中で使ったことがある僕の視点から、VRのコンテンツを作るうえで、どちらを選ぶべきかという話をまとめていきます。(ここでは、VRに特化して書いていますが、スマホでもVRデバイスでもPCでもできることは大体同じです。Unityで作られたアプリもUE4で作られたアプリも世の中にはたくさんあります。)

結論:どちらのゲームエンジンを使うのが良いの?

VRで何かを作りたいと思う主体には、個人、プロジェクトを実行するチームあるいは、法人があると思います。なので、ここでは、個人としての選択とプロジェクトを実行する集団、二つの視点でのUE4とUnityの選択について僕なりの見解を書きます。

先に結論を先に書くと、

これまで他の分野でエンジニアとしての経験があり、VRでゲームを作りたいたいという人   or   アクションゲームのように独自の機能を細かく大量に作りたいプロジェクト では、Unityを使うべき。
これまで、エンジニアとしての経験が少ないデザイナー、もしくはアーティストで、VRコンテンツを作りたい人 or 映画や実写のようにビジュアルを細部まで洗練させたいプロジェクトでは、Unreal Engineを使うべき。

というのが、僕個人の見解です。

UnityとUnreal の歴史

Unityは2005年に商用製品として誕生しました。当時はMac専用のソフトウエアだったそう。2008年ごろから、AppleのApp Storeでは、多くのアプリがダウロードされるようになり、ダウンロードされるゲームも次第に増えてきました。その中でUnityは、モバイルゲーム(主に2Dのゲーム)の開発ツールとしてその地位を上げていきました。

一方で、Unreal Engineはもっと古い歴史を持っています。初めのバージョンは、1998年にリリースされました。Unreal Engine2は、PlayStation 2、ニンテンドー ゲームキューブ、およびXboxで使用されることを前提に開発されました。このことからもわかるように、Unreal Engineは、モバイルではなく、家庭用ゲームやPCなどの比較的ハイエンドの3Dのゲームを作ることを想定して作られました。そのため、モバイルのタイトルは、これまで少なかったのですが、時間とともに改善されており、Fortniteが大成功した後も、モバイル向けの最適化も意欲的に行われています。[1][2] 

得意なこと、不得意なこと

このような背景からUnityとUnrealの得意なこと不得意なことを捉えることができます。ここでは、両者の比較を項目ごとにしていこうと思います。[3]

参入障壁

まず初めてに思いつくのが、初めやすさです。UnityはMacBookでも、大抵のPCで動くのですが、Unreal Engineは、MacBookでは、ゲームを作るためのエディターが重すぎて、なかなか立ち上がりません。なので、初心者がUE4を触るためには、PCを新しく購入する必要がある時が多いです。

よく勘違いが起きるのですが、UE4のエディターは重いですが、UE4で作ったゲームは、必ずしも重くはありません。むしろ3DゲームであればパフォーマンスはUnityよりも、UE4の方が良い気がするので、UE4で制作したアプリもスマホでもサクサク動きます。VRについても同じです。

2D/3D

歴史の部分で触れたように、2DゲームはUnityで作る方が断然優れているともいます。Unreal は2Dゲームに向いていない気がします。一方で、Unrealは3D向けにずっと作られてきたこともあり、3DゲームでのパフォーマンスはUnityよりも良いです。

開発者、コミュニティー

最近のモバイルゲーム(主に2D)の市場拡大とともに、Unityエンジニアの数はUnrealのエンジニアの数よりもかなり多いです。これが、VRの開発はとりあえずUnityとなる要因だと思います。また、Unityは、困った時に周りに多くの開発者がいるので、助けを求めやすいです。UE4は、情報源が英語のことが多く、困った時に英語が苦手だと苦労しそうな印象です。同様に、勉強する際の日本語の記事やチュートリアルは、Unityの方が、Unrealよりも多いです。

ビジュアル

ビジュアル面に関しては、多くの人が理解されているようにUE4の方が有利です。光の表現に関しては、Unityも新しいレンダリングの手法が開発されUE4に近づきつつありますが、まだ実戦で使える状態ではないようです。UnityでUE4と同じような見た目を手に入れるには、追加でいくつかのplag inを購入したり、UE4よりもより多くの時間がかかります。

UE4では、ビジュアルの調整が直感的に可能ですが、Unityでは、ビジュアルの調整もコードベースにやらなくてはいけないことがあります。

エンジンの機能

エンジンが提供する機能についても、ビジュアル面と同様です。3DゲームやVRを開発する際に必要なもので、UE4で利用できる機能が、Unityではない場合が多いです。Unityで同じ機能を実現するためには、追加でコミュニティーが制作したPlaginを購入し、実際にきちんと動作するかどうかの検証を行う必要があります。(例えば、UE4ではマルチプレーを実現する機能がエンジンの中に含まれていますが、Unityではエンジンの機能に含まれていません。自分たちで開発をする必要があります。)

開発

UE4には、デフォルトで開発に必要な機能がかなり揃っていますが、エンジンにない機能をプログラム使って追加で作るには、Unityに比べて苦労するようです。(僕自身に、その経験があまりないので、このような書き方にしました。)一方で、Unityの場合は、元々プログラムで様々な仕組みを作っていけるツールなので簡単にできるそうです。

まとめると、Unityはプログラムを直感的にかけるエンジア向けのツールで、Unrealは、ビジュアルを直感的に作れるデザイナー、アーティスト向けのツールと雑に分類できます。

Reference

[1]https://devga.me/guides/unity-or-unreal-engine-in-2020/

[2]https://web.wpi.edu/Pubs/E-project/Available/E-project-030614-143124/unrestricted/Haas_IQP_Final.pdf

[3]https://medium.com/@N_iX/unity-vs-unreal-how-to-choose-the-best-game-engine-d3dbb4add73c

[4]https://www.reddit.com/r/gamedev/comments/dk1w8o/what_are_the_pros_cons_of_unity_vs_unreal/

この記事が気に入ったらサポートをしてみませんか?