IDirect3DDevice9::Present

デバイスが所有するバック バッファーのシーケンスにおける、次のバッファーのコンテンツを提示します。

HRESULT 
Present(
  CONST RECT * pSourceRect,
  CONST RECT * pDestRect,
  HWND hDestWindowOverride,
  CONST RGNDATA * pDirtyRegion
);

パラメータ

  • pSourceRect
    スワップ チェーンの作成で D3DSWAPEFFECT_COPY を使用していない場合は NULL とする必要のある値へのポインター。pSourceRect は、ソース矩形を格納している RECT 構造体へのポインターです。NULL の場合、ソース サーフェス全体が示されます。矩形は、ソース サーフェスを超える場合、ソース サーフェスに合わせて切り取られます。
  • pDestRect
    スワップ チェーンの作成で D3DSWAPEFFECT_COPY を使用していない場合は NULL とする必要のある値へのポインター。pDestRect は、ウィンドウ クライアント座標内のデスティネーション矩形を格納している RECT 構造体へのポインターです。NULL の場合、クライアント領域全体が塗りつぶされます。矩形は、デスティネーション クライアント領域を超える場合、デスティネーション クライアント領域に合わせて切り取られます。
  • hDestWindowOverride
    クライアント領域がこのプレゼンテーションのターゲットになるデスティネーションのウィンドウへのポインター。この値が NULL の場合は、D3DPRESENT_PARAMETERS の hWndDeviceWindow メンバーが使用されます。
  • pDirtyRegion
    D3DSWAPEFFECT_COPY を使用してスワップ チェーンが作成されていない場合、この値は NULL でなければなりません。スワップ チェーンの詳細については、「サーフェスの反転 (Direct3D 9)」および「D3DSWAPEFFECT」を参照してください。この値が NULL 以外の場合、含まれる領域はバック バッファー座標で表されます。領域内の矩形は、更新する必要があるピクセルの最小セットです。このメソッドでは、プレゼンテーションを最適化する際、領域内のピクセルまたは適切に拡張された一連の矩形だけをコピーすることにより、これらの矩形が考慮されます。これは、最適化の補助のみを目的としています。アプリケーションでは、コピーされる領域そのものに依存しない必要があります。実装では、ソース矩形全体をコピーできます。

戻り値

返される可能性のある戻り値は次のとおりです。D3D_OK または D3DERR_DEVICEREMOVED (「D3DERR」を参照してください)。

解説 

必要に応じて、引き伸ばし操作を適用して、ソース矩形内のピクセルをターゲット ウィンドウのクライアント領域のデスティネーション矩形に転送します。

IDirect3DDevice9::Present は、レンダー ターゲットが現在のレンダー ターゲット (別のスワップ チェーンの作成から得られたバック バッファーなど) である場合、BeginScene ~ EndScene のペア間で呼び出されると、失敗し、D3DERR_INVALIDCALL を返します。これは、Direct3D 9 の新しい動作です。

要件

ヘッダー: D3D9.h 宣言

ライブラリ: D3D9.lib 内容

関連項目

IDirect3DDevice9::Reset, マルチヘッド (Direct3D 9), 喪失したデバイス (Direct3D 9)