mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 05:08:08 +02:00
anv: descriptors: don't update immutables samplers with anything but their immutable value
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
parent
bb96b03461
commit
494b63f525
1 changed files with 19 additions and 12 deletions
|
|
@ -587,8 +587,13 @@ void anv_UpdateDescriptorSets(
|
|||
switch (write->descriptorType) {
|
||||
case VK_DESCRIPTOR_TYPE_SAMPLER:
|
||||
for (uint32_t j = 0; j < write->descriptorCount; j++) {
|
||||
ANV_FROM_HANDLE(anv_sampler, sampler,
|
||||
write->pImageInfo[j].sampler);
|
||||
/* If this descriptor has an immutable sampler, we don't want to
|
||||
* stomp on it.
|
||||
*/
|
||||
struct anv_sampler *sampler =
|
||||
bind_layout->immutable_samplers ?
|
||||
bind_layout->immutable_samplers[j] :
|
||||
anv_sampler_from_handle(write->pImageInfo[j].sampler);
|
||||
|
||||
desc[j] = (struct anv_descriptor) {
|
||||
.type = VK_DESCRIPTOR_TYPE_SAMPLER,
|
||||
|
|
@ -601,17 +606,19 @@ void anv_UpdateDescriptorSets(
|
|||
for (uint32_t j = 0; j < write->descriptorCount; j++) {
|
||||
ANV_FROM_HANDLE(anv_image_view, iview,
|
||||
write->pImageInfo[j].imageView);
|
||||
ANV_FROM_HANDLE(anv_sampler, sampler,
|
||||
write->pImageInfo[j].sampler);
|
||||
|
||||
desc[j].type = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER;
|
||||
desc[j].image_view = iview;
|
||||
|
||||
/* If this descriptor has an immutable sampler, we don't want
|
||||
* to stomp on it.
|
||||
/* If this descriptor has an immutable sampler, we don't want to
|
||||
* stomp on it.
|
||||
*/
|
||||
if (sampler)
|
||||
desc[j].sampler = sampler;
|
||||
struct anv_sampler *sampler =
|
||||
bind_layout->immutable_samplers ?
|
||||
bind_layout->immutable_samplers[j] :
|
||||
anv_sampler_from_handle(write->pImageInfo[j].sampler);
|
||||
|
||||
desc[j] = (struct anv_descriptor) {
|
||||
.type = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
|
||||
.image_view = iview,
|
||||
.sampler = sampler,
|
||||
};
|
||||
}
|
||||
break;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue