0からのゲームプログラミング > CXFile クラス

更新日 2004.05.03
CXFile クラス


 Xファイルを管理するクラス。このクラスは、スケルトンで用意されている。内部では、ID3DXMesh インターフェイスCTexture クラス が使われている。
 


構文

// X-File の読み込み
// 第1引数 : IDirect3DDevice9 インターフェイスへのポインタ。
// 第2引数 : ファイル名, char型へのポインタ。
// 戻り値  : 0 - エラーなし、-1 - エラーあり
HRESULT CXFile::Load(LPDIRECT3DDEVICE9 pD3DDevice, LPCTSTR c_szFileName);


// メッシュの描画
// 引数 : IDirect3DDevice9 インターフェイスへのポインタ。
// 戻値 : なし。
void Draw(const LPDIRECT3DDEVICE9 c_pD3DDevice) const;


// メッシュの描画(影)
// 第1引数 : IDirect3DDevice9 インターフェイスへのポインタ。
// 第2引数 : 影用のマテリアル。D3DMATERIAL9 構造体へのポインタ。
// 戻り値  : なし。
void DrawShadow(const LPDIRECT3DDEVICE9 c_pD3DDevice, const D3DMATERIAL9 *c_pMtrlShadow) const;


 外部で、以下のように宣言されている。
 

LPDIRECT3DDEVICE9	g_pD3DDevice;


使用例

1.CXFile クラスのオブジェクトを宣言する。
※ スケルトンの初期化が先に必要である為、グローバルオブジェクトとしては宣言しないこと。ポインタなら、OK!!

// CXFile クラスのオブジェクトを宣言
CXFile		m_XFile;


2.Xファイルを読み込む。2番目の引数だけ指定すれば良い。必ず、ファイルパック開始とファイルパック終了の間で読み込み処理を記述する。

// ファイルパック開始


// 画像ファイルを読み込む
m_XFile.Read(g_pD3DDevice, "DataForWork/Heli.x");


// ファイルパック終了


3.Xファイルを描画する。(描画の前にライトを設定する必要がある。)

// Xファイルを描画する
m_XFile.Draw(g_pD3DDevice);


※ 明示的な解放処理は必要なく、デストラクタで自動的に解放される。

【スポンサード リンク】


0からのゲームプログラミング > CXFile クラス