Microsoft DirectX 8.0 (Visual Basic)

ビューポートのスケーリング

ビューポート用の D3DVIEWPORT8 型の xyWidth、および Height メンバに寸法を指定して、レンダリング ターゲット サーフェスのビューポートの位置座標および大きさを定義する。これらの値は、レンダリング ターゲット サーフェスの左上角からのスクリーン座標である。

Microsoft® Direct3D® では、ビューポートの位置座標と寸法を使用して頂点をスケーリングし、レンダリングするシーンをターゲット サーフェス上の適切な位置座標に配置する。内部的には、Direct3D は、各頂点に適用される行列にこれらの値を挿入している。

この行列は、ビューポートの寸法および指定の深度範囲に従って頂点をスケーリングし、その頂点をレンダリング ターゲット サーフェスの適切な位置座標に平行移動する。また、この行列は、y が下方に増加する左上角のスクリーン原点を反映するために y 座標を反転する。この行列を適用した後も、頂点は同次である。つまり、頂点は依然として [x,y,z,w] 頂点として存在するので、ラスタライザに送る前に頂点を非同次にトランスフォームしなければならない。これは、「ラスタ化」で説明するように、単純な除算によって行う。