IDirect3DDevice9::CreateDepthStencilSurface メソッド (d3d9helper.h)

深度ステンシル リソースを作成します。

構文

HRESULT CreateDepthStencilSurface(
  [in]          UINT                Width,
  [in]          UINT                Height,
  [in]          D3DFORMAT           Format,
  [in]          D3DMULTISAMPLE_TYPE MultiSample,
  [in]          DWORD               MultisampleQuality,
  [in]          BOOL                Discard,
  [out, retval] IDirect3DSurface9   **ppSurface,
  [in]          HANDLE              *pSharedHandle
);

パラメーター

[in] Width

型: UINT

深度ステンシル サーフェスの幅 (ピクセル単位)。

[in] Height

型: UINT

深度ステンシル サーフェスの高さ (ピクセル単位)。

[in] Format

種類: D3DFORMAT

D3DFORMAT列挙型のメンバー。深度ステンシル サーフェスの形式を記述します。 この値は、このデバイスの列挙された深度ステンシル形式のいずれかである必要があります。

[in] MultiSample

種類: D3DMULTISAMPLE_TYPE

マルチサンプリング バッファー型を記述する、 D3DMULTISAMPLE_TYPE 列挙型のメンバー。 この値は、許可されているマルチサンプル型のいずれかである必要があります。 このサーフェスを IDirect3DDevice9::SetDepthStencilSurface に渡す場合、そのマルチサンプルの種類は 、IDirect3DDevice9::SetRenderTarget によって設定されたレンダー ターゲットの型と同じである必要があります。

[in] MultisampleQuality

型: DWORD

品質レベル。 有効な範囲は、 IDirect3D9::CheckDeviceMultiSampleType によって使用される pQualityLevels によって返されるレベルより 0 から 1 未満の範囲です。 より大きな値を渡すと、エラー D3DERR_INVALIDCALLが返されます。 ペアのレンダー ターゲット、深度ステンシル サーフェス、および MultiSample 型の MultisampleQuality 値はすべて一致する必要があります。

[in] Discard

種類: BOOL

z バッファーの破棄を有効にするにはこのフラグを TRUE に設定し、それ以外の場合 は FALSE に 設定します。 このフラグが設定されている場合、深度ステンシル バッファーの内容は、 IDirect3DDevice9::P resent または IDirect3DDevice9::SetDepthStencilSurface を別の深度サーフェスで呼び出した後に無効になります。

このフラグの動作は、D3DPRESENTFLAGの定数D3DPRESENTFLAG_DISCARD_DEPTHSTENCILと同じです。

[out, retval] ppSurface

種類: IDirect3DSurface9**

作成された深度ステンシル サーフェス リソースを表す IDirect3DSurface9 インターフェイスへのポインターのアドレス。

[in] pSharedHandle

型: HANDLE*

予約済み。 このパラメーターを NULL に設定 します。 このパラメーターは、Windows Vista 用 Direct3D 9 で リソースを共有するために使用できます。

戻り値

型: HRESULT

メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値は次のいずれかになります:D3DERR_NOTAVAILABLE、D3DERR_INVALIDCALL、D3DERR_OUTOFVIDEOMEMORY、E_OUTOFMEMORY。

注釈

深度ステンシル バッファーのメモリ クラスは常にD3DPOOL_DEFAULT。

要件

要件
対象プラットフォーム Windows
ヘッダー d3d9helper.h (D3D9.h を含む)
Library D3D9.lib

こちらもご覧ください

IDirect3DDevice9

IDirect3DDevice9::UpdateSurface