Microsoft DirectX 8.0 (Visual Basic) |
Direct3DDevice8.SetTexture メソッドを呼び出して、カレント テクスチャの一覧内の先頭のテクスチャとしてミップマップ テクスチャを設定する。詳細については、「マルチ テクスチャ ブレンディング」を参照すること。
ミップマップ テクスチャ セットを選択した後、CONST_D3DTEXTUREFILTERTYPE 列挙型からの値を D3DTSS_MIPFILTER テクスチャ ステージ ステートに割り当てなければならない。Microsoft® Direct3D® ではミップマップ テクスチャ フィルタリングを自動的に実行する。次のサンプル コードでは、ミップマップ テクスチャ フィルタリングが有効にされている。
m_D3D.SetTexture(0, DDMipMap) m_D3D.SetTextureStateState(0, D3DTSS_MIPFILTER, D3DTEXF_POINT)
また、Direct3DTexture8.GetSurfaceLevel メソッドを使用し、取得するミップマップ レベルを指定することで、ミップマップ サーフェスのチェーンを手動でトラバースできる。次の例では、最高解像度から最低解像度までミップマップ チェーンをトラバースする。
Dim DDLevel As Direct3DSurface8 Dim cLevels As Long cLevels = DDMipMap.GetLevelCount For iLevel = 0 to cLevels Set DDLevel = DDMipMap.GetSurfaceLevel(iLevel) 'このレベルを処理する。 Set DDLevel = Nothing Next
チェーンの各サーフェスにビットマップ データをロードするために、アプリケーションではミップマップ チェーンを手動でトラバースする必要がある。通常、この理由からチェーンをトラバースする。アプリケーションは、Direct3DBaseTexture8.GetLevelCount を呼び出して、ミップマップ テクスチャに格納されているレベルの数を取得できる。