wined3d: Track WINED3D_GL_NORMALIZED_TEXRECT in struct wined3d_d3d_info as well.

This commit is contained in:
Zebediah Figura 2023-01-06 13:37:40 -06:00 committed by Alexandre Julliard
parent 6b0984dc3f
commit 1cab38b6ae
4 changed files with 4 additions and 3 deletions

View file

@ -5215,6 +5215,7 @@ static void wined3d_adapter_gl_init_d3d_info(struct wined3d_adapter_gl *adapter_
d3d_info->texture_npot = !!gl_info->supported[ARB_TEXTURE_NON_POWER_OF_TWO];
d3d_info->texture_npot_conditional = gl_info->supported[WINED3D_GL_NORMALIZED_TEXRECT]
|| gl_info->supported[ARB_TEXTURE_RECTANGLE];
d3d_info->normalized_texrect = gl_info->supported[WINED3D_GL_NORMALIZED_TEXRECT];
d3d_info->draw_base_vertex_offset = !!gl_info->supported[ARB_DRAW_ELEMENTS_BASE_VERTEX];
d3d_info->vertex_bgra = !!gl_info->supported[ARB_VERTEX_ARRAY_BGRA];
d3d_info->texture_swizzle = !!gl_info->supported[ARB_TEXTURE_SWIZZLE];

View file

@ -2330,6 +2330,7 @@ static void wined3d_adapter_vk_init_d3d_info(struct wined3d_adapter_vk *adapter_
d3d_info->viewport_array_index_any_shader = false; /* VK_EXT_shader_viewport_index_layer */
d3d_info->texture_npot = true;
d3d_info->texture_npot_conditional = true;
d3d_info->normalized_texrect = false;
d3d_info->draw_base_vertex_offset = true;
d3d_info->vertex_bgra = true;
d3d_info->texture_swizzle = true;

View file

@ -60,7 +60,6 @@ HRESULT resource_init(struct wined3d_resource *resource, struct wined3d_device *
const struct wined3d_d3d_info *d3d_info = &device->adapter->d3d_info;
enum wined3d_gl_resource_type base_type = WINED3D_GL_RES_TYPE_COUNT;
enum wined3d_gl_resource_type gl_type = WINED3D_GL_RES_TYPE_COUNT;
const struct wined3d_gl_info *gl_info = &device->adapter->gl_info;
BOOL tex_2d_ok = FALSE;
unsigned int i;
@ -143,8 +142,7 @@ HRESULT resource_init(struct wined3d_resource *resource, struct wined3d_device *
continue;
}
if (((width & (width - 1)) || (height & (height - 1)))
&& !d3d_info->texture_npot
&& !gl_info->supported[WINED3D_GL_NORMALIZED_TEXRECT]
&& !d3d_info->texture_npot && !d3d_info->normalized_texrect
&& gl_type == WINED3D_GL_RES_TYPE_TEX_2D)
{
TRACE("Skipping 2D texture type to try texture rectangle.\n");

View file

@ -248,6 +248,7 @@ struct wined3d_d3d_info
uint32_t viewport_array_index_any_shader : 1;
uint32_t texture_npot : 1;
uint32_t texture_npot_conditional : 1;
uint32_t normalized_texrect : 1;
uint32_t draw_base_vertex_offset : 1;
uint32_t vertex_bgra : 1;
uint32_t texture_swizzle : 1;