Graphics Reference
In-Depth Information
hr = pd3dDevice->CreateTexture(pBackBufferSurfaceDesc->Width,
pBackBufferSurfaceDesc->Height, 1, D3DUSAGE_RENDERTARGET, fmt,
D3DPOOL_DEFAULT, &g_pTexRender, NULL);
if(FAILED(hr))
return hr;
hr = pd3dDevice->CreateTexture(pBackBufferSurfaceDesc->Width/8,
pBackBufferSurfaceDesc->Height/8, 1, D3DUSAGE_RENDERTARGET,
D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, &g_pTexBrightPass, NULL);
if(FAILED(hr))
return hr;
//Determine whether we can and should support a multisampling on the
HDR render target
g_bUseMultiSample = false;
IDirect3D9* pD3D = DXUTGetD3D9Object();
if(!pD3D)
return E_FAIL;
DXUTDeviceSettings settings = DXUTGetDeviceSettings();
g_bSupportsD16 = false;
if(SUCCEEDED(pD3D->CheckDeviceFormat(settings.d3d9.AdapterOrdinal,
settings.d3d9.DeviceType, settings.d3d9.AdapterFormat,
D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D16)))
{
if(SUCCEEDED(pD3D->CheckDepthStencilMatch(settings.d3d9.
AdapterOrdinal, settings.d3d9.DeviceType, settings.d3d9.AdapterFormat,
fmt, D3DFMT_D16)))
{
g_bSupportsD16 = true;
}
}
g_bSupportsD32 = false;
if(SUCCEEDED(pD3D->CheckDeviceFormat(settings.d3d9.AdapterOrdinal,
settings.d3d9.DeviceType, settings.d3d9.AdapterFormat,
D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D32)))
{
if(SUCCEEDED(pD3D->CheckDepthStencilMatch(settings.d3d9.
AdapterOrdinal, settings.d3d9.DeviceType, settings.d3d9.AdapterFormat,
fmt, D3DFMT_D32)))
{
g_bSupportsD32 = true;
}
}
g_bSupportsD24X8 = false;
if(SUCCEEDED(pD3D->CheckDeviceFormat(settings.d3d9.AdapterOrdinal,
settings.d3d9.DeviceType, settings.d3d9.AdapterFormat,
D3DUSAGE_DEPTHSTENCIL, D3DRTYPE_SURFACE, D3DFMT_D24X8)))
{
if(SUCCEEDED(pD3D->CheckDepthStencilMatch(settings.d3d9.
AdapterOrdinal, settings.d3d9.DeviceType, settings.d3d9.AdapterFormat,
fmt, D3DFMT_D24X8)))
{
g_bSupportsD24X8 = true;
}
}
Search WWH ::




Custom Search