Microsoft DirectX 8.0 (C++) |
Microsoft® Direct3D® デバイスでは、4×4 行列を適用して、頂点のテクスチャ座標をトランスフォームできる。システムは、テクスチャ座標に対して、ジオメトリの場合と同様にトランスフォームを適用する。適用可能なトランスフォームには、スケーリング、回転、平行移動、射影、せん断、またはこれらの組み合わせなど、4×4 行列で可能なあらゆるトランスフォームがある。
注 Direct3D では、「トランスフォーム済み ライティング済みの頂点」は修正されない。したがって、「トランスフォーム済み ライティング済みの頂点」を使用するアプリケーションでは、Direct3D によって頂点のテクスチャ座標をトランスフォームすることはできない。
ハードウェア アクセラレーションによるトランスフォーム & ライティング処理をサポートするデバイス (TnLHAL デバイス) では、テクスチャ座標トランスフォームも高速処理される。ハードウェア アクセラレーションによるトランスフォームが利用できない場合は、Direct3D ジオメトリ パイプラインのプラットフォーム固有の最適化によってテクスチャ座標トランスフォームが実行される。
テクスチャ座標トランスフォームは、ジオメトリのテクスチャ座標を直接変更しないで特殊効果を出そうとする場合に便利である。単純な平行移動行列や回転行列を使用して、オブジェクト上のテクスチャをアニメーションしたり、Direct3D によって自動生成されるテクスチャ座標をトランスフォームすることで、射影テクスチャや動的ライト マッピングなど高度なエフェクトを単純化し、高速処理することも可能である。また、テクスチャ座標トランスフォームを使用して、テクスチャ座標の単一セットを複数のテクスチャ ステージでのさまざまな目的のために再利用できる。
詳細については、「テクスチャ座標処理の使い方」を参照すること。