• Unreal Engineってなに?
  • Unityとの違いも知りたい
  • Unreal EngineやUnityのプログラミング言語について教えてほしい

こんな悩みを解決します。

この記事を読むと、自らの制作目的に沿ったプログラミング言語を選び、開発を始められます。

|Unreal Engineとは

出典:https://www.unrealengine.com/ja/

Unreal Engineとは、ゲームを制作するための指示書(ゲームエンジン)です。

キャラクターの動きを自然に見せるなど、ゲーム制作に必要な機能が入っています。

Unreal Engineはアメリカの企業「Epic Games」が開発しました。

記事後半で紹介する「Unity」と並び、ゲームエンジン市場で有名です。

「ドラゴンクエストXI」の制作にも使われているんですよ。

Unreal Engineのメリットとデメリットは次の通りです。

メリット

  • ゲームを作るためのテンプレートがあり、簡単に制作できます。
  • 映像を作る機能がすぐれているため、美しく、リアルに近い映像が作成可能
  • すべての機能が無料です(ゲーム開発の総売上が100万ドルを超えたら、手数料5%発生)。

デメリット

  • 高度なコンピュータが必要となり、コストがかかります。
  • 日本語の情報が少なく、操作方法の動画など理解するのが大変です。

コンピュータの性能が低いと、動きが遅くなり処理が進まないので注意しましょう。

|Unreal Engineで使われるプログラミング言語

Unreal Engineで主に使われるプログラミング言語「C++」と「Blueprint」について解説します。

C++

「C++」の特徴は次の通りです。

  • オブジェクト指向
  • 処理速度が速い
  • 追加・変更が簡単

「C++」はオブジェクト指向のプログラミング言語です。

オブジェクト指向とは、プログラムをレゴブロックのように細かい部品に分け、再利用できるように組み合わせる方法のことを指します。

この特徴のおかげで、プログラムを書くのが楽になります。

処理速度が速いと、ゲームの動作がスムーズになり、色んな機能を追加できます。

バグの早期発見・修正もでき、最終的なゲームの品質アップにつながるのです。

また「C++」は、他のプログラムと連携できます。

ゲームエンジンを構築する際、外部のプログラムやツールと組み合わせ、より多機能なゲームを制作可能です。

Blueprint

「Blueprint」はブロックをつなげたり、設定を変えたりするだけで、ゲームを作れるプログラミング言語です。

「Blueprint」の特徴は次の通りとなります。

  • 簡単に操作できる
  • 早く実装できる
  • エラーが少ない

ブロックをつなげるだけなので、操作が簡単です。

プログラミングコードを書く必要もありません。

直感的に操作できる分、実装までの時間も短いです。

プログラミングコードを書いていると発生するエラーも、「Blueprint」なら最小限に抑えられます。

「C++」に比べて「Blueprint」は扱いやすく、初心者向きのプログラミング言語です。

ただ「C++」にある機能がなかったり、処理速度が遅かったりなどデメリットも認識しておきましょう。

|Unityとは

Unityはアメリカの企業「Unity Technologies」が開発した、ゲームエンジンです。

「ポケモンGO」など有名なゲームがUnityを使って作られています。

Unityを使うメリットは次の通りです。

メリット

  • 開発用の部品や素材がたくさん
  • 使える範囲が広い
  • 日本語の情報が多い

ショップでゲーム開発に使う部品や素材が手に入ります。

自分で作らなくてもいいので、ゲーム開発が簡単に進むのです。

Unityはスマホやパソコン、コンソール(例:PS4)など、いろんな所で使えます。

自作したゲームを多くの人に使ってもらいたい人には最適ですね!

「Unreal Engine」と比べて日本語の情報が多いため、初心者や英語の苦手な人には優しいゲームエンジンです。

また、デメリットは「起動が遅い」ことです。

機能が充実し性能が高いゆえのマイナス面と言えるでしょう。

Unityの料金体系は下記の通りです。

プラン料金条件
Personal無料資金調達・年間売上金額:合計$0~$10万USD
Unity Plus48,395円/年資金調達・年間売上金額:合計$10~$20万USD
Unity Pro267,960円/年資金調達・年間売上金額:合計$20万USD以上
引用:Unity

|Unityで使われるプログラミング言語

Unityで使われるのは、オブジェクト指向プログラミング言語「C#」です。

マイクロソフトが開発し、「.NET」と呼ばれるプログラム開発のためのフレームワーク上で動きます。このフレームワークをもつWindowsと相性がよいです。

「C#」は似た「C++」と混同されがちなので注意してください。

「C#」の特徴は次の通りです。

  • ポインタと呼ばれる変数が使えず、メモリの値を直接変更できません
  • メモリの不要な部分を自動的になくしてくれます(ガベージコレクション)
  • C++より学ぶのが簡単で、初心者でも取り組みやすいです

|C#の難易度は?

「C#」の難易度はやや高いと言えるでしょう。

その理由は次の通りとなります。

  • オブジェクト指向プログラミングを理解しないといけない。
  • プログラムを書く際に使用する構文や規則が多様。

「C#」はオブジェクト指向プログラミング言語なので、クラスやオブジェクト、

メソッドなどの考えを理解する必要があります。

高度な開発となると、クラスの継承やポリモーフィズムなどの考えも把握しなければいけません。

「C#」の文法には、条件分岐や変数の宣言、インターフェースの定義、などの構文が含まれます。これらも理解する必要があります。

なお「Blueprint」は、コードを書かずにプログラミングができるのでオススメです。

|Unreal Engineを使ってみよう!

この記事を読めば、自らの制作目的に沿ったプログラミング言語を選び、開発を始められます。

最後にここまでの内容を振り返りましょう。

「Unreal Engine」および「Unity」は、ゲームを制作するための指示書(ゲームエンジン)です。

それぞれで使われるプログラミング言語

Unreal Engine:「C++」と「Blueprints」

Unity:「C#」

プログラミング言語の難易度

  • 「C#」:やや高い
  • 「C++」:高い
  • 「blueprint」:低い

blueprintはコードを書くことなく簡単にプログラミングができますので、初心者向けといえるでしょう。

ぜひこの記事を参考にしていただき、Unreal Engineを利用してみてはいかがでしょうか。