On Fri, 10 Dec 2021 at 20:32, Zebediah Figura zfigura@codeweavers.com wrote:
This fixes a black screen in The Unfinished Swan.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com
v2: Set the format flag on the wined3d side.
dlls/d3d11/device.c | 1 + dlls/d3d11/tests/d3d11.c | 4 ++-- dlls/wined3d/directx.c | 5 ++++- dlls/wined3d/utils.c | 4 ++-- dlls/wined3d/wined3d_private.h | 1 + 5 files changed, 10 insertions(+), 5 deletions(-)
Like the previous patch in the series, this causes issues in the corresponding d3d10core tests.
@@ -1673,7 +1673,7 @@ static const struct wined3d_format_texture_info format_texture_info[] = ARB_TEXTURE_RG, NULL}, {WINED3DFMT_R32_UINT, GL_R32UI, GL_R32UI, 0, GL_RED_INTEGER, GL_UNSIGNED_INT, 0,
WINED3DFMT_FLAG_TEXTURE | WINED3DFMT_FLAG_RENDERTARGET,
{WINED3DFMT_R32_SINT, GL_R32I, GL_R32I, 0, GL_RED_INTEGER, GL_INT, 0,WINED3DFMT_FLAG_TEXTURE | WINED3DFMT_FLAG_RENDERTARGET | WINED3DFMT_FLAG_INDEX_BUFFER, ARB_TEXTURE_RG, NULL},
@@ -1686,7 +1686,7 @@ static const struct wined3d_format_texture_info format_texture_info[] = ARB_TEXTURE_RG, NULL}, {WINED3DFMT_R16_UINT, GL_R16UI, GL_R16UI, 0, GL_RED_INTEGER, GL_UNSIGNED_SHORT, 0,
WINED3DFMT_FLAG_TEXTURE | WINED3DFMT_FLAG_RENDERTARGET,
{WINED3DFMT_R16_SINT, GL_R16I, GL_R16I, 0, GL_RED_INTEGER, GL_SHORT, 0,WINED3DFMT_FLAG_TEXTURE | WINED3DFMT_FLAG_RENDERTARGET | WINED3DFMT_FLAG_INDEX_BUFFER, ARB_TEXTURE_RG, NULL},
I think it's a little ugly to set this flag using the format_texture_info[] array. Using format_base_flags[] seems more appropriate, and would have the advantage of working with the Vulkan backend as well.