rsx: Only request attribute interpolation if the GPU requires it and the driver supports it

This commit is contained in:
kd-11 2022-12-10 18:44:25 +03:00 committed by kd-11
parent 9c0b2338cf
commit 6756bf7d4b

View file

@ -2156,9 +2156,12 @@ namespace rsx
current_fragment_program.two_sided_lighting = rsx::method_registers.two_side_light_en(); current_fragment_program.two_sided_lighting = rsx::method_registers.two_side_light_en();
if (method_registers.current_draw_clause.classify_mode() == primitive_class::polygon) if (method_registers.current_draw_clause.classify_mode() == primitive_class::polygon)
{
if (!backend_config.supports_normalized_barycentrics)
{ {
current_fragment_program.ctrl |= RSX_SHADER_CONTROL_ATTRIBUTE_INTERPOLATION; current_fragment_program.ctrl |= RSX_SHADER_CONTROL_ATTRIBUTE_INTERPOLATION;
} }
}
else if (method_registers.point_sprite_enabled() && else if (method_registers.point_sprite_enabled() &&
method_registers.current_draw_clause.primitive == primitive_type::points) method_registers.current_draw_clause.primitive == primitive_type::points)
{ {