From: Józef Kucia Subject: [PATCH 3/6] wined3d: Add remaining feature levels. Message-Id: <20180923230933.7977-3-jkucia@codeweavers.com> Date: Mon, 24 Sep 2018 01:09:30 +0200 We still don't have proper and exhaustive checks for feature levels capabilities. Signed-off-by: Józef Kucia --- dlls/dxgi/utils.c | 6 +++--- dlls/wined3d/adapter_gl.c | 6 +++++- include/wine/wined3d.h | 3 +++ 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/dlls/dxgi/utils.c b/dlls/dxgi/utils.c index e857a1f090f5..009d351f633f 100644 --- a/dlls/dxgi/utils.c +++ b/dlls/dxgi/utils.c @@ -626,11 +626,11 @@ static enum wined3d_feature_level wined3d_feature_level_from_d3d(D3D_FEATURE_LEV switch (feature_level) { case D3D_FEATURE_LEVEL_11_1: - return WINED3D_FEATURE_LEVEL_11; + return WINED3D_FEATURE_LEVEL_11_1; case D3D_FEATURE_LEVEL_11_0: return WINED3D_FEATURE_LEVEL_11; case D3D_FEATURE_LEVEL_10_1: - return WINED3D_FEATURE_LEVEL_10; + return WINED3D_FEATURE_LEVEL_10_1; case D3D_FEATURE_LEVEL_10_0: return WINED3D_FEATURE_LEVEL_10; case D3D_FEATURE_LEVEL_9_3: @@ -638,7 +638,7 @@ static enum wined3d_feature_level wined3d_feature_level_from_d3d(D3D_FEATURE_LEV case D3D_FEATURE_LEVEL_9_2: return WINED3D_FEATURE_LEVEL_9_SM2; case D3D_FEATURE_LEVEL_9_1: - return WINED3D_FEATURE_LEVEL_9_SM2; + return WINED3D_FEATURE_LEVEL_9_1; default: FIXME("Unhandled feature level %#x.\n", feature_level); return 0; diff --git a/dlls/wined3d/adapter_gl.c b/dlls/wined3d/adapter_gl.c index 0ee71fd63df5..1d360d104bf8 100644 --- a/dlls/wined3d/adapter_gl.c +++ b/dlls/wined3d/adapter_gl.c @@ -1256,10 +1256,14 @@ static enum wined3d_feature_level feature_level_from_caps(const struct wined3d_g if (shader_model >= 5 && gl_info->supported[ARB_DRAW_INDIRECT] && gl_info->supported[ARB_TEXTURE_COMPRESSION_BPTC]) - return WINED3D_FEATURE_LEVEL_11; + return WINED3D_FEATURE_LEVEL_11_1; if (shader_model >= 4) + { + if (gl_info->supported[ARB_TEXTURE_CUBE_MAP_ARRAY]) + return WINED3D_FEATURE_LEVEL_10_1; return WINED3D_FEATURE_LEVEL_10; + } } if (shader_model >= 3) diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h index 3c01f755d869..17b0fd4c456d 100644 --- a/include/wine/wined3d.h +++ b/include/wine/wined3d.h @@ -95,10 +95,13 @@ enum wined3d_feature_level WINED3D_FEATURE_LEVEL_6 = 0x6000, WINED3D_FEATURE_LEVEL_7 = 0x7000, WINED3D_FEATURE_LEVEL_8 = 0x8000, + WINED3D_FEATURE_LEVEL_9_1 = 0x9100, WINED3D_FEATURE_LEVEL_9_SM2 = 0x9200, WINED3D_FEATURE_LEVEL_9_SM3 = 0x9300, WINED3D_FEATURE_LEVEL_10 = 0xa000, + WINED3D_FEATURE_LEVEL_10_1 = 0xa100, WINED3D_FEATURE_LEVEL_11 = 0xb000, + WINED3D_FEATURE_LEVEL_11_1 = 0xb100, }; enum wined3d_degree_type -- 2.16.4