MonoGame とは|C# で書いて複数のプラットフォームに出す無料のフレームワーク
MonoGame は、C# などの .NET の言語でゲームを書くフレームワークです。完全に無料で、ソースコードも公開されています。書き出せる先は、パソコン(Windows・MacOS・Linux)と携帯機器(Android・iOS・iPadOS)と据え置きのゲーム機です。所有と開発は MonoGame Foundation が行っています。
- 分類
- ゲームエンジン・フレームワーク
- 日本語対応
- 日本語非対応
- 費用
- 無料
- 公式サイト
- https://www.monogame.net確認日 2026-09-05
MonoGame の概要
MonoGame は、公式サイトが、複数のプラットフォームに向けたゲームを作るための1つのフレームワークだと説明しているフレームワークです。書くのは C# などの .NET の言語で、Microsoft と Mono のプラットフォーム上で動きます。
公式サイトの About のページによると、所有と開発を行っているのは MonoGame Foundation です。これは2023年9月に設立された、米国の 501(c)(3) の非営利の団体で、資金は個人と法人の寄付から来ています。運営の記録(毎月の理事会の議事録)も公開されています。
MonoGame の特徴
MonoGame の使用言語
公式サイトは、書く言語を C# などの .NET の言語としています。Microsoft と Mono のプラットフォーム上で動き、エディタは自分で選べます。公式サイトが挙げているエディタは Visual Studio Code・Visual Studio・JetBrains Rider の3つです。
公式ドキュメントの Getting Started も、開発環境を用意したあとに統合開発環境を選ぶ順で、Visual Studio for Windows・VS Code・Rider の3つを並べています。
MonoGame の対応プラットフォーム
公式ドキュメントの Supported Platforms は、書き出せる先をパソコン・携帯機器・コンシューマー機(Nintendo Switch や PlayStation などのゲーム専用機)の3つに分けています。書き出し先は、プロジェクトの型(テンプレート)を選ぶ形で決まります。
MonoGame から書き出せる先と、そのとき別に必要になるもの
| 書き出す先 | プロジェクトの型 | 別に必要になるもの |
|---|---|---|
| Windows | WindowsDX | DirectX June 2010 ランタイム |
| Windows・macOS・Linux | DesktopGL | OpenGL 2.0 と ARB_framebuffer_object 拡張、または OpenGL 3.0 |
| Android | Android | .NET MAUI のワークロード、Java 11 JDK、Android SDK 31 |
| iOS・iPadOS | iOS | .NET MAUI のワークロードと Xcode |
| PlayStation 4・5/Xbox/Nintendo Switch | 公開されていません | そのプラットフォームからの開発者向けのアクセス |
DesktopGL は、1つのプロジェクトと同じソースコードから Windows・macOS・Linux の3つを書き出す型です。公式ドキュメントによると、この型ならどの OS の上からでも別の OS 向けにビルドできます(Windows 上から Linux 向けを作れます)。
MonoGame が標準で使える機能
公式ドキュメントは、プロジェクトの型ごとに、画面・描画・音のそれぞれを何で実現しているかを書いています。
| プロジェクトの型 | 画面 | 描画 | 音 |
|---|---|---|---|
| WindowsDX | WinForms | DirectX(9.0c 以降) | XAudio |
| DesktopGL | SDL | OpenGL | OpenAL-Soft |
| Android | .NET Android | OpenGL | OpenAL |
| iOS | .NET iOS | OpenGL | OpenAL |
公式ドキュメントには、DesktopGL には動画再生の実装がまだ無いという注記が置かれています。
MonoGame が読み込める形式
MonoGame は、素材を扱う仕組みとして Content Pipeline を自前で持っています。公式ドキュメントは、扱う対象としてテクスチャ・効果音・音楽・動画・独自のシェーダー(画面の見え方を決める小さなプログラム)に加えて、ステージや敵の定義といった独自のファイルを挙げています。
Content Pipeline は、素材をそのまま読むのではなく、書き出し先ごとに最適化した XNB という形式へ変換します。公式ドキュメントが節を立てているのは、変換を行う MGCB Editor、TrueType フォント、独自のシェーダー、そして言語の切り替えです。
MonoGame の拡張
公式ドキュメントは、書き出し先ごとの型のほかに2つの型を挙げています。1つは .NET Class Library(型の識別子 mglib)で、DLL の形でコードを配ったり、書き出し先の違う複数のプロジェクトで同じコードを使ったりするためのものです。もう1つは Content Pipeline Extension(型の識別子 mgpipeline)で、Content Pipeline が素材を XNB へ変換する処理を自分で書き足すためのものです。
本体は NuGet パッケージ(.NET のライブラリを配る仕組み)として配られていて、公式ドキュメントは開発版の NuGet パッケージの使い方も別に載せています。
MonoGame の動作環境
公式ドキュメントによると、C# で書くには .NET SDK が要ります。MonoGame 3.8.4.1 の時点で必要な最も低い版は .NET 9 で、.NET 10 にも対応しています。Visual Studio を使う場合は、インストーラーに .NET が含まれます。
書き出し先ごとの条件は、DesktopGL が Windows 8.1 以降・macOS Catalina 10.15 以降・Linux(64ビットのみ)、WindowsDX が Windows 8.1 以降です。Android と iOS に向けて作るときは、MonoGame が MAUI を使っていなくても、デバッグのツールが含まれるため MAUI のワークロードを入れる必要があると公式ドキュメントは書いています。
環境を用意する手引きは Windows・macOS・Ubuntu の3つが用意されています。
MonoGame のコンシューマー機への対応
公式ドキュメントは、既定で対応する書き出し先として Xbox・PlayStation 4・PlayStation 5・Nintendo Switch を挙げています。公式サイトの一覧では Xbox One と書かれています。
これらは登録した開発者に限られ、一般には公開も文書化もされていません。公式ドキュメントは、利用するにはそのゲーム機のアカウントマネージャーに連絡することと、これらの書き出し先の文書はそれぞれのリポジトリ(ソースコードの置き場所)にあることを書いています。
MonoGame の費用とライセンス
MonoGame は無料です。公式サイトは、完全に無料で、ソースコードが公開されていると書いていて、全部のソースコードが公開されています。GitHub で中身を見ることも、複製することも、分岐(フォーク)を作ることもできます。
据え置きのゲーム機に出す場合は、そのプラットフォームでの承認が別に要ります。
| 項目 | 費用 | 条件 |
|---|---|---|
| 本体 | 無料 | ソースコードが公開されている |
| 据え置きのゲーム機への書き出し | 無料 | そのプラットフォームでの承認が別に要る |
| 寄付 | 任意 | MonoGame Foundation の資金になる |
MonoGame は公式サイトの Getting Started から始められます。ソースコードは GitHub で公開されています。
- MonoGame を手に入れるhttps://www.monogame.net
情報源
- MonoGame — 公式サイト(フレームワークの説明・書ける言語・エディタ・書き出し先・無料でソースコードが公開されていること)https://www.monogame.net/確認日 2026-09-10
- MonoGame — About(MonoGame Foundation の設立・非営利であること・資金をどこから得ているか・記録の公開)https://monogame.net/about/確認日 2026-09-10
- MonoGame — Getting Started(対応プラットフォーム・環境の用意・統合開発環境)https://docs.monogame.net/articles/getting_started/index.html確認日 2026-09-17
- MonoGame — Supported Platforms(書き出し先ごとのプロジェクトの型・画面と描画と音の実装・別に要るもの)https://docs.monogame.net/articles/getting_started/platforms.html確認日 2026-09-17
- MonoGame — Adding Content(Content Pipeline が扱う素材と XNB への変換)https://docs.monogame.net/articles/getting_started/content_pipeline/index.html確認日 2026-09-17
- MonoGame — Setting up your OS for development on Windows(必要な .NET SDK の版・ワークロード)https://docs.monogame.net/articles/getting_started/1_setting_up_your_os_for_development_windows.html確認日 2026-09-17