次の方法で共有


D3DTEXTUREFILTERTYPE

テクスチャー ステージにおけるテクスチャー フィルタリング モードを指定する定数を定義します。

typedef enum D3DTEXTUREFILTERTYPE
{
    D3DTEXF_NONE = 0,
    D3DTEXF_POINT = 1,
    D3DTEXF_LINEAR = 2,
    D3DTEXF_ANISOTROPIC = 3,
    D3DTEXF_PYRAMIDALQUAD = 6,
    D3DTEXF_GAUSSIANQUAD = 7,
    D3DTEXF_CONVOLUTIONMONO = 8,
    D3DTEXF_FORCE_DWORD = 0x7fffffff,
} D3DTEXTUREFILTERTYPE, *LPD3DTEXTUREFILTERTYPE;

定数

  • D3DTEXF_NONE
    D3DSAMP_MIPFILTER と併用すると、ミップマッピングが無効になります。

  • D3DTEXF_POINT
    D3DSAMP_ MAGFILTER または D3DSAMP_MINFILTER と併用すると、それぞれテクスチャー拡大フィルターまたはテクスチャー縮小フィルターとして点フィルタリングを使用する指定となります。D3DSAMP_MIPFILTER と併用すると、ミップマッピングを有効にし、最も近いミップ レベルのテクセルからラスタライザーで色を選択する指定となります。

  • D3DTEXF_LINEAR
    D3DSAMP_ MAGFILTER または D3DSAMP_MINFILTER と併用すると、それぞれテクスチャー拡大フィルターまたはテクスチャー縮小フィルターとして線形フィルタリングを使用する指定となります。D3DSAMP_MIPFILTER と併用すると、ミップマッピングとトライリニア フィルタリングを有効にし、最も近い 2 つのミップ レベル間をラスタライザーで補間する指定となります。

  • D3DTEXF_ANISOTROPIC
    D3DSAMP_ MAGFILTER または D3DSAMP_MINFILTER と併用すると、それぞれテクスチャー拡大フィルターまたはテクスチャー縮小フィルターとして異方性テクスチャー フィルタリングを使用する指定となります。テクスチャー ポリゴンとスクリーン平面間の角度の相違で発生するディストーションを補正します。D3DSAMP_MIPFILTER との併用は定義されていません。

  • D3DTEXF_PYRAMIDALQUAD
    テクスチャーの拡大フィルターまたは縮小フィルターとして使う 4 サンプルのテント フィルターです。D3DSAMP_MIPFILTER との併用は定義されていません。

  • D3DTEXF_GAUSSIANQUAD
    テクスチャーの拡大フィルターまたは縮小フィルターとして使う 4 サンプルのガウス フィルターです。D3DSAMP_MIPFILTER との併用は定義されていません。

  • D3DTEXF_CONVOLUTIONMONO
    モノクロ テクスチャー用の畳み込みフィルターです。「D3DFMT_A1」を参照してください。

    Direct3D 9 と Direct3D 9Ex の違い

    このフラグは Direct3D 9Ex でのみ使用できます。

    D3DSAMP_MIPFILTER との併用は定義されていません。

  • D3DTEXF_FORCE_DWORD
    コンパイル時に、この列挙型のサイズを 32 ビットにするために定義されています。この値を指定しない場合、一部のコンパイラでは列挙型を 32 ビット以外のサイズでコンパイル可能です。この定数が使用されることはありません。

解説 

D3DTEXTUREFILTERTYPE は、IDirect3DDevice9::SetSamplerStateD3DSAMPLERSTATETYPE と併用して、テクスチャー ステージのテクスチャー フィルタリング モードを定義します。

ある形式で D3DTEXF_POINT 以外のテクスチャー フィルター タイプがサポートされるか調べるには (D3DTEXF_POINT は常にサポートされる)、D3DUSAGE_QUERY_FILTER を指定して IDirect3D9::CheckDeviceFormat を呼び出します。

テクスチャー ステージの拡大フィルターを設定するには、IDirect3DDevice9::SetSamplerState を呼び出し、その際に第 2 パラメーターとして D3DSAMP_MAGFILTER 値を指定し、第 3 パラメーターとしてこの列挙の 1 つのメンバーを指定します。

テクスチャー ステージの縮小フィルターを設定するには、IDirect3DDevice9::SetSamplerState を呼び出し、その際に第 2 パラメーターとして D3DSAMP_MINFILTER 値を指定し、第 3 パラメーターとしてこの列挙の 1 つのメンバーを指定します。

ミップマップ レベル間で使用するテクスチャー フィルターを設定するには、IDirect3DDevice9::SetSamplerState を呼び出し、その際に第 2 パラメーターとして D3DSAMP_MIPFILTER を、第 3 パラメーターとしてこの列挙のいずれかのメンバーを指定します。

すべてのフィルタリング モードがボリューム マップで使用可能なわけではありません。一般的に、ボリューム マップでは、D3DTEXF_POINT および D3DTEXF_LINEAR 拡大フィルターがサポートされます。D3DPTEXTURECAPS_MIPVOLUMEMAP が設定されている場合、ボリューム マップでは D3DTEXF_POINT ミップマップ フィルターと、D3DTEXF_POINT および D3DTEXF_LINEAR 縮小フィルターがサポートされます。デバイスによっては、ボリューム マップの D3DTEXF_LINEAR ミップマップ フィルターをサポートするものとしないものがあります。デバイスが 2D マップの異方性フィルタリングをサポートしている場合でD3DTEXF_PYRAMIDALQUAD と D3DTEXF_GAUSSIANQUAD は Xenon ではサポートされていません。も、必ずしもボリューム マップの異方性フィルタリングをサポートしているとは限りません。ただし、異方性フィルタリングがサポートされていない場合に、異方性フィルタリングを設定した場合、最も有効なフィルター(多くの場合線形フィルター) が設定されます。

要件

ヘッダー: D3D9Types.h 宣言

関連項目

ID3DXPatchMesh::GetDisplaceParam, ID3DXPatchMesh::SetDisplaceParam, D3DSAMPLERSTATETYPE, IDirect3DDevice9::SetSamplerState