0179f741bb
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
46 lines
1.2 KiB
C++
Executable file
46 lines
1.2 KiB
C++
Executable file
/*
|
|
* Copyright © 2010 Fredrik Höglund <fredrik@kde.org>
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; see the file COPYING. if not, write to
|
|
* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
* Boston, MA 02110-1301, USA.
|
|
*/
|
|
|
|
#ifndef BLUR_CONFIG_H
|
|
#define BLUR_CONFIG_H
|
|
|
|
#include <KCModule>
|
|
#include "ui_blur_config.h"
|
|
|
|
namespace KWin
|
|
{
|
|
|
|
class BlurEffectConfig : public KCModule
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit BlurEffectConfig(QWidget *parent = 0, const QVariantList& args = QVariantList());
|
|
~BlurEffectConfig();
|
|
|
|
void save();
|
|
|
|
private:
|
|
::Ui::BlurEffectConfig ui;
|
|
};
|
|
|
|
} // namespace KWin
|
|
|
|
#endif
|
|
|