gpu: Run full check for every clip rect

Now that we can specify the min size for an occlusion pass, we can
specify that we want the full clip rect to be occluded for occlusion to
trigger.

The benefit of this is that for partial redraws we almost
always get the background color to cover the redrawn rectangle, so
occlusion will kick in.
This commit is contained in:
Benjamin Otte
2024-08-05 07:11:54 +02:00
parent ac37b589b6
commit 55597d88a4

View File

@@ -4125,13 +4125,20 @@ gsk_gpu_node_processor_render (GskGpuFrame *frame,
&rect,
viewport);
gsk_gpu_render_pass_begin_op (frame,
target,
&rect,
GSK_VEC4_TRANSPARENT,
pass_type);
if (!gsk_gpu_node_processor_add_first_node (&self,
target,
pass_type,
rect.width * rect.height,
node))
{
gsk_gpu_render_pass_begin_op (frame,
target,
&rect,
GSK_VEC4_TRANSPARENT,
pass_type);
gsk_gpu_node_processor_add_node (&self, node);
gsk_gpu_node_processor_add_node (&self, node);
}
gsk_gpu_render_pass_end_op (frame,
target,