Signed-off-by: Henri Verbeet hverbeet@codeweavers.com --- dlls/ddraw/surface.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/dlls/ddraw/surface.c b/dlls/ddraw/surface.c index c51db7661ab..fc120e390eb 100644 --- a/dlls/ddraw/surface.c +++ b/dlls/ddraw/surface.c @@ -6152,12 +6152,15 @@ HRESULT ddraw_surface_create(struct ddraw *ddraw, const DDSURFACEDESC2 *surface_ } else { - if (desc->ddsCaps.dwCaps & DDSCAPS_TEXTURE) - wined3d_desc.usage |= WINED3DUSAGE_TEXTURE; - if (desc->ddsCaps.dwCaps & DDSCAPS_ZBUFFER) - wined3d_desc.usage |= WINED3DUSAGE_DEPTHSTENCIL; - else if (desc->ddsCaps.dwCaps & DDSCAPS_3DDEVICE) - wined3d_desc.usage |= WINED3DUSAGE_RENDERTARGET; + if (!(ddraw->flags & DDRAW_NO3D)) + { + if (desc->ddsCaps.dwCaps & DDSCAPS_TEXTURE) + wined3d_desc.usage |= WINED3DUSAGE_TEXTURE; + if (desc->ddsCaps.dwCaps & DDSCAPS_ZBUFFER) + wined3d_desc.usage |= WINED3DUSAGE_DEPTHSTENCIL; + else if (desc->ddsCaps.dwCaps & DDSCAPS_3DDEVICE) + wined3d_desc.usage |= WINED3DUSAGE_RENDERTARGET; + }
if (desc->ddsCaps.dwCaps2 & (DDSCAPS2_TEXTUREMANAGE | DDSCAPS2_D3DTEXTUREMANAGE)) {