XNAの場合のフレームワーク
1/4の説明でフレームワークの検討のことを書きましたが、XNAの場合、Visual C#のウィザードにてスケルトンが自動生成され、1/4の図のイメージがXNAのフレームワークとして、生成されます。

この図中の英単語の部分がXNAにて自動生成、あるいはユーティリティとして使用できるクラス、メソッドとなります。
これらのうち、Game.*がXNAのウィザードが自動生成するイベント関数となります。
そして、単純なゲームを作成する場合は、この図のGame.Updateの中に、キーボードやゲームパッドからの入力情報を取得し(Inputのネームスペース内のクラスに情報が自動的に格納されます)、ゲームの要となるタスク処理を行い(といっても、ここが一番難しい実装ですが…)、その際にサウンド処理を行います。(サウンドもInput同様、Audioネームスペース内のクラスを用いて発声させます)
そしてGame.Drawは、XNAのフレームワークがタイミングを見つけて、自動的に呼び出してくれるもので、タスク処理で行った処理結果をキャラクターとして時前で描画します。
1/4に説明したメインからの呼び出しやフレームレート演算を時前でプログラミングしないで、且つ、更新処理や描画処理のタイミングを自動で呼び出してくれるという仕組みを最初から生成してくれるXNAは非常によくできていると思います。

この図中の英単語の部分がXNAにて自動生成、あるいはユーティリティとして使用できるクラス、メソッドとなります。
これらのうち、Game.*がXNAのウィザードが自動生成するイベント関数となります。
そして、単純なゲームを作成する場合は、この図のGame.Updateの中に、キーボードやゲームパッドからの入力情報を取得し(Inputのネームスペース内のクラスに情報が自動的に格納されます)、ゲームの要となるタスク処理を行い(といっても、ここが一番難しい実装ですが…)、その際にサウンド処理を行います。(サウンドもInput同様、Audioネームスペース内のクラスを用いて発声させます)
そしてGame.Drawは、XNAのフレームワークがタイミングを見つけて、自動的に呼び出してくれるもので、タスク処理で行った処理結果をキャラクターとして時前で描画します。
1/4に説明したメインからの呼び出しやフレームレート演算を時前でプログラミングしないで、且つ、更新処理や描画処理のタイミングを自動で呼び出してくれるという仕組みを最初から生成してくれるXNAは非常によくできていると思います。
コメント
コメントの投稿
« 昔のゲームの想い出 [0002] 「ファンタジー」 [SNK] [1981] [アーケード] l Home l 昔のゲームの想い出 [0001] 「ドルアーガの塔」 [ナムコ] [1984] [アーケード] »