Platform SDK: DirectX

IDirect3DDevice7::Clear

IDirect3DDevice7::Clear メソッドは、ビューポート (またはビューポート内の矩形セット) を特定の RGBA 色にクリア、深度バッファをクリア、およびステンシル バッファを削除する。このメソッドは、従来の IDirect3DViewport3 インターフェイスが公開したクリアメソッドに代わって使用される。

HRESULT Clear(
  DWORD     dwCount,   
  LPD3DRECT lpRects,   
  DWORD     dwFlags,   
  DWORD     dwColor,   
  D3DVALUE  dvZ,       
  DWORD     dwStencil  
);

パラメータ

dwCount
lpRects の配列にある矩形の数。lpRects を NULL に設定する場合は、このパラメータを 0 に設定する。
lpRects
クリアする矩形を記述する D3DRECT 構造体の配列。矩形をレンダリング ターゲットの寸法に設定すると、サーフェス全体がクリアされる。各矩形は、レンダリング ターゲット サーフェス上の点に対応するスクリーン座標を使用する。座標はビューポートの矩形の境界でクリップされる。このパラメータを NULL に設定すると、ビューポート矩形全体をクリアすることになる。
dwFlags
クリアするサーフェスを示すフラグ。このパラメータは、次のフラグの任意の組み合わせを取ることができるが、フラグを最低 1 つは使わなければならない。
D3DCLEAR_TARGET
レンダリング ターゲットをクリアして、dwColor パラメータの色にする。
D3DCLEAR_STENCIL
ステンシル バッファをクリアして、dwStencil パラメータの値にする。
D3DCLEAR_ZBUFFER
深度バッファをクリアして、dvZ パラメータの値にする。
dwColor
レンダリング ターゲット サーフェスをクリアする 32 ビット RGBA カラー値。
dvZ
このメソッドが深度バッファに保存する新しい z 値。このパラメータには 0.0 から 1.0 までの値を使用できる (Z ベースまたは W ベースの深度バッファの場合)。0.0 はビューアに最も近い距離、1.0 は最も遠い距離を表す。
dwStencil
各ステンシル バッファのエントリに保存する整数値。このパラメータには 0 から 2n-1 までの値を使用できる。n はステンシル バッファのビット深度。

戻り値

成功すれば D3D_OK を返す。

失敗すれば、次のいずれかの値を返す。

D3DERR_STENCILBUFFER_NOTPRESENT
D3DERR_VIEWPORTHASNODEVICE
D3DERR_ZBUFFER_NOTPRESENT
DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS

注意

このメソッドは IDirect3DDevice7 インターフェイスと共に導入された。

このメソッドは、レンダリング ターゲットに深度バッファがアタッチされていないときに D3DCLEAR_ZBUFFER または D3DCLEAR_STENCIL フラグを指定すると失敗する。同様に、深度バッファ フォーマットにステンシル バッファ情報が含まれていない場合、D3DCLEAR_STENCIL フラグを指定すると、このメソッドは失敗する。

動作環境

  Windows NT/2000 :Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
  バージョン :DirectX 7.0 が必要。
  ヘッダー : d3d.h で宣言。