差分

ナビゲーションに移動 検索に移動

MonoGame/クラスライブラリ/Gameクラス

6,934 バイト追加, 2018年2月16日 (金) 09:50
ページの作成:「Gameクラスは、MonoGameでの実質エントリポイントとなるクラスで、ゲームループやグラフィックデバイスの初期化など受け持つ...」
Gameクラスは、MonoGameでの実質エントリポイントとなるクラスで、ゲームループやグラフィックデバイスの初期化など受け持つ。
MonoGameではこのクラスを継承してゲームを作る。

== 継承 ==
* System.Object
** Microsoft.Xna.Framework.Game

== 名前空間 ==
[[MonoGame/クラスライブラリ/Microsoft.Xna.Framework名前空間|Microsoft.Xna.Framework名前空間]]

== 構文 ==
public class Game : IDisposable

== コンストラクタ ==
{| class="wikitable"
|+
!
! 名称
! 概要
|-
| public
! style="white-space:nowrap;text-align:left" | Game()
|
|}

== プロパティ ==
{| class="wikitable"
|+
!
! 名称
! 概要
|-
| public
! style="white-space:nowrap;text-align:left" | Components
| このインスタンスが保有しているGameComponetのコレクションを取得する。
|-
| public
! style="white-space:nowrap;text-align:left" | Content
| ContentManagerを取得または設定する。
|-
| public
! style="white-space:nowrap;text-align:left" | GraphicsDevice
| GraphicsDeviceを取得する。
|-
| public
! style="white-space:nowrap;text-align:left" | InactiveSleepTime
| ゲームが非アクティブ時のスリープ時間を取得まはた設定する。
|-
| public
! style="white-space:nowrap;text-align:left" | IsActive
| ゲームがアクティブな状態かを取得する。
|-
| public
! style="white-space:nowrap;text-align:left" | IsFixedTimeStep
| 固定タイムステップ(固定フレームレート)を使用するかを取得または設定する。
|-
| public
! style="white-space:nowrap;text-align:left" | IsMouseVisible
| マウスカーソルを表示するかを取得または設定する。初期値はfalse(表示しない)となっている。
|-
| public
! style="white-space:nowrap;text-align:left" | LaunchParameters
| 起動パラメーターを取得する。
|-
| public
! style="white-space:nowrap;text-align:left" | MaxElapsedTime
| 可変フレームかつフレームスキップ発生時にDrawメソッドを呼び出さない最長の時間。MonoGameで追加された。
|-
| public
! style="white-space:nowrap;text-align:left" | Services
| MonoGameにサービスなどない。
|-
| public
! style="white-space:nowrap;text-align:left" | TargetElapsedTime
| IsFixedTimeStepプロパティがtrue(固定フレームレート)のときに、Updateを呼び出す間隔を取得または設定する。ようするにフレームレートの設定である。
|-
| public
! style="white-space:nowrap;text-align:left" | Window
| 基礎となるウインドウを取得する。
|}

=== Xamarin.Androidのみ出現するプロパティ ===
{| class="wikitable"
|+
!
! 名称
! 概要
|-
| public
| Activity
| 基礎となるアクティビティを取得する。
|}

== メソッド ==
=== public ===
{| class="wikitable"
|+
!
! 名称
! 概要
|--
| public
! style="white-space:nowrap;text-align:left" | Dispose()
|
|--
| public
! style="white-space:nowrap;text-align:left" | Exit
| ゲームを終了する。
|--
| public
! style="white-space:nowrap;text-align:left" | ResetElapsedTime
| 経過時間カウンターをリセットする。
|--
| public
! style="white-space:nowrap;text-align:left" | Run(GameRunBehavior)
|
|--
| public
! style="white-space:nowrap;text-align:left" | Run()
| ゲームループを始動する。
|--
| public
! style="white-space:nowrap;text-align:left" | RunOneFrame
| ゲーム時間を進めず、1フレーム分のUpdateとDrawを呼び出す。基本的にはデバッグ用。
|--
| public
! style="white-space:nowrap;text-align:left" | SuppressDraw
|
|--
| public
! style="white-space:nowrap;text-align:left" | Tick
| ゲーム時間を進め、UpdateとDrawを呼び出す。
|}

=== protected ===
MonoGameでは、このGameクラスを継承して、以下のprotected系メソッドをオーバーライドすることで、ゲームを実装していくのが基本となる。
LoadContentとUpdateとDrawの3つだけ覚えておけば何とかなる。
{| class="wikitable"
|+
!
! 名称
! 概要
|--
| protected
! style="white-space:nowrap;text-align:left" | BeginDraw
| フレームの描画開始時に呼ばれる。
|--
| protected
! style="white-space:nowrap;text-align:left" | BeginRun
| XNAではLoadContent直後であったが、MonoGameではコンストラクタ直後に呼ばれる。要注意。たぶんバグだと思う。
|--
| protected
! style="white-space:nowrap;text-align:left" | Dispose(bool)
|
|--
| protected
! style="white-space:nowrap;text-align:left" | Draw
| ゲームの1フレーム分の描画処理をする。
|--
| protected
! style="white-space:nowrap;text-align:left" | EndDraw
| フレームの描画終了時に呼ばれる。
|--
| protected
! style="white-space:nowrap;text-align:left" | EndRun
| ゲームループが実行停止した後、ゲームが終了する直前(Dispose直前)に呼ばれる。
|--
| protected
! style="white-space:nowrap;text-align:left" | Finalize
|
|--
| protected
! style="white-space:nowrap;text-align:left" | Initialize
| コンストラクタの後に呼ばれる。
|--
| protected
! style="white-space:nowrap;text-align:left" | LoadContent
| Initializeの後に呼ばれる。base.LoadContentメソッドを叩いた時点からゲームループが始まる。
|--
| protected
! style="white-space:nowrap;text-align:left" | OnActivated
|
|--
| protected
! style="white-space:nowrap;text-align:left" | OnDeactivated
|
|--
| protected
! style="white-space:nowrap;text-align:left" | OnExiting
|
|--
| protected
! style="white-space:nowrap;text-align:left" | UnloadContent
| コンテンツをアンロードする。
|--
| protected
! style="white-space:nowrap;text-align:left" | Update
| ゲームの1フレーム分のロジックを記述する。キー入力や移動、当り判定などの主にCPUで行う処理はここに記述する。
|}

== イベント ==
{| class="wikitable"
|+
!
! 名称
! 概要
|--
| public
! style="white-space:nowrap;text-align:left" | Activated
| ゲームがアクティブになったとき(フォーカスを取得したとき)発生する。
|--
| public
! style="white-space:nowrap;text-align:left" | Deactivated
| ゲームが非アクティブになったとき(フォーカスを消失したとき)発生する。
|--
| public
! style="white-space:nowrap;text-align:left" | Disposed
|
|--
| public
! style="white-space:nowrap;text-align:left" | Exiting
| ゲームが終了するときに発生する。
|}

== 関連項目 ==
* [[MonoGameで解像度を設定する]]
* [[MonoGameでマウスカーソルを表示する]]
* [[MonoGameで外部のXNBファイルを読み込む]]
* [[MonoGameでSkiaSharpを使う]]

; その他
* [[三角形の秘密についてリークする]]

[[category: MonoGame]]
匿名利用者

案内メニュー