vkd3d: Add resolve mode argument to resolve helper.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
This commit is contained in:
Hans-Kristian Arntzen 2021-07-08 13:10:54 +02:00
parent 591d47a6c5
commit f3c3e53f7a
1 changed files with 9 additions and 2 deletions

View File

@ -6438,7 +6438,7 @@ static void STDMETHODCALLTYPE d3d12_command_list_CopyTiles(d3d12_command_list_if
static void d3d12_command_list_resolve_subresource(struct d3d12_command_list *list,
struct d3d12_resource *dst_resource, struct d3d12_resource *src_resource,
const VkImageResolve *resolve, DXGI_FORMAT format)
const VkImageResolve *resolve, DXGI_FORMAT format, D3D12_RESOLVE_MODE mode)
{
const struct vkd3d_vk_device_procs *vk_procs;
VkImageMemoryBarrier vk_image_barriers[2];
@ -6448,6 +6448,12 @@ static void d3d12_command_list_resolve_subresource(struct d3d12_command_list *li
bool writes_full_subresource;
unsigned int i;
if (mode != D3D12_RESOLVE_MODE_AVERAGE)
{
FIXME("Resolve mode %u is not yet supported.\n", mode);
return;
}
device = list->device;
vk_procs = &device->vk_procs;
d3d12_command_list_end_current_render_pass(list, false);
@ -6558,7 +6564,8 @@ static void STDMETHODCALLTYPE d3d12_command_list_ResolveSubresource(d3d12_comman
vk_extent_3d_from_d3d12_miplevel(&vk_image_resolve.extent,
&dst_resource->desc, vk_image_resolve.dstSubresource.mipLevel);
d3d12_command_list_resolve_subresource(list, dst_resource, src_resource, &vk_image_resolve, format);
d3d12_command_list_resolve_subresource(list, dst_resource, src_resource, &vk_image_resolve, format,
D3D12_RESOLVE_MODE_AVERAGE);
}
static void STDMETHODCALLTYPE d3d12_command_list_IASetPrimitiveTopology(d3d12_command_list_iface *iface,