UID | title | description | helpviewer_keywords | old-location | tech.root | ms.assetid | ms.date | ms.keywords | req.header | req.include-header | req.target-type | req.target-min-winverclnt | req.target-min-winversvr | req.kmdf-ver | req.umdf-ver | req.ddi-compliance | req.unicode-ansi | req.idl | req.max-support | req.namespace | req.assembly | req.type-library | req.lib | req.dll | req.irql | targetos | req.typenames | req.redist | ms.custom | f1_keywords | dev_langs | topic_type | api_type | api_location | api_name | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
NF:d3d9helper.IDirect3D9.CheckDepthStencilMatch |
IDirect3D9::CheckDepthStencilMatch (d3d9helper.h) |
The IDirect3D9::CheckDepthStencilMatch (d3d9helper.h) method determines whether a depth-stencil format is compatible with a render-target format. |
|
direct3d9\idirect3d9__checkdepthstencilmatch.htm |
direct3d9 |
VS|directx_sdk|~\idirect3d9__checkdepthstencilmatch.htm |
08/11/2022 |
64b8e751-080a-bbb1-2461-2c51a5600a61, CheckDepthStencilMatch, CheckDepthStencilMatch method [Direct3D 9], CheckDepthStencilMatch method [Direct3D 9],IDirect3D9 interface, IDirect3D9 interface [Direct3D 9],CheckDepthStencilMatch method, IDirect3D9.CheckDepthStencilMatch, IDirect3D9::CheckDepthStencilMatch, d3d9helper/IDirect3D9::CheckDepthStencilMatch, direct3d9.idirect3d9__checkdepthstencilmatch |
d3d9helper.h |
D3D9.h |
Windows |
D3D9.lib |
Windows |
19H1 |
|
|
|
|
|
|
Determines whether a depth-stencil format is compatible with a render-target format in a particular display mode.
Type: UINT
Ordinal number denoting the display adapter to query. D3DADAPTER_DEFAULT is always the primary display adapter.
Type: D3DDEVTYPE
Member of the D3DDEVTYPE enumerated type, identifying the device type.
Type: D3DFORMAT
Member of the D3DFORMAT enumerated type, identifying the format of the display mode into which the adapter will be placed.
Type: D3DFORMAT
Member of the D3DFORMAT enumerated type, identifying the format of the render-target surface to be tested.
Type: D3DFORMAT
Member of the D3DFORMAT enumerated type, identifying the format of the depth-stencil surface to be tested.
Type: HRESULT
If the depth-stencil format is compatible with the render-target format in the display mode, this method returns D3D_OK. D3DERR_INVALIDCALL can be returned if one or more of the parameters is invalid. If a depth-stencil format is not compatible with the render target in the display mode, then this method returns D3DERR_NOTAVAILABLE.
This method is provided to enable applications to work with hardware requiring that certain depth formats can only work with certain render-target formats.
The behavior of this method has been changed for DirectX 8.1. This method now pays attention to the D24x8 and D32 depth-stencil formats. The previous version assumed that these formats would always be usable with 32- or 16-bit render targets. This method will now return D3D_OK for these formats only if the device is capable of mixed-depth operations.
The following code fragment shows how you could use CheckDeviceFormat to validate a depth stencil format.
BOOL IsDepthFormatOk(D3DFORMAT DepthFormat,
D3DFORMAT AdapterFormat,
D3DFORMAT BackBufferFormat)
{
// Verify that the depth format exists
HRESULT hr = pD3D->CheckDeviceFormat(D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
AdapterFormat,
D3DUSAGE_DEPTHSTENCIL,
D3DRTYPE_SURFACE,
DepthFormat);
if(FAILED(hr)) return FALSE;
// Verify that the depth format is compatible
hr = pD3D->CheckDepthStencilMatch(D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
AdapterFormat,
BackBufferFormat,
DepthFormat);
return SUCCEEDED(hr);
}
The preceding call will return FALSE if DepthFormat cannot be used in conjunction with AdapterFormat and BackBufferFormat.