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)