Microsoft DirectX 8.0 (C++) |
ステップ 1 でメッシュをロードしたので、メッシュをレンダリングする準備ができている。メッシュは、メッシュについてロードされた各マテリアルのサブセットに分割される。各サブセットをレンダリングするために、メッシュはループでレンダリングされる。ループの最初のステップは、次のサンプル コードに示されているように、サブセットのマテリアルを設定することである。
g_pd3dDevice->SetMaterial( &g_pMeshMaterials[i] );
ループの 2 番目のステップは、次のサンプル コードに示されているように、サブセットのテクスチャを設定することである。
g_pd3dDevice->SetTexture( 0, g_pMeshTextures[i] );
マテリアルとテクスチャを設定した後、次のサンプル コードに示されているように、ID3DXBaseMesh::DrawSubset メソッドを使ってサブセットが描画される。
g_pMesh->DrawSubset( i );
DrawSubset メソッドは、描画するメッシュのサブセットを指定する DWORD を取る。このサンプルでは、ループを実行するたびにインクリメントされる値を使用する。
メッシュを使用した後、メッシュをメモリから正しく削除する必要がある。これについては、「ステップ 3 : メッシュ オブジェクトのアンロード」で説明する。