Giovanni Mascellani (@giomasce) commented about libs/vkd3d/resource.c:
- vk_range->pNext = NULL;
- vk_range->memory = resource->heap->vk_memory;
- vk_range->offset = resource->heap_offset + offset;
- vk_range->size = size;
+}
+static void d3d12_resource_invalidate(struct d3d12_resource *resource, uint64_t offset, uint64_t size) +{
- const struct vkd3d_vk_device_procs *vk_procs = &resource->device->vk_procs;
- VkMappedMemoryRange vk_range;
- if (d3d12_heap_get_memory_property_flags(resource->heap) & VK_MEMORY_PROPERTY_HOST_COHERENT_BIT)
return;
- d3d12_resource_get_vk_range(resource, offset, size, &vk_range);
- VK_CALL(vkInvalidateMappedMemoryRanges(resource->device->vk_device, 1, &vk_range));
Please check the returned value.