[PATCH v3 2/6] wined3d: Add flag to indicate FETCH4 support in textures
Daniel Ansorregui
mailszeros at gmail.com
Sat Nov 24 14:13:33 CST 2018
Signed-off-by: Daniel Ansorregui <mailszeros at gmail.com>
---
dlls/wined3d/utils.c | 12 ++++++++++++
dlls/wined3d/wined3d_private.h | 1 +
2 files changed, 13 insertions(+)
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index aa68799535..0a401e8f18 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -340,6 +340,18 @@ static const struct wined3d_format_base_flags format_base_flags[] =
{WINED3DFMT_NULL, WINED3DFMT_FLAG_EXTENSION},
{WINED3DFMT_NVDB, WINED3DFMT_FLAG_EXTENSION},
{WINED3DFMT_RESZ, WINED3DFMT_FLAG_EXTENSION},
+ {WINED3DFMT_L8_UNORM, WINED3DFMT_FLAG_ALLOW_FETCH4},
+ {WINED3DFMT_L16_UNORM, WINED3DFMT_FLAG_ALLOW_FETCH4},
+ {WINED3DFMT_R16, WINED3DFMT_FLAG_ALLOW_FETCH4},
+ {WINED3DFMT_R32_FLOAT, WINED3DFMT_FLAG_ALLOW_FETCH4},
+
+ /* The formats below are not tested to be FETCH4 compatible on windows but
+ * the spec "hints" that depth formats are not recomended (but allowed) */
+ {WINED3DFMT_D16_LOCKABLE, WINED3DFMT_FLAG_ALLOW_FETCH4},
+ {WINED3DFMT_D16_UNORM, WINED3DFMT_FLAG_ALLOW_FETCH4},
+ {WINED3DFMT_D32_UNORM, WINED3DFMT_FLAG_ALLOW_FETCH4},
+ {WINED3DFMT_D32_FLOAT, WINED3DFMT_FLAG_ALLOW_FETCH4},
+ {WINED3DFMT_D24_UNORM_S8_UINT, WINED3DFMT_FLAG_ALLOW_FETCH4},
};
static void rgb888_from_rgb565(WORD rgb565, BYTE *r, BYTE *g, BYTE *b)
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index f908ff7173..af34f0ce44 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -4403,6 +4403,7 @@ extern enum wined3d_format_id pixelformat_for_depth(DWORD depth) DECLSPEC_HIDDEN
#define WINED3DFMT_FLAG_VERTEX_ATTRIBUTE 0x01000000
#define WINED3DFMT_FLAG_BLIT 0x02000000
#define WINED3DFMT_FLAG_MAPPABLE 0x04000000
+#define WINED3DFMT_FLAG_ALLOW_FETCH4 0x08000000
struct wined3d_rational
{
--
2.17.1
More information about the wine-devel
mailing list