vk: Properly test MSAA sample mask when switching between states inside a RSX renderpass.

- Before, these changes would be lost if the same RTT config was used with varying mask setups
This commit is contained in:
kd-11 2019-09-17 15:44:03 +03:00 committed by kd-11
parent c900fb0d77
commit bd4d86f87a

View File

@ -40,6 +40,9 @@ namespace vk
{ {
if (memcmp(&state.ms, &other.state.ms, sizeof(VkPipelineMultisampleStateCreateInfo))) if (memcmp(&state.ms, &other.state.ms, sizeof(VkPipelineMultisampleStateCreateInfo)))
return false; return false;
if (state.temp_storage.msaa_sample_mask != other.state.temp_storage.msaa_sample_mask)
return false;
} }
return true; return true;
@ -57,6 +60,7 @@ namespace rpcs3
seed ^= hash_struct(pipelineProperties.state.ds); seed ^= hash_struct(pipelineProperties.state.ds);
seed ^= hash_struct(pipelineProperties.state.rs); seed ^= hash_struct(pipelineProperties.state.rs);
seed ^= hash_struct(pipelineProperties.state.ms); seed ^= hash_struct(pipelineProperties.state.ms);
seed ^= hash_base(pipelineProperties.state.temp_storage.msaa_sample_mask);
// Do not compare pointers to memory! // Do not compare pointers to memory!
VkPipelineColorBlendStateCreateInfo tmp; VkPipelineColorBlendStateCreateInfo tmp;