
Unityってなんだろう?
そんな疑問に現役のゲームエンジニアがお答えします
Unityとは何か?

Unityとはゲームを製作するためのソフトウェアです
公式HPでは「リアルタイム 3D 開発プラットフォーム」を謳っており、ゲーム以外でも3D空間を演出する必要があるアプリの開発などにも用いられています
Unityが使用されているゲーム


開発にUnityが使用されているゲームといえば「Pokemon GO」や「白猫プロジェクト」あたりが有名かと思います
実際の私が所属するゲーム会社でもUnityをしようしてゲームを作る場合は多く、多数のゲームがUnityで作られていることがわかります
Unityを使うメリット

ゲームを作るための必ずしもUnityが必要になるわけではなく、Unityはあくまでゲームを作りやすくするためのソフトウェアです
では、何故Unityを使うとゲームを作りやすくなるのでしょうか? 解説していきます
開発の手間が減る
Unityを使うとゲームの開発にかかる手間を大幅に減らすことが出来ます
例えば、3Dゲームの中「物が落下する」という事象について考えてみます
「物が落下する」のは現実世界ではあたり前のことですが、ゲームにおいては「物が落下する」という現象を再現するためには、プログラミングが必要になります
ですが、Unityであれば「物が落下する」現象を作成するのは非常に簡単です

Unity上には「Gravity Scale」(重力により影響を受ける度合い)などの設定値が存在しており、これを適切に入力するだけで「物が落下する」という表現をUnityが行ってくれます
(※実際の開発ではもう少し手順がありますが今回は割愛します)
つまり、Unityを使うと「物が落下する」現象を作るための手間が凄く少ないのです
1つのプログラムで、複数のプラットフォームでリリースできる
まあこれも言ってしまえば「開発の手間が減る」ということではあるのですが、大きな特徴の一つであるため別項目としました

こちらはUnity公式HPから引用した画像なのですが、これだけのプラットフォームに対応しています
プラットフォームというのは、分かりやすくいえば「iPhone」や「Android」といった分類のことです
いろんな端末、いろんなゲーム機に対応しているということですね
Unityを使わない場合は、プラットフォームごとにプログラムを作成する必要があるのですが、Unityを使うと1つのプログラムで複数のプラットフォームに対応したゲームを作ることができるため、開発が非常にラクなのです
(※実際には各プラットフォームごとの作業は多少あります)
Unityを使うデメリット

もちろんいいことばかりというわけではなく、多少はデメリットもあります
Unityにだって不具合がある
Unityも人が作ったものである以上、常に何かしらの不具合をかかえています
こういった不具合の影響が、自分が作ったゲームにも波及してしまうというのがデメリットです
また、Unityの不具合は調査が難しく、基本的にはUnity側の修正を待つしか手立てがありません
企業がゲームを作る場合、このあたりは明確に「開発リスク」となりえるため、規模が大きいゲーム会社ではあえてUnityを使わないという選択肢は全然あります
あらゆるクオリティがUnity基準になる
Unityを使ってゲームを作ると、グラフィックの美しさや、描画の速度など、あらゆる面でUnityの基準レベルにまとまります
Unityのクオリティは非常に高いため、個人開発など規模小さい開発においては開発の手間が少ないのにハイクオリティというとても美味しい状態になります
ただ、それらは悪い意味ではUnityの基準を超えられないということでもあります
世界で勝負する大規模なゲーム(FFとか)は、より高みを目指していくためにUnityは採用できない場合があります
まとめ

以上、Unityとは何か?とUnityのメリットなどを解説しました
個人的には、非常に簡単にクオリティの高いゲームが作れるためUnityはおすすめです
Unityのはじめ方やインストール方法については別記事にまとめていますので、興味がある方は見てみてください
コメント