ゼロから始めるVRゲーム開発

知識ゼロから学生のVRゲーム開発に参加してみた【第2話〜開発環境はアンリアルエンジン or Unity?編〜】

こんにちは、Fe(エフイー)です。

知識ゼロから学生のVRゲーム開発に参加してみたシリーズの第2話「開発環境はアンリアルエンジン or Unity?編」です。

第0、1話はこちら↓

 

今まではとりあえずC言語の復習をしていたのですが、

今回VRでのゲーム開発を進めていくにあたって立ち塞がった壁が、開発環境を、UE(アンリアルエンジン)か、Unity(ユニティ)を利用するか。ということです。

VRゲーム開発どころか、ゲーム開発自体全くやったことのなかった私ですが、UnityはなんとなくVRゲームを作れるんだなぁという軽い認知はありましたが、アンリアルエンジン(UE)に関しては全く知りませんでした。

今回はVRゲーム開発においてアンリアルエンジン(UE)とユニティ(Unity)はどういう特徴があって、どっちを利用した方がやりやすく、また私の参加しているVRゲーム開発はどういう理由でどっちの環境を利用するのかについて話していきます。

 

アンリアルエンジン(UE)とは

Unreal Engine(アンリアルエンジン、UE)は、Epic Gamesより開発されたゲームエンジンである。1998年にファーストパーソン・シューティングゲーム (FPS) である『Unreal』で初めて実装された。

NASAの宇宙飛行士訓練やウォルト・ディズニー・カンパニーの映画製作とテーマパークに利用されるなど様々なジャンルで使われ、「最も成功したビデオゲームエンジン」としてギネス世界記録にもなっている。

Unreal Engineのコア部分はC++で記述されている。Unreal Engineは高レベルの移植性という特徴があり、iOS、Android、Nintendo Switch、PlayStation 4、Xbox Oneなどをサポートしている。

多くのゲームコードはC++やプロプライエタリなスクリプト言語であるUnrealScriptで記述され、ゲームの大部分はエンジン内部を深く探求せずに改良できる。加えて、他のミドルウェアと共に使用するとき、コンテント作成においてゲームデザイナーとアーティストの両方を支援する様々なツールも提供している。

(Wikipediaより引用)

専門用語が多くよく分かりませんでしたが、アンリアルエンジンを用いれば、大体のゲームは開発可能で、それにはC++などのプログラミングが必要ということはわかりました。

また、Unreal Engineは「EpicGames(エピックゲームズ)」という名前のゲーム開発会社が開発したゲームエンジンで拠点がアメリカということもあり日本語版の本書が少ない傾向にあります。そのためわからないことがあってもあまり情報がなかったりして、素人には開発が難しくなってしまうケースがあります。

高画質なゲーム開発に向いており、最大減に活用するには先門的知識や技術力が必要。

ちなみに、プロジェクトリーダーがアンリアルエンジンで制作された例として、ニンテンドーSwitchの「ヨッシークラフトワールド」をプレイさせてくれました。

面白かった。笑

Unity(ユニティ)とは

Unity(Unity3D)は、IDEを内蔵するゲームエンジンである。 2005年にMac OS Xに対応したゲーム開発ツールとして誕生した。100万人以上の開発者が利用している。開発はユニティ・テクノロジーズ(英語版)。日本法人はユニティテクノロジーズジャパン合同会社。 クロスプラットフォームに対応しており、モバイルゲームやパソコンゲーム、ブラウザゲームなどの製作に用いる。 ゲームエンジン自体はC言語/C++で書かれており、開発者はC#を用いたプログラミングが可能である。

2015年10月にリリースされたバージョン5.2.2現在、iOS、Android、Tizen、Android TV、Windows、Windows Phone 8、Windowsストアアプリ、macOS、Linux、ウェブブラウザ (WebGL)、PlayStation 3、PlayStation 4、PlayStation Vita、Xbox 360、Xbox One、Wii UそしてVR/AR向けの開発に対応している。

(Wikipediaより引用)

UnityはVRやARのアプリやゲームを開発するのに用いられているイメージでした。

Twitterでゲーム開発やアプリ開発している人もUnityを使用している人が多いイメージです。

ゲーム開発はC#を用いたプログラミングで可能。

Unityも海外の会社ですが、日本人に利用者が非常に多く、日本語の資料が豊富でその分取り掛かりやすいのが特徴です。多くのゲーム開発会社はUnityのゲームエンジンを導入しており、教材もたくさんあるので初心者でも開発を進めやすいのが利点です。

スマホやTVゲーム、AR&VRで実装したいなど複数のプラットホームに実装する場合もUnityがおすすめだということです。

またゲームだけでなく動画にもしようされるなど、幅がかなり広いのも特徴です。

 

VRゲーム開発はアンリアルエンジンとUnity、どっちがいいの?

それでは結局、VRゲーム開発を行う上で、アンリアルエンジンとUnityのどっちを使用するのか。

当初何も知らない私はどっちもできないの?とかなり恥ずかしい質問をしてしまいましたが、どうやら使用するプログラミング言語がアンリアルエンジンのC++とUnityのC#では別物らしく、一緒には使えない様。同じCだから一緒に使えないのかよ!と思いましたが、どうやらC言語の園長がC++で、この二つは併用できるのですが、C#は別物の様。

 

詰まるところ、C++とC#のどちらで開発するかによってアンリアルエンジンか、Unityかを選ぶと言った感じです。

 

各々に、アンリアルエンジンなら画質が良かったり、Unityなら教材が多いなど様々な都k樹長がありますか、ほぼ知識がゼロな学生のVRゲーム開発ですので、

重要なのは

いかにテンポよく開発を進められるか

です。

わからなくなって詰んでいたらあっという間に期限の一年が過ぎてしまいますからね。特にメンターとかもいないので、自分たちで解決できる難易度でなければ、相当時間がかかってしまうでしょう。

今回のゲーム開発はUnityを使用

Unity のリアルタイム開発プラットフォーム | 3D/2D、VR/AR のエンジン

以上を踏まえて、私たちの学生の有志VRゲーム開発プロジェクトでは、Unityでゲーム開発を進めていくことに決めました。

プロジェクトメンバーの1人がアンリアルエンジンとUnityの比較をしてくれ、全員で投票をして決まりました。

決め手となったのはやはり無料有料問わず様々な教材や動画などがインターネット上に存在すること、また複雑で覚えるのが大変なC++に比べてC#hが比較的理解がしやすく、初心者でも開発しながら覚えることが可能と判断したからです。

 

こうして私のUnityへの挑戦が始まりました。

UnityでVRゲーム開発をする上で、何を学ぶのか?

それでは具体的に、UnityでVRゲームの開発をする上で、何を学んでいけばいいのか。

まずはUnityに慣れること。

様々な機能があるUnityに触れ、何ができて何ができないかを確かめることです。

そしてその後に、作り方を書籍やインターネット上の記事や動画で調べて作っていくことです。

 

書籍やサイト、動画は大変わかりやすいので、この辺を見ながらやれることを増やしつつ、実際に開発するゲームに応用させたり、ヒントにしていくという感じです。

 

参考になるサイト:Unity入門の森 → https://3dunity.org/game-create-lesson/vr-game-making/

参考になる書籍

ステップアップUnity

 Unityの教科書

 

今後はひとまずUnityを使い慣れ、簡単なゲームっぽものを作成しながらその作成の過程を学んでいこうと思います。

実際にUnityで何をして、何を学び、何ができる様になったかなどもこのブログで共有できたらと思います。

 

第3話でお会いしましょう。

 

それではまた。

 

コメント

この記事へのコメントはありません。

RELATED

PAGE TOP