Top > XNA(Game API) > スターター キット

スターター キット

XNA-スターター キット : Platformer 徹底解剖!

msdnはこちらを参照 実際の画面は下記の通り。MSDNの画像は違っている?ので混乱してしまうかも。

そこで、実体のPlatformerとmsdを比較しながら、実体の解析をすることにした。

プレイヤーの制御は、

←方向が「A」または「←キー」、

→方向が「D」または「→キー」で移動することができる。

ジャンプは「スペース」キーで行う。

※ソースコードは、新規プロジェクトのテンプレートより生成したものを使用。

 

 

 

 

 

リソース(スターター キットのアセット)

Backgrounds

Overlays

Sprites

Tiles

Levels(各レベルのタイルパターン)

プレイヤーの開始位置、タイルのレイアウト、宝石、出口(EXIT)、モンスターはのデザイン(配置)は各レベル毎にTextファイルで定義する。

指定文字 意味
. ブランク
1 「プレイヤー」開始位置
X Exit(出口)
- 通過できるブロック
 ~  プラットフォームブロック
: 偽ブロック
# 固定ブロック
G 宝石
A モンスターA
B モンスターB
C モンスターC
D モンスターD

 

ソースコードの解析

 

名前 説明
Gem 浮遊する「宝石」-宝石の読み込み、描画、更新を行う
Circle (構造体) 「宝石」オブジェクトに対する衝突の有無をチェックするための円形領域
Tile (構造体) 「タイル」の基本的な情報を格納
TileCollision (列挙型) 「タイル」に指定できるさまざまな衝突のタイプ を格納
タイプには、
通り抜け可能、通り抜け不能、プラットフォーム)がある
AnimationPlayer (構造体) Animation によって格納されたアニメーションの再生を実装
Animation アニメーション テクスチャーを格納します。プレイヤー キャラクターと敵のスプライト シートをアニメーション表示するために使用
Enemy 敵をゲームに実装(敵を読み込み、描画、および更新するために使用)
FaceDirection (列挙型) 敵が向くことができるさまざまな方向を格納
PlatformerGame コンテンツおよびレベルの読み込み、HUD 管理および表示、ゲーム オブジェクトの更新などの主要なゲーム コンポーネントを実装します。
Level 「レベル」をゲームに実装します。Level オブジェクトには、タイルの多次元配列、プレイヤー キャラクター、開始および終了点、ポイントの合計、レベルの残り時間、宝石のリスト、および敵のリストが含まれています。
Player 「プレイヤー キャラクター」
キャラクターを読み込み、描画、および更新するために使用
RectangleExtensions 標準 XNA Framework 構造体 Rectangle の拡張を実装します

クラス図を並べてみても、よく分からない。

なぜなら、それぞれのクラスの役割や機能だけでなく、クラス間の結合やシーケンスが見えてこないからだ。

 

はじめに実行される「PlatformerGameクラス」

 

▲ページトップに戻る