プロジェクトの要素を見てみる

Gameクラス

作成したMonoGameのプロジェクトの要素をソリューションエクスプローラで見てみましょう。

51

 

Program.csを見てみましょう。

ここにMainメソッドがあります。これがプログラムのエントリポイントとなります。

Mainメソッド内を見てみると、GameFrameworkViewSourceクラスをGame1クラスをジェネリックの要素としてnewしています。

 

ではGame1.csを見てみましょう。

Game1クラスはGameクラスを継承しています。

Gameクラスを継承するクラスは「ゲームそのもの」を表します。

なのでGame1クラスが実質的にゲームそのものを記述する対象となります。

 

では各メソッドを見てみましょう。

Initializeメソッドは初期化メソッドです。ゲーム内で最初に一度だけ実行したい処理を書き込みます。

LoadContentメソッドはリソースの確保メソッドです。ゲームないで必要なリソース。たとえばpng画像などをここで読み込みます。

UnloadContentメソッドはリソースを破棄するメソッドです。LoadContentメソッドで確保したリソースを解放します。

Updateメソッドはゲームの状態を更新するメソッドです。1秒間に60回呼ばれます。

Drawメソッドはゲームの描画をするメソッドです。1秒間に60回よばれます。

 

各メソッドは一定の規則で呼ばれます。

Initialize→最初に一度だけ

LoadContent→Initializeの次に最初に一度だけ

UnLoadContent→最後に一度だけ

Update→1秒間に60回(60fpsの場合)

Draw→Updateの後に1秒間に60回(60fpsの場合)

 

UpdateメソッドとDrawメソッドは繰り返し何度も呼ばれることでリアルタイムで滑らかなゲームを実現します。

これをゲームループと呼びます。

52

 

 

MonoGameにおけるゲームを記述する部分はGameクラスを継承したクラスであり、

上記の呼び出し規則で呼ばれるのでそれに応じて処理を記述していきます。

 

目次