IDirect3DDevice9::SetDepthStencilSurface 方法 (d3d9.h)
設定深度樣板表面。
語法
HRESULT SetDepthStencilSurface(
[in] IDirect3DSurface9 *pNewZStencil
);
參數
[in] pNewZStencil
類型: IDirect3DSurface9*
代表深度樣板介面的 IDirect3DSurface9 介面指標位址。 將此設定為 NULL 會停用深度樣板作業。
傳回值
類型: HRESULT
如果方法成功,傳回值會D3D_OK。 如果 pZStencilSurface 不是 NULL,當樣板表面無效時,傳回值會D3DERR_INVALIDCALL。
備註
使用此方法的限制包括:
- 多取樣類型對於轉譯目標和深度樣板表面必須相同。
- 格式必須與轉譯目標和深度樣板表面相容。 請參閱 IDirect3D9::CheckDepthStencilMatch。
- 深度樣板表面的大小必須大於或等於轉譯目標的大小。
Cube 紋理與其他表面不同,因為它們是表面集合。 若要使用 Cube 紋理呼叫 IDirect3DDevice9::SetDepthStencilSurface ,您必須使用 IDirect3DCubeTexture9::GetCubeMapSurface 選取個別臉部,並將產生的表面傳遞至 IDirect3DDevice9::SetDepthStencilSurface。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | d3d9.h (包含 D3D9.h) |
程式庫 | D3D9.lib |