| 0からのゲームプログラミング > テキスト描画 1 |
| Back Next |
| 更新日 2004.03.27 |
| テキスト描画 1 |
| テキストを描画するには、ID3DXFont インターフェイス 等を使えば出来ますが、簡略化する為に、スケルトンから CText2D クラス を用意しています。これを使って、プログラムに得点表示を追加してみたいと思います。 フォントの描画ですが、DirectX のバージョンが、8, 9 のものですと、ゲームでは使い物にならないくらい描画速度が遅いものでした。しかし、DirectX 9.0 SDK Update (Summer 2003) では、その点がかなり改善されています。 ◆得点表示クラス クラス名は何でも構いませんが、ここでは CScore という名前を付けることにします。Source と Header フォルダの中に、それぞれ、Score.cpp と Score.h のファイルを新しく作り、プロジェクトに加えます。 以下、サンプルコードです。 Score.h |
|
上では、CText2D クラスのポインタを定義していることに注意して下さい。 Score.cpp |
|
Init メンバ関数では初期化をし、Release メンバ関数では解放処理をしています。ウィンドウモード⇔フルスクリーンモードの切り替え時等に、毎回解放処理&再初期化する必要がある為に (ID3DXSprite や ID3DXFont インターフェイス等がそういう仕様です。) Release メンバ関数も追加しています。 Screen.h |
|
Screen.h では、Score.h をインクルードし、CScore クラスのオブジェクトを定義しています。 ScreenStage.cpp |
|
ScreenStage.cpp では、以下のコードを新たに追加しています。 m_Score.Init(); m_Score.Release(); m_Score.Move(); m_Score.Draw(); ビルド[メイク] して実行すると、画面の左上に数字が表示されます。 スクリーンショット |
![]() |
| 【スポンサード リンク】 |
| Back Next |
| 0からのゲームプログラミング > テキスト描画 1 |