カテゴリ:MonoGame

提供: MonoBook
移動先: 案内検索

MonoGame(読み:ものげーむ)とは、Monoプロジェクトが開発しているXNA互換のゲーム開発用フレームワークである。

概要[編集 | ソースを編集]

XNAは実質的にXbox 360向けのゲーム開発用フレームワークであったがXbox Oneの登場とともに死んだ。 そしてMonoGameが生まれた。 本家XNAWindowsXbox 360が対象であったが、MonoGameではMac OS XiOSAndroidといった最新鋭の環境に対応している。

2017年3月、MicrosoftXamarinを買収した絡みで、MonoGame 3.6からXbox OneWindows 10を公式にサポートすることとなった(UWPをサポートすることとなった)。

マルチプラットフォーム[編集 | ソースを編集]

iOSAndroidはシミュレータや実機転送が遅すぎて一般的なアプリ開発でもデバッグ時にイライラ全開だが、MonoGameはMacにも対応しており起動の速いXamarin.Mac向けにスマホ風の解像度でサクッと開発し、最終的にiOSAndroid向けに微調整という手法を用いることもできる。

この場合はソリューションを以下のようなプロジェクト構成にして、各プラットフォームからCoreプロジェクトを呼ぶようにすると良い。

  • Core - MonoGame PCLプロジェクト(Gameクラスなどの実際のコード)
  • Mac - MonoGame MonoMacプロジェクト(エントリポイントとコンテンツだけ)
  • Android - MonoGame MonoMacプロジェクト(エントリポイントとコンテンツだけ)

なお、Xamarin.Macでは実行速度が爆速であるためスマホ実機ではフレームレートが出ない現象には注意が必要である。定期的にスマホ実機で動作検証することをオススメする。

機種依存の吸収[編集 | ソースを編集]

その名の通り本来はゲームに使うものであるが、ゲーム以外の3Dを扱うアプリでも利用できなことはない。とくに機種依存の激しいAndroid、そのなかでも飛び抜けて機種依存の激しいパーツであるGPU周りを整流するミドルウェアとしても非常に有望である。

ただしMonoGameを使うとUI周りの開発が面倒になる。MonoGameにサクッとGUIを実装するライブラリは出ているが、どれもPC向けばかりで、現在の主流であるスマホ向けのUIフレームワークもほとんどない。


利用方法[編集 | ソースを編集]

MonoGame本体を公式サイトからダウンロードしてインストールする。

開発環境がMacLinuxの場合はMonoGame Pipeline Toolをダウンロードしてインストールする。

Xamarin Studioの場合[編集 | ソースを編集]

Xamarin Studio を使っている場合はMonoGame本体を入れた段階でプロジェクトテンプレートも追加されるので何もする必要はない。 新規ソリューション作成時(新規プロジェクト作成時)に「MonoGame」という項目が増えているはずである。

Visual Studio for Macの場合[編集 | ソースを編集]

2017年12月時点ではVisual Studio for Macの拡張機能の公式リポジトリのアルファチャンネルにプロジェクトテンプレートがある。 リポジトリをアルファチャンネルに切り替えて「最新の情報に更新」ボタンを押せば登場すると思う。

  • リポジトリ:アルファチャンネル
  • カテゴリ: IDE Extensions (UnityテンプレートなどがあるGame Developmentカテゴリではないので注意)
  • 名称: MonoDevelop.MonoGame.Templates

カテゴリ「MonoGame」にあるページ

このカテゴリには 41 ページが含まれており、そのうち以下の 41 ページを表示しています。

M