mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 10:54:24 -04:00
Added forced creation of a depth stencil surface for render to texture.
This commit is contained in:
parent
b75a855d53
commit
f3110d821c
@ -429,34 +429,50 @@ open_buffer() {
|
|||||||
|
|
||||||
// ***** CREATE A DEPTH STENCIL BUFFER IF NEEDED
|
// ***** CREATE A DEPTH STENCIL BUFFER IF NEEDED
|
||||||
|
|
||||||
|
HRESULT hr;
|
||||||
|
IDirect3DSurface9 *_depth_stencil_surface;
|
||||||
|
|
||||||
|
hr = dxgsg -> _d3d_device -> GetDepthStencilSurface (&_depth_stencil_surface);
|
||||||
|
if (SUCCEEDED (hr))
|
||||||
{
|
{
|
||||||
/*
|
D3DSURFACE_DESC surface_description;
|
||||||
HRESULT hr;
|
|
||||||
|
|
||||||
UINT width;
|
hr = _depth_stencil_surface -> GetDesc (&surface_description);
|
||||||
UINT height;
|
if (SUCCEEDED (hr))
|
||||||
D3DFORMAT format;
|
{
|
||||||
D3DMULTISAMPLE_TYPE multisample_type;
|
UINT width;
|
||||||
DWORD multisample_quality;
|
UINT height;
|
||||||
BOOL discard;
|
D3DFORMAT format;
|
||||||
|
D3DMULTISAMPLE_TYPE multisample_type;
|
||||||
|
DWORD multisample_quality;
|
||||||
|
BOOL discard;
|
||||||
|
|
||||||
width = ;
|
width = tex -> get_x_size ( );
|
||||||
height = ;
|
height = tex -> get_y_size ( );
|
||||||
format = ;
|
format = surface_description.Format;
|
||||||
multisample_type = ;
|
multisample_type = surface_description.MultiSampleType;
|
||||||
multisample_quality = ;
|
multisample_quality = surface_description.MultiSampleQuality;
|
||||||
discard = true;
|
discard = true;
|
||||||
|
|
||||||
hr = dxgsg -> _d3d_device -> CreateDepthStencilSurface (
|
hr = dxgsg -> _d3d_device -> CreateDepthStencilSurface (
|
||||||
width, height, format, multisample_type, multisample_quality,
|
width, height, format, multisample_type, multisample_quality,
|
||||||
discard, &this -> _new_z_stencil_surface, NULL);
|
discard, &this -> _new_z_stencil_surface, NULL);
|
||||||
if (SUCCEEDED (hr)) {
|
if (SUCCEEDED (hr)) {
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
dxgsg9_cat.error ( ) << "CreateDepthStencilSurface " << D3DERRORSTRING(hr) FL;
|
dxgsg9_cat.error ( ) << "GetDesc " << D3DERRORSTRING(hr) FL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dxgsg9_cat.error ( ) << "GetDepthStencilSurface " << D3DERRORSTRING(hr) FL;
|
||||||
}
|
}
|
||||||
|
|
||||||
*/
|
_depth_stencil_surface -> Release ( );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dxgsg9_cat.error ( ) << "GetDepthStencilSurface " << D3DERRORSTRING(hr) FL;
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user