Platform SDK: DirectX

D3DVIEWPORT7

D3DVIEWPORT7 型は、3D ボリュームが射影する、レンダリング ターゲット サーフェスのウィンドウ サイズを定義する。この型は、Direct3DDevice7.GetViewport および Direct3DDevice7.SetViewport メソッドで使用される。

Type D3DVIEWPORT7
    lHeight As Long
    lWidth As Long
    lX As Long
    lY As Long
    maxz As Single
    minz As Single
End Type

メンバ

lHeight および lWidth
レンダリングの対象となるサーフェス上のビューポートの大きさをピクセル単位で表す。サーフェスのサブセットに限定してレンダリングするのでなければ、これらのメンバにはレンダリングの対象サーフェスの大きさをセットする。
lX および lY
レンダリングの対象となるサーフェス上のビューポートの左上隅を表すピクセル座標。サーフェスのサブセットにレンダリングするのでなければ、これらのメンバは、ゼロにセットしてよい。
minz および maxz
シーンをレンダリングする深度の範囲を示す値 (DirectX 7.0 では、射影行列の値によって深度ベースのクリッピングを行うので注意する)。ほとんどのアプリケーションでは、これらの値を 0.0 と 1.0 に設定するが、両方とも 0.0 に設定して、シーンの前面でオブジェクトをレンダリングすることもできる。DirectX 7.0 では、射影行列を適用した後でクリッピングが行われる。詳細については、「クリッピング ボリューム」と「射影トランスフォーム」を参照すること。

注意

lXlYlWidth および lHeight メンバは、レンダリングの対象となるサーフェス上のビューポートの位置と大きさを記述する。通常、アプリケーションは対象となるサーフェス全体のレンダリングを実行するので、640Χ480 のサーフェスでレンダリングを行う場合には、これらのメンバはそれぞれ 0、0、640、480 の値を取る。minzmaxz は通常 0.0 と 1.0 に設定されるが、それ以外の値に設定して特殊なエフェクトを生成することもできる。たとえば、これらの値を両方とも 0.0 に設定すると、シーンの前面でオブジェクトがレンダリングされ、両方とも 1.0 に設定すると、背面でレンダリングされる。

Direct3DDevice7.SetViewport メソッドによってデバイスのビューポート パラメータを変更した場合、ドライバは新しいトランスフォーム行列を作成する。

参照

Direct3DDevice7.GetViewportDirect3DDevice7.SetViewportクリッピング ボリュームビューポートとクリッピング