kwin/libkwineffects
Alex Nemeth 0179f741bb Updated the blur method to use the more efficient dual kawase blur algorithm.
Summary:
Updated the old and outdated blur method to use the much more efficient dual kawase blur method.
Now with this we can do virtually infinite blur with very very little performance cost.
The dual kawase blur method is basically downscaling and upscaling an image, but combined with the kawase blur shader.
Comparison: https://i.imgur.com/mh6Cw61.png
Left is old, right is new.
Comparison was done with the strongest blur setting in a VM running on an Intel i7-4790 and a GTX980
We can see here that the performance is even better with this new method.

Reviewers: #plasma, #kwin, graesslin, fredrik

Reviewed By: fredrik

Subscribers: hein, dos, luebking, broulik, romangg, zzag, anthonyfieroni, mart, davidedmundson, fredrik, ngraham, plasma-devel, kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D9848
2018-01-26 02:31:45 +09:00
..
CMakeLists.txt [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
Mainpage.dox Move kwineffects library into own directory 2011-02-19 10:01:31 +01:00
Messages.sh Improve message extraction 2011-02-20 16:02:33 +01:00
anidata.cpp optimize string operations 2015-11-05 14:14:06 +00:00
anidata_p.h use a global static for animation ids 2016-03-23 12:03:31 +01:00
kwinanimationeffect.cpp use a global static for animation ids 2016-03-23 12:03:31 +01:00
kwinanimationeffect.h allow to retarget animations 2016-02-16 13:59:22 +01:00
kwinconfig.h.cmake Move linking to DL_LIBRARY to x11standalone platform 2016-11-22 14:22:06 +01:00
kwineffects.cpp [PaintClipper::Iterator] Operate on QRegion instead of QVector of rects 2017-12-03 16:14:53 +01:00
kwineffects.h Fix build with a KWindowSystem framework that doesn't pull QWidget 2017-11-17 17:30:58 +01:00
kwinglobals.h Deprecate global KWin::displayWidth and KWin::displayHeight 2017-09-01 21:37:42 +02:00
kwinglplatform.cpp Properly detect Gallium drivers with newer Mesa 2018-01-12 09:05:03 +01:00
kwinglplatform.h [libkwineffects] Add detection code for Qualcomm Adreno to GLPlatform 2016-08-12 09:59:38 +02:00
kwingltexture.cpp [kwinglutils] Don't setup old shader API for rendering a texture 2016-01-25 14:11:54 +01:00
kwingltexture.h [libkwineffects] Fix includes in kwingltexture.h 2016-08-08 15:46:25 +02:00
kwingltexture_p.h [libkwineffects] Try fixing compile error with clang 2017-10-01 09:54:12 +02:00
kwinglutils.cpp Updated the blur method to use the more efficient dual kawase blur algorithm. 2018-01-26 02:31:45 +09:00
kwinglutils.h Updated the blur method to use the more efficient dual kawase blur algorithm. 2018-01-26 02:31:45 +09:00
kwinglutils_funcs.cpp [kwinglutils] Drop eglResolveFunctions 2016-11-17 12:59:48 +01:00
kwinglutils_funcs.h Remove epoxy/egl.h from kwinglutils_func.h 2016-11-22 14:21:40 +01:00
kwinxrenderutils.cpp [libkwinxrenderutils] Clean up static blend picture before going down 2016-06-13 15:29:07 +02:00
kwinxrenderutils.h [libkwinxrenderutils] Clean up static blend picture before going down 2016-06-13 15:29:07 +02:00
logging.cpp pedantic fixes 2016-07-16 13:14:44 -04:00
logging_p.h pedantic fixes 2016-07-16 13:14:44 -04:00