C#
game
MonoGame
2D
XNA

MonoGameで2Dゲームを作る(前書き)

Monoとは?

Mono(モノ)とはGNOMEプロジェクト創設者が開発した、
.NETFramework互換の環境を実現するためのオープンソースのソフトウェアやプロジェクト名です。
Unityの普及などにより「MonoDevelop」というエディタを見かける機会が増えたと思いますが、そのおかげで感覚的にどんなモノかは分かるかなと思います。
要は、どこでもC#(厳密にいうと.NET)っぽく書いちゃおうぜって感じです。
2018年3月現在はマイクロソフトが開発や販売を行っているみたいです。
[Mono公式サイトはこちら][http://www.mono-project.com/]

MonoGameとは?

マイクロソフトが開発したゲームエンジンのXNAを
高い移植度で再現しているフレームワークです。
XNAとは2006年にリリースされたマルチプラットフォームのゲーム開発用ライブラリで
非常に優秀で使いやすかったのですが、2014年の春に突然終了してしまいました。

私を含む、困惑したXNA開発者を救う存在として生まれたのが・・・そう!
我らがMonoGameなのです!
(当時はUnityに入り浸入りで正直この存在に気づきませんでしたw)

前述したXNAは優秀なライブラリでしたが
MonoGameになってさらなる進化を遂げたので、以下にその特徴をあげていきます。

XNAからの移植性

「XNAで書いたコードがそのまま動く」とよく聞きますがまさにその通りです。
XNAで書いたものが本当にそのまま動いてしまう為、学習コストがかなり低いです。
MonoGameのリファレンスは少ないように感じますが、XNAのリファレンスで十分対応が可能なのです。

また、様々なプラットフォームで動作するようになりました。(Windwos,OSX,Android,iOS...etc)

シンプルなコードデザイン

C#で組むため複雑な処理を書く必要がなく、誰でも始めることができるようなシンプルな書き方を可能としています。
また、Unityとは違って画面上に直接配置などではなくコーディングをすることがメインですので、これからC#を始めてみたい人とかにもお勧めかなと思います。
(コンソールじゃつまらないですからねw)

とにかく・・・。

触ってみましょう、MonoGame。
という事で、次回は環境構築~プロジェクト立ち上げまで
ご紹介したいと思います。
どうぞよしなに宜しくお願いします。