2016年6月3日金曜日

PS4、iOS、Android、Vita、Wii Uをサポート? 「MonoGame」とは

勉強の為に引用しました。
http://ascii.jp/elem/000/000/840/840838/
 インディーズ系ゲーム開発で注目を浴びる
クロスプラットフォームフレームワーク「MonoGame」

 「MonoGame」というフレームワークをご存じだろうか? MicrosoftがWindowsやWindows Phone、Xbox 360で共通して使えるゲーム向けランタイム環境として開発した「XNA 4.x Framework」を他のモバイルOSやゲーム機へと移植し、さまざまなデバイスをまたいだ「クロスプラットフォーム」なゲーム開発を可能にしようというオープンソースプロジェクトだ。

「MonoGame」公式サイト
 2009年のプロジェクト開始以来、開発が進められていたMonoGameだが、ここにきて任天堂の「Wii U」における採用の噂ほか、PlayStation 4に向けた早期移植の話(MonoGame for PlayStation 4 in the works...)が出ており、今後のゲームラインナップ拡充やインディーズ系ゲーム開発者の活躍に期待が高まっている。

「PlayStation 4」対応への開発が進行中
「MonoGame」で作成された「Infinite Flight」のデモ動画。iOS用、Windows Phone 7用、Android用が公開されている
同じく「MonoGame」で作成された「ARMED! 」。Windows Phone 7用、Windows 8用がリリース済み。iOS用も予定している

Monoプロジェクトの命脈を受け継ぐ「MonoGame」

 オープンソースに興味がある方ならその名前から推測できるように、MonoGameの根幹にあるのは「Mono」という名称で知られるオープンソースプロジェクトだ。もともとはLinuxなどのオープンソース環境向けに、Microsoftの「.NET Framework」を移植するプロジェクトとしてスタートし、Novellによって商用利用が進められていた。基本的にはランタイム環境を整備するためのものだが、「MonoDevelopのようなIDEの提供も行なわれるなど、ひと通り開発環境が整備されつつある印象を受ける。
「Mono」公式サイト
「MonoDevelop」
 現在Monoの権利は、Novellから、Mono開発者らによって設立されたXamarinへと移管されており、継続的にアップデートされている。当初はLinuxやMac OS Xをカバーする程度だったが、他のUNIX系プラットフォームのほか、「Xamarin.iOS」「Xamarin.Android」という形でモバイルOSをサポートするようになり、多くのメジャープラットフォームをサポートするに至った。
 そして今回のトピックであるMonoGameは、.NET Frameworkをベースに開発された「XNA Framework」をWindows以外のプラットフォームに移植するプロジェクトということになる。XNAは2004年に米サンフランシスコで開催されたGame Developer Conference(GDC)で初めて発表され、WindowsならびにXbox 360をまたいだクロスプラットフォーム開発が可能な環境として、ゲーム開発を盛り上げるべく大々的にアピールされた経緯がある。特に包括的なAPIセットのほか、クロスプラットフォーム開発から実際のゲーム配布までを通しで行なえる「XNA Game Studio」と呼ばれるツールセットが大きな位置を占めており、メジャーベンダーでもXNAを採用したゲーム開発が進められるに至っている。
 一方、現状では「Windows 8.x」「Windows Phone 8」といった最新プラットフォームをターゲットとしたゲーム開発がXNA Game Studioでは行なえず、これらプラットフォームでの利用は旧OS互換モードを利用しての動作に留まっている。またすでに、MicrosoftがXNA Game Studioに対する継続投資を終了したという話が出ているため、今後のサポートはもう期待できないとみられている。Windows 8以降でのModern UIを用いたメジャータイトルが出揃っていない現状とはいえ、この点が将来的にはマイナスだ。
 ただし、DirectXなどのローレベルAPIの開発そのものをMicrosoftが停止したわけではないため、「XNA Game Studio」を使っての統合開発に制限があるという状況にすぎない。XNAそのものは非常に便利なプラットフォームであるため、これら制限を踏まえたうえで、特に大規模なツールセットを自前で用意するのが難しいインディーズ系ゲーム開発者にとっては依然として有用だといえるだろう。

インディーズ系ゲーム開発者には興味深いトレンド

 Microsoftが撤退を決め、大手ベンダーらの対応も限定的な状況で、新プラットフォームにおけるXNAならびにMonoGameの果たす役割は少ないだろう。だが、クロスプラットフォームとして整備された数々のツールやランタイム環境は、体力の少ないインディーズ系ゲーム開発者にとっては新たなフィールドとなる可能性を秘めている。
 「MonoXNA」と「Silver Sprite」というふたつのプロジェクトが合体してスタートしたMonoGameだが、現在ではXNA 4.x Frameworkをサポートし、安定版としてバージョン3.0.1が今年2013年3月にリリースされている。MicrosoftによるXNAの進化が止まった今後においても、MonoGameは引き続き強化されていくだろう。
 前述のように、MonoGameはサポートするプラットフォームが広い点が大きな特徴となっており、Windows、Windows Phoneのほか、OS XとLinux、そしてモバイルOSとしてiOSやAndroidをサポートする。「PlayStation Mobile」については、もともとMonoをベースとしていることからサポート範囲に入っており、最近登場して話題になったAndroidベースの低価格ゲームコンソール「OUYA」(ウーヤー)もXamarin.Androidベースでサポートされている。
 またSiliconeraが報じたように、任天堂がWii UへのMonoGame導入を考えているという噂のほか、MonoGame自身がPS4への早期移植を表明している。またXNA自体は「Xbox One」での利用も可能とみられるため、最適化を考えなければXNAならびにMonoGameは引き続き有効だろう。XNAが直接サポートしないWindows 8についても、MonoGameでは何らかの形でサポートが行なわれていくとみられる。
 MonoGameを利用したゲームは、「Skulls of the Shogun」「Fez」などが同サイトの中で紹介されているが、今後もこうしたテイストを持つ独立系プログラマーや中小開発者によるインディーズ系ゲームが数多くリリースされることになるだろう。
 特にクロスプラットフォーム開発から実際のアプリストア登録によるゲーム配布までを想定していることもあり、今後はモバイルOSのアプリストアだけでなく、Windows Store、そしてPS4やXbox Oneといった次世代ゲームコンソールでのオンライン経由のゲーム配信でも一定の存在感を見せることになるかもしれない。
 「XNAは死んだ」といわれる一方、オープンソース・コミュニティがそのフレームワーク跡地を利用することでインディーズ系ゲームが盛り上がるという構図は面白そうだ。

0 コメント:

コメントを投稿