From 7047adf43b38349222e1c898e64dc6513148e4fe Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 17 Feb 2021 15:08:12 -0600 Subject: [PATCH] anv/formats: Advertise linear sampling on depth formats They've all supported it since either forever or Iron Lake which is equivalent to forever for Vulkan. From Kenneth Graunke's GitLab review: "Linear blending of depth buffer data is usually fairly nonsense (something's 2 meters away? another thing's 6 meters away? let's just report 4 meters?)...but it's definitely a thing we can do, so we may as well let apps do it, and trust them not when it doesn't make sense." Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Eric Anholt Reviewed-by: Kenneth Graunke Part-of: (cherry picked from commit 56d005c21c1e679c62214e89497766d097da6f38) --- .pick_status.json | 2 +- src/intel/vulkan/anv_formats.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index 6d8430081e2..10112b08f52 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -301,7 +301,7 @@ "description": "anv/formats: Advertise linear sampling on depth formats", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": null }, diff --git a/src/intel/vulkan/anv_formats.c b/src/intel/vulkan/anv_formats.c index 8615b4202d5..33ca701ae9e 100644 --- a/src/intel/vulkan/anv_formats.c +++ b/src/intel/vulkan/anv_formats.c @@ -571,6 +571,9 @@ anv_get_image_format_features(const struct gen_device_info *devinfo, VK_FORMAT_FEATURE_TRANSFER_SRC_BIT | VK_FORMAT_FEATURE_TRANSFER_DST_BIT; + if (aspects & VK_IMAGE_ASPECT_DEPTH_BIT) + flags |= VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT; + if ((aspects & VK_IMAGE_ASPECT_DEPTH_BIT) && devinfo->gen >= 9) flags |= VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT;