wined3d: Add support for multisample textures in wined3d_texture_update_desc().
This might be called from wined3d_device_reset(). Signed-off-by: Józef Kucia <jkucia@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
2fd86a17bb
commit
7517d8c2e4
|
@ -1347,9 +1347,9 @@ HRESULT CDECL wined3d_texture_update_desc(struct wined3d_texture *texture, UINT
|
||||||
return WINED3DERR_INVALIDCALL;
|
return WINED3DERR_INVALIDCALL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (texture->resource.type == WINED3D_RTYPE_TEXTURE_3D)
|
if (texture->resource.type != WINED3D_RTYPE_TEXTURE_2D)
|
||||||
{
|
{
|
||||||
WARN("Not supported on 3D textures.\n");
|
WARN("Not supported on %s.\n", debug_d3dresourcetype(texture->resource.type));
|
||||||
return WINED3DERR_INVALIDCALL;
|
return WINED3DERR_INVALIDCALL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1403,6 +1403,12 @@ HRESULT CDECL wined3d_texture_update_desc(struct wined3d_texture *texture, UINT
|
||||||
sub_resource->size = texture->slice_pitch;
|
sub_resource->size = texture->slice_pitch;
|
||||||
sub_resource->locations = WINED3D_LOCATION_DISCARDED;
|
sub_resource->locations = WINED3D_LOCATION_DISCARDED;
|
||||||
|
|
||||||
|
if (multisample_type && gl_info->supported[ARB_TEXTURE_MULTISAMPLE])
|
||||||
|
texture->target = GL_TEXTURE_2D_MULTISAMPLE;
|
||||||
|
else
|
||||||
|
texture->target = GL_TEXTURE_2D;
|
||||||
|
texture->sub_resources[0].u.surface->texture_target = texture->target;
|
||||||
|
|
||||||
if (((width & (width - 1)) || (height & (height - 1))) && !gl_info->supported[ARB_TEXTURE_NON_POWER_OF_TWO]
|
if (((width & (width - 1)) || (height & (height - 1))) && !gl_info->supported[ARB_TEXTURE_NON_POWER_OF_TWO]
|
||||||
&& !gl_info->supported[ARB_TEXTURE_RECTANGLE] && !gl_info->supported[WINED3D_GL_NORMALIZED_TEXRECT])
|
&& !gl_info->supported[ARB_TEXTURE_RECTANGLE] && !gl_info->supported[WINED3D_GL_NORMALIZED_TEXRECT])
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue