Platform SDK: DirectX

ステップ 2.4 : ビューポートを準備する

[Visual Basic]

ここでは、C および C++ でのアプリケーション開発について説明する。Visual Basic については、「Direct3D 直接モード Visual Basic チュートリアル」を参照すること。

[C++]

レンダリング デバイスを作成した後、ビューポートを作成してデバイスに割り当てることができる。簡単に言えば、ビューポートとは、3D シーンのジオメトリをクリップして 2D 表示空間に表現する方法を決定するものである。(ビューポートの概要については、「ビューポートとクリッピング」を参照すること)。

ビューポートの設定は簡単で、D3DVIEWPORT7 構造体にビューポート パラメータを準備することから始まる。サンプル Triangle では、ビューポート パラメータをレンダリング ターゲット サーフェスのサイズに設定している。

    // ビューポートを作成する。
    DWORD dwRenderWidth  = g_rcScreenRect.right - g_rcScreenRect.left;
    DWORD dwRenderHeight = g_rcScreenRect.bottom - g_rcScreenRect.top;
    D3DVIEWPORT7 vp = { 0, 0, dwRenderWidth, dwRenderHeight, 0.0f, 1.0f };

ビューポート構造体を準備すると、この構造体は Triangle アプリケーションによってレンダリング デバイスに割り当てられる。

    hr = g_pd3dDevice->SetViewport( &vp );
    if( FAILED( hr ) )
        return hr;

ここで、基本的な DirectX オブジェクトの作成が終了したので、シーンのレンダリングに必要な従属オブジェクトの準備を始めることができる。これが、「ステップ 3 : シーンを初期化する」の説明内容である。