スマートフォンは、携帯電話とコンピュータ両方の顔を持ちます。ですから、スペック表を見れば専門用語のオンパレード……これではおいそれと比較できません。このコーナーでは、そんなスマートフォン関連の用語をやさしく解説します。今回は「ゲームエンジン」についてです。

***

ゲームエンジンとは、パソコンやスマートフォンのゲームアプリに使われる共用ソフトウェアの総称です。開発ツールとともに配布されゲームに必要な機能を提供し、その動作に必要なプログラム一式(ランタイム)をアプリに同梱することで、アプリ単体での配布を可能にします。

その機能はゲームエンジンごとに異なりますが、アニメーションやスプライト処理などの「2D」、立体的な描画や物体の物理運動をシミュレートする「3D」、そして効果音などの「サウンド」が含まれます。ほかにも、ハイスコアの管理などゲームアプリに必要な機能をラインナップすることで、ゲームエンジンとしてひとつの環境が成立します。

一般的に、ゲームエンジンは「マルチプラットフォーム指向」です。仮にAndroidとiPhoneの両方に対応するゲームエンジンであれば、プログラム(ソースコード)をある程度共有できるため、開発にかかる手間は大幅に低減されます。実際のところ、AndroidやiOSなどターゲットごとの最適化作業は欠かせませんが、開発工程を短縮/効率化できることは確かです。AndroidとiOSの両方に対応し、公開時期がほぼ一致しているアプリは、なんらかのゲームエンジンを利用している可能性大です。

現在スマートフォンを対象とするゲームエンジンは、「Unity」や「Unreal Engine」など多数が存在します。両者は仮想現実(VR)や拡張現実(AR)機能を装備していることから、PlayStation VRなどVR対応ヘッドマウントディスプレイ向けアプリ開発にも利用できます。特にUnityは、世界中で爆発的人気のスマートフォンアプリ「Pokemon GO」に採用されるなど、商用ゲームエンジンにおいて高い知名度と多数の開発者を獲得しています。

なお、ゲームエンジンのライセンス体系はさまざまで、開発したアプリを制限なしに無償で配布/販売できるもの、有償配布の場合はライセンス料を徴収するなど一部制約があるもの、自社開発アプリだけに利用し外部公開していないものなど多くの種類があります。

多くのゲームアプリが、「Unity」などのゲームエンジンを使い開発されています