とある中学生プログラマーのブログ

脱スクリプトキディを目指している中学生がいろいろ書いていくブログです

UnityとUnreal Engineを検証してみた

注:この記事はだいぶ前(2017年)に作成した記事なので、情報が古くなっている可能性があります。ご了承ください。


こんにちは。幽霊ハッカー(当時まだこのハンネでした)です。もう、冬本番ですね(嘘つけ)。さて、自分がここ最近やっているのは、ゲーム開発です(今はセキュリティに専念してます)。ゲーム開発では、専用の開発環境、ゲームエンジンを使います。主要な3Dゲームエンジンには、UnityとUnreal Engineがあります。そこで、今回は、その2つを、開発元やユーザーの人のサイトの情報と、実際に検証して、どちらがどのような用途に向いているかまとめてみたいと思います。ただ、幽霊ハッカーも初心者な上に、Unreal Engineはまだ使い始めて1ヶ月もたっていないので、そこを考慮して見ていただきたいと思います。では、始めていきます。

ライセンス

ライセンス(使用する際の条件)です。両方ともプロプライエタリライセンス(一般的な企業などが作るソフトウェアのライセンス)ですが、Unityは、ソースコード非公開、ロイヤリティー(儲けた分のソフトウェア会社への分け前)がなし、Personal,Plus,Professional,Enterprise版がある、などです。ちなみに、一番下のグレードがPersonalで無料、一番上のグレードがEnterpriseですが、価格の確認が可能な一番上のグレードはProfessionalで15000円です。また、Pulsでも4200円です。いくらなんでも中学生には手が届きません。とはいえ、有償版はビジネスを想定しているような機能が多いので、それに伴って価格も高額だと考えられます。というわけで、よっぽど盛大に開発を行ったり、収益を得ようとする場合以外、有償版は不要だと思います。一方、Unreal Engineは、ソースコードが公開、1つのゲームあたり3ヶ月に3000ドル(33万3000円(2017/5/29/20時現在))以上の売り上げがある際にロイヤリティーが5%かかる以外は完全無料です。以前は、「1ヶ月に毎日コーヒーを一杯我慢するだけで使える価格(2300円)」と話題になったこともありましたが、開発元のEpic Gamesは、さらに無料化に踏み切ったという話です。中学生には月2300円でも高いですけどね(^ ^;)。また、ソースコードが公開されているため、自分でバグを直したり、改造もできます。ライセンスでは、Unreal Engineの圧勝です。

パフォーマンス

Unityは、僕が使っている性能の低いPC(CPU:2.4GHz,Memory:2Gb,ビデオカードなし)でも割とサクサク動きます。一方、Unreal Engineは、僕のPCではグラフィックが対応していませんとエラーになるので、家のそこそこ高スペックなノートパソコン(CPU:2.6GHz Memory:4Gb,Radeon搭載)を使う羽目になります。そして、そのPCでも、大量にブラウザのタブを開いた状態で使おうものなら「Windowsがパフォーマンスが低下しているので終了して下さい」と警告が出る始末です。ちなみに、Unreal Engineの推奨システム要件は、CPU2.6GHzのクアッドコア、メモリは8Gbです。そんなわけで、パフォーマンス面では、Unityの圧勝です。

グラフィック

次に、グラフィックです。ここは、百聞は一見にしかずなので、両者の動画を載せておきます


UE4 Features Trailer 2014 | Unreal Engine
↑Unreal Engine

Official Unity 5 Feature Preview Trailer
↑Unity
どっちも同じ感じですが、実際には、UE4の方がいい加減にやっても、結構リアリティが出ます。ちなみに、Unreal Engineは、その性能の高さから、映画にも使われています。

プログラミング言語

Unityは、C#,Javascript,Pythonもどき(実質なし)です。一方、Unreal Engine4は、基本、BluePrint、C++です。それ以外にも、複数のコンピュータ言語に対応させることができます。まず、Unityは、全部、文字を打ち込んでプログラミングします。一方、Unreal EngineはBluePrintというプログラミングの命令を線でつないでプログラミングする、いわゆるビジュアルスクリプティングと、文字を打ち込むC++などとの合わせ技でプログラミングしていきます。

↑ Unreal EngineのBlue Printのプログラミング画面
ここは、意見がわかれるところですが、個人的には、デバッグのしやすさやプログラミングがグラフィカルに出来るという点では、UE4が上だと思います。個人的には、Unreal Engineだと思いますが、自分で比較する事をお勧めします。

サービス

Unreal Engineは、クラウドなどが使えません。(あるのかもしれませんが、おそらく企業向けでしょう)それに対して、Unityは、クラウドサービスが充実しています。例えば、課金システムを簡単に作成できたり、時間がかかるビルド(ゲームのプログラムを実行形式にする処理)をクラウド任せにして高速で行うことができます。また、オンラインプレイのためのサーバを使うこともできます。それだけでなく、Unity Analysys課金でどのようなアイテムを買ったか、どのようなプレイをしたかをクラウドに収集して解析する機能もあります。Unreal Engineも同じようなことができますが、サーバを自分で開発・設置したり、課金の場合は自分でストアへの手配や、場合によっては専用の法的な手続きをする必要があります。というわけで、サービスはUnityの圧勝です。

対応OS

Unityは、公式には、Windows,Macがありますが、非公式なLinux版もあります。またUE4は、Windows,Macのパッケージ&管理ソフトがあり、Linuxは自分でビルドしなければならず、また、管理ソフトが使えないため、アップデートが手動である他、マーケットプレースのアセット(3Dデータ等のゲームの部品)やサンプルゲームが使えません

使いやすさ

これは、自分でブロック崩しを作ろうとした時の話です。Unity⇒1日で終了 Unreal Engine⇒はじくところでチュートリアル通りにできず、断念。(それまで1日費やした)とりあえず、複雑奇怪なプログラムや仕組みをつくるのでなければ、Unityの方がよいということです。一方、Unreal Engineは、テンプレートや、アクションなどの機能が充実しています。ちなみに、Unreal Engineは、元々Epic Games社でUnrealというシューティングゲームを開発するために作られたので、シューティングゲームのための機能が揃っていて、テンプレートでBB弾を撃つものがあったりします。また、ブループリントでバグなどがどこで起きているのか開発画面で一目瞭然なので、複雑なコードが必要になる場合は、Unreal Engineが良いと思います。テンプレートがなくてもがんばれる人、VRをやりたい人(VR系の資料が充実していおり、Hololensなどが対応しています)、軽いゲームを作りたい人⇒Unity、シューティングゲームやリアリティのあるゲームを作りたい人、新しいことをしたい人、オリジナリティのあるゲームを作りたい人(先述の通り、コードが公開されているため、改造できます)⇒Unreal Engineといったところです。

情報量

Unityの場合、インターネットに大量のチュートリアルがあります。また、解説書もたくさん販売されています。(だいたい3000円ほどします)いっぽう、Unreal Engineは、検索しても情報が少ないですし、解説書も多くありません。また、日本ではまだ趣味や個人でつかっている人少ないと思われます。とはいえ、シェアは確実に拡大していると考えられますので、今後、情報量が多くなると考えられます。
そんなわけで、

まとめ

・ライセンス:Unreal Engine
・パフォーマンス:Unity
・グラフィック:Unreal Engine
・プログラミング言語:多分Unreal Engine(目的による)
・サービス:Unity
・使いやすさ:個人差があります
・情報量:Unity
こんな感じです。とりあえず作ってみたい人や、スマホ用のゲームを作りたい人(Unityは非常に軽量で、モバイルゲームの半分はUnityと噂されるほどです)、文字でのプログラミングが大丈夫な人にはUnityがいいと思いますし、少し冒険してリアリティのあるゲームを作りたい人や、新しいことに挑戦したい人、は、Unreal Engineが良いと思います。

おまけ

Unityは、ゲーム制作だけでなく、コンピュータ上でのシュミレーションに使われることもあります。また、無理ゲーとして有名な3DしょぼんのアクションはUnreal Engineで作られています。Unreal Engineは、そのグラフィックの質の高さから、ゲームにとどまらず、3DCG映画などにも使われており、有名な、「DEATH NOTE」を制作する際は時間短縮のために使用されたそうです。Unityの小中学生向けコンテストもあるそうです。

参考文献


これは2014年の、ある会社のブログでUnreal Engineが紹介されている記事です。このころはまだ無償化されていませんでした。

Unreal EngineのEULA(使用許諾書)(日本語版)

UnityのEULA(日本語版)



どっちを使うか迷った時に判断の参考になりました。



Unityの良さを解説したスライド



これも参考になりました

役に立つマニュアル(Unity)



本家のチュートリアルです。



本家のマニュアルです。



ゲーム開発者の方が書いているチュートリアルです。

役に立つマニュアル(Unreal Engine)

書いた通りですが、まだ情報が少ないです。



本家の入門チュートリアル



勉強会で使われたスライドだそうです。Slide shareに結構解説スライドがあります。



勉強会の動画です。結構有名です。


書き終えて

ブログ開設以来の最大規模の記事です。また、初めて見出し機能も使いましたし、Youtubeの動画を載せました。また、リンク数も過去最多です。

×

非ログインユーザーとして返信する