Jan Sikorski (@jsikorski) commented about dlls/wined3d/context_vk.c:
}
- vk_topology = vk_topology_from_wined3d(state->primitive_type);
- if (key->ia_desc.topology != vk_topology)
- if (vk_info->dynamic_state2) {
key->ia_desc.topology = vk_topology;
key->ia_desc.primitiveRestartEnable = !(d3d_info->wined3d_creation_flags & WINED3D_NO_PRIMITIVE_RESTART)
&& !wined3d_primitive_type_is_list(state->primitive_type);
vk_topology = vk_topology_class_from_wined3d(state->primitive_type);
if (key->ia_desc.topology != vk_topology)
{
key->ia_desc.topology = vk_topology;
update = true;
}
- }
I've got a couple questions here. Isn't VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT provided by extended dynamic state 1? Why put it under 2? (I may be forgetting why it wasn't included previously?) Why are we setting `key->ia_desc.topology` and `update` here, was that not supposed to be dynamic? It looks like this patch is only for dynamic primitive restart.