Platform SDK: DirectX

テクスチャ アドレッシング モードの設定と取得

[C++]

IDirect3DDevice7::SetTextureStageState メソッドを呼び出すことで、個々のテクスチャ ステージにテクスチャ アドレッシング モードを設定できる。第 1 パラメータには、希望のテクスチャ ステージ識別子を指定する。第 2 パラメータには、u および v の両方のテクスチャ アドレッシング モードを同時に変更する D3DTSS_ADDRESS を設定するか、u または v のアドレッシング モードを個別に更新する D3DTSS_ADDRESSU または D3DTSS_ADDRESSV を設定する。SetTextureStageState に渡す第 3 パラメータには、設定するモードの種類を指定する。このパラメータには、D3DTEXTUREADDRESS 列挙型のメンバのいずれかを設定できる。指定したテクスチャ ステージの現在のテクスチャ アドレッシング モードを取得するには、IDirect3DDevice7::GetTextureStageState を呼び出して、D3DTEXTURESTAGESTATETYPE 列挙の D3DTSS_ADDRESS、D3DTSS_ADDRESSU、または D3DTSS_ADDRESSV メンバを使用して情報を取得するアドレッシング モードを指定する。

従来の IDirect3DDevice2 インターフェイスを使用する場合、テクスチャ アドレッシング モードを設定するには、IDirect3DDevice2::SetRenderState メソッドを呼び出して、u および v のテクスチャ アドレッシング モードを同時に設定する D3DRENDERSTATE_TEXTUREADDRESS レンダリング ステートを使用する。D3DRENDERSTATE_TEXTUREADDRESSU または D3DRENDERSTATE_TEXTUREADDRESSV レンダリング ステートを使用して、u および v のアドレッシング モードを個別に設定できる。SetTextureStageState に対応する、新しいレンダリング ステートと同様、これらのレンダリング ステートも D3DTEXTUREADDRESS 列挙型の値を使用する。

 :  IDirect3DDevice7::SetRenderState メソッドは、IDirect3DDevice2 バージョンとは対照的に、D3DRENDERSTATE_TEXTUREADDRESSD3DRENDERSTATE_TEXTUREADDRESSUD3DRENDERSTATE_TEXTUREADDRESSV レンダリング ステートがほかのレンダリング ステートに置き換えられていても、これらのステートを認識する。IDirect3DDevice7 は従来のレンダリング ステートを認識し、そのエフェクトを最初のテクスチャ ステージ (ステージ 0) にマッピングする。従来のレンダリング ステートとそれに対応するテクスチャ ステージ ステートを併用しないこと。予期せぬ結果が生じることがある。

[Visual Basic]

Visual Basic では、Direct3DDevice7.SetTextureStageState メソッドを呼び出すことで、個々のテクスチャ ステージに対してテクスチャ アドレッシング モードを設定する。第 1 パラメータには、希望のテクスチャ ステージ識別子を指定する。第 2 パラメータには、u および v の両方のテクスチャ アドレッシング モードを同時に変更する D3DTSS_ADDRESS を設定するか、u または v のアドレッシング モードを個別に更新する D3DTSS_ADDRESSU または D3DTSS_ADDRESSV を設定する。SetTextureStageState に渡す第 3 パラメータには、設定するモードの種類を指定する。このパラメータには、CONST_D3DTEXTUREADDRESS 列挙のメンバのいずれかを設定できる。

指定したテクスチャ ステージの現在のテクスチャ アドレッシング モードを取得するには、Direct3DDevice7::GetTextureStageState を呼び出して、情報を取得するアドレッシング モードへの CONST_D3DTEXTURESTAGESTATETYPE 列挙の D3DTSS_ADDRESS、D3DTSS_ADDRESSU、または D3DTSS_ADDRESSV メンバを使用する。