https://bugs.kde.org/show_bug.cgi?id=390698

Fredrik Höglund <fred...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |fred...@kde.org

--- Comment #12 from Fredrik Höglund <fred...@kde.org> ---
I have also been thinking about this problem, and here is how I would solve it:

Multisample rendering is enabled by effects in prePaintScreen() by setting a
new PAINT_SCREEN_MULTISAMPLE flag. When this flag is set, the scene creates a
multisample render target and a pushes it to the render target stack in
finalPaintScreen(). At the end of painting, the scene resolves the render
target by blitting it to the backbuffer.

When a window has a complex transformation, it is first rendered untransformed
on the base level of an offscreen mipmap texture. Miplevels > 0 are then
generated - preferably using a higher quality filter than the default. The
texture is then drawn on the framebuffer using an anisotropic texture filter.
To draw the texture, a new quad type is needed - WindowQuadCombined. This quad
type is effectively the union of the shadow, decoration and content quads. This
is the only quad type that should be transformed by effects such as wobbly
windows.

This new quad type and method of rendering is coincidentally also what is
needed to make wayland subsurfaces conformant.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to