diff options
author | Axel Davy <[email protected]> | 2019-02-05 00:11:46 +0100 |
---|---|---|
committer | Axel Davy <[email protected]> | 2019-03-09 13:57:49 +0100 |
commit | 597b5e27fa6d1662e01751aae7fde65896f7c8ef (patch) | |
tree | be81dc79ca933229a928c3d5e4b5e3cb9def18ce | |
parent | 0d3c37e2f9f03dfb7349e380c425a0956182488f (diff) |
st/nine: Change a few advertised caps
Most hw on the native platform advertise these
caps this way.
D3DCAPS_READ_SCANLINE: We don't really have hardware
support for that, but many games don't even check the
flag, and expect GetRasterStatus to work, which is
why we emulated it with a timer (like wine). So we
may as well advertise the cap.
D3DCURSORCAPS_LOWRES: I don't know what is the status
of this on X11, but I don't know of any dx9 game
running at height < 400 either.
D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE: The cap should
correspond to what the current generation of hw is doing.
Signed-off-by: Axel Davy <[email protected]>
Reviewed-by: Patrick Rudolph <[email protected]>
-rw-r--r-- | include/D3D9/d3d9caps.h | 3 | ||||
-rw-r--r-- | src/gallium/state_trackers/nine/adapter9.c | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/include/D3D9/d3d9caps.h b/include/D3D9/d3d9caps.h index 0cce5d3f689..70f9919c53d 100644 --- a/include/D3D9/d3d9caps.h +++ b/include/D3D9/d3d9caps.h @@ -26,6 +26,9 @@ #include "d3d9types.h" /* Caps flags */ +#define D3DCAPS_OVERLAY 0x00000800 +#define D3DCAPS_READ_SCANLINE 0x00020000 + #define D3DCAPS2_FULLSCREENGAMMA 0x00020000 #define D3DCAPS2_CANCALIBRATEGAMMA 0x00100000 #define D3DCAPS2_RESERVED 0x02000000 diff --git a/src/gallium/state_trackers/nine/adapter9.c b/src/gallium/state_trackers/nine/adapter9.c index 94a5d8d2aa3..3aa95b93b2f 100644 --- a/src/gallium/state_trackers/nine/adapter9.c +++ b/src/gallium/state_trackers/nine/adapter9.c @@ -545,7 +545,7 @@ NineAdapter9_GetDeviceCaps( struct NineAdapter9 *This, pCaps->AdapterOrdinal = 0; - pCaps->Caps = 0; + pCaps->Caps = D3DCAPS_READ_SCANLINE; pCaps->Caps2 = /* D3DCAPS2_CANMANAGERESOURCE | */ /* D3DCAPS2_CANSHARERESOURCE | */ @@ -568,7 +568,7 @@ NineAdapter9_GetDeviceCaps( struct NineAdapter9 *This, D3DPRESENT_INTERVAL_THREE | D3DPRESENT_INTERVAL_FOUR | D3DPRESENT_INTERVAL_IMMEDIATE; - pCaps->CursorCaps = D3DCURSORCAPS_COLOR | D3DCURSORCAPS_LOWRES; + pCaps->CursorCaps = D3DCURSORCAPS_COLOR /* | D3DCURSORCAPS_LOWRES*/; pCaps->DevCaps = D3DDEVCAPS_CANBLTSYSTONONLOCAL | D3DDEVCAPS_CANRENDERAFTERFLIP | @@ -678,7 +678,7 @@ NineAdapter9_GetDeviceCaps( struct NineAdapter9 *This, D3DPTEXTURECAPS_ALPHAPALETTE | D3DPTEXTURECAPS_PERSPECTIVE | D3DPTEXTURECAPS_PROJECTED | - /*D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE |*/ + D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE | D3DPTEXTURECAPS_CUBEMAP | D3DPTEXTURECAPS_VOLUMEMAP | D3DNPIPECAP(NPOT_TEXTURES, D3DPTEXTURECAPS_POW2) | |