Enable creation of a zbuffer in system memory.
This commit is contained in:
parent
b9e542fd8e
commit
bfeca3bff9
|
@ -631,17 +631,18 @@ Main_DirectDraw_CreateSurface(LPDIRECTDRAW7 iface, LPDDSURFACEDESC2 pDDSD,
|
||||||
/* create texture */
|
/* create texture */
|
||||||
hr = create_texture(This, pDDSD, ppSurf, pUnkOuter);
|
hr = create_texture(This, pDDSD, ppSurf, pUnkOuter);
|
||||||
}
|
}
|
||||||
|
else if ( (pDDSD->ddsCaps.dwCaps & DDSCAPS_ZBUFFER) &&
|
||||||
|
!(pDDSD->ddsCaps.dwCaps & DDSCAPS_OFFSCREENPLAIN)) /* Support DDSCAPS_SYSTEMMEMORY */
|
||||||
|
{
|
||||||
|
/* create z-buffer */
|
||||||
|
hr = This->create_zbuffer(This, pDDSD, ppSurf, pUnkOuter);
|
||||||
|
}
|
||||||
else if ((pDDSD->ddsCaps.dwCaps & DDSCAPS_OFFSCREENPLAIN) ||
|
else if ((pDDSD->ddsCaps.dwCaps & DDSCAPS_OFFSCREENPLAIN) ||
|
||||||
(pDDSD->ddsCaps.dwCaps & DDSCAPS_SYSTEMMEMORY)) /* No difference in Wine right now */
|
(pDDSD->ddsCaps.dwCaps & DDSCAPS_SYSTEMMEMORY)) /* No difference in Wine right now */
|
||||||
{
|
{
|
||||||
/* create offscreenplain surface */
|
/* create offscreenplain surface */
|
||||||
hr = create_offscreen(This, pDDSD, ppSurf, pUnkOuter);
|
hr = create_offscreen(This, pDDSD, ppSurf, pUnkOuter);
|
||||||
}
|
}
|
||||||
else if (pDDSD->ddsCaps.dwCaps & DDSCAPS_ZBUFFER)
|
|
||||||
{
|
|
||||||
/* create z-buffer */
|
|
||||||
hr = This->create_zbuffer(This, pDDSD, ppSurf, pUnkOuter);
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* Otherwise, assume offscreenplain surface */
|
/* Otherwise, assume offscreenplain surface */
|
||||||
|
|
Loading…
Reference in New Issue