次の方法で共有


テクスチャ座標処理 (Direct3D 9)

次の図は、テクスチャ座標によってソースから、処理、ラスタライザーへのパスを示しています。

ソースからラスタライザーへのテクスチャ座標のパスの図

システムがテクスチャ座標を描画できるソースは 2 つあります。 特定のテクスチャ ステージでは、頂点形式に含まれるテクスチャ座標 (D3DFVF_TEX1からD3DFVF_TEX8) を使用することも、Direct3D によって自動的に生成されるテクスチャ座標を使用することもできます。 後者のケースの詳細については、「 自動生成されたテクスチャ座標 (Direct3D 9)」を参照してください。 現在のテクスチャ ステージのD3DTSS_TEXTURETRANSFORMFLAGSテクスチャ ステージの状態が D3DTTFF_DISABLE (既定の設定) に設定されている場合、入力座標は変換されません。 D3DTSS_TEXTURETRANSFORMFLAGS> が他の値に設定されている場合、そのステージの変換行列が入力座標に適用されます。

D3DTEXTURETRANSFORMFLAGS 列挙型は、D3DTSS_TEXTURETRANSFORMFLAGSテクスチャ ステージ状態の有効な値を定義します。 テクスチャ座標変換をバイパスする D3DTTFF_DISABLE フラグを除き、この列挙体で定義されている値は、システムがラスタライザーに渡す出力座標の数を構成します。 D3DTTFF_COUNT4 フラグを介したD3DTTFF_COUNT1は、出力座標からラスタライザーに 1 つ、2 つ、3 つ、または 4 つの要素を渡すようにシステムに指示します。

D3DTTFF_PROJECTED フラグは特殊です。テクスチャ座標が投影テクスチャ用であることをシステムに通知します。 D3DTTFF_PROJECTED フラグを D3DTEXTURETRANSFORMFLAGS の別のメンバーと組み合わせて、ラスター化が行われる前にすべての要素を最後の要素で分割するようにラスタライザーに指示します。 たとえば、3 要素のテクスチャ座標を明示的に使用する場合、または変換によって 3 要素のテクスチャ座標が生成される場合は、D3DTTFF_COUNT3フラグとD3DTTFF_PROJECTED フラグを組み合わせて、ラスタライザーが最初の 2 つの要素を最後の要素で分割し、2D テクスチャに対処するために必要な 2D テクスチャ座標を生成できます。

Note

立方環境マップとボリューム テクスチャを除き、ラスタライザーは 2 つ以上の要素を持つテクスチャ座標を使用してテクスチャに対処できません。 そのステージの現在のテクスチャに対応するために使用できる以上の要素を指定した場合、余分な要素は無視されます。 これは、1D テクスチャに 2D テクスチャ座標を使用する場合にも適用されます。

 

追加情報については、次のトピックを参照してください。

テクスチャ座標