Robert Bragg 3183240fef Provide stable paint-boxes for fixed sized actors
This updates _clutter_paint_volume_get_stage_paint_box to try and
calculate more stable paint-box sizes for fixed sized paint-volumes by
not basing the size on the volume's sub-pixel position.

So the aim is that for a given rectangle defined with floating point
coordinates we want to determine a stable quantized size in pixels that
doesn't vary due to the original box's sub-pixel position.

The reason this is important is because effects will use this API to
determine the size of offscreen framebuffers and so for a fixed-size
object that may be animated across the screen we want to make sure that
the stage paint-box has an equally stable size so that effects aren't
made to continuously re-allocate a corresponding fbo.

The other thing we consider is that the calculation of this box is
subject to floating point precision issues that might be slightly
different to the precision issues involved with actually painting the
actor, which might result in painting slightly leaking outside the
user's calculated paint-volume. This patch now adds padding to consider
this too.

Signed-off-by: Neil Roberts <neil@linux.intel.com>
Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
2011-07-14 13:54:12 +01:00
..
2011-04-18 16:24:27 +01:00
2011-07-13 19:33:11 +01:00
2011-05-06 15:44:08 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2010-10-18 11:26:44 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2010-03-02 11:12:32 +00:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2010-10-21 12:22:17 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-20 15:25:53 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2010-10-21 12:22:17 +01:00
2011-07-08 12:01:08 +01:00
2011-07-08 12:01:08 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-10 15:15:15 +01:00
2011-06-20 14:26:57 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2011-06-07 16:06:24 +01:00
2010-03-02 11:12:32 +00:00
2011-06-20 15:25:53 +01:00