[PATCH v2 3/5] d3d9: Handle multisample depth resolve in d3d9_device_SetRenderState().

Henri Verbeet hverbeet at gmail.com
Thu Dec 12 07:44:27 CST 2019


On Wed, 11 Dec 2019 at 07:16, Zebediah Figura <z.figura12 at gmail.com> wrote:
> @@ -289,8 +289,18 @@ static HRESULT WINAPI d3d9_CheckDeviceFormat(IDirect3D9Ex *iface, UINT adapter,
>      }
>
>      wined3d_mutex_lock();
> -    hr = wined3d_check_device_format(d3d9->wined3d, adapter, device_type, wined3dformat_from_d3dformat(adapter_format),
> -            usage, bind_flags, wined3d_rtype, wined3dformat_from_d3dformat(format));
> +    if ((enum wined3d_format_id)format == WINED3DFMT_RESZ)
> +    {
> +        DWORD levels;
> +        hr = wined3d_check_device_multisample_type(d3d9->wined3d, adapter, device_type,
> +                WINED3DFMT_D24_UNORM_S8_UINT, FALSE, WINED3D_MULTISAMPLE_NONE, &levels);
Did you intend to use WINED3D_MULTISAMPLE_NON_MASKABLE here?

It seems a little superfluous to export
wined3d_device_resolve_depth_buffer(); the implementation on top of
wined3d_device_resolve_sub_resource() wasn't that complicated.



More information about the wine-devel mailing list