kwineffects: Introduce DeformEffect
DeformEffect is the base class for effects that transform the window quad grid, e.g. wobbly windows or magic lamp. The main difference between normal effects and offscreen effects is that the latter renders animated windows into offscreen textures which are later deformed.
The offscreen texture approach is superior to the half-pixel correction approach as it produces more visually appealing results. Even with half-pixel correction, you're still going to see jagged lines between the main surface and the server-side decoration or drop-shadow.
It is also needed to reduce the number of usages of WindowPaintData::quads which is needed to move forward with the scene redesign goal.
cc #30
Edited by Vlad Zahorodnii