🎉 Add initial kwin version of the glitch effect
This commit is contained in:
+1
-5
@@ -123,16 +123,12 @@ generate() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Now run the above method for all supported effects.
|
# Now run the above method for all supported effects.
|
||||||
|
|
||||||
# The apparition effect is disabled for now. I have not yet found a way to upscale the
|
|
||||||
# window canvas during the animation.
|
|
||||||
#generate "apparition" "[BMW] Apparition" "This effect hides your windows by violently sucking them into the void of magic"
|
|
||||||
|
|
||||||
generate "energize-a" "Energize A [Burn-My-Windows]" "Beam your windows away"
|
generate "energize-a" "Energize A [Burn-My-Windows]" "Beam your windows away"
|
||||||
generate "energize-b" "Energize B [Burn-My-Windows]" "Using different transporter technology results in an alternative visual effect"
|
generate "energize-b" "Energize B [Burn-My-Windows]" "Using different transporter technology results in an alternative visual effect"
|
||||||
generate "doom" "Doom [Burn-My-Windows]" "Melt your windows"
|
generate "doom" "Doom [Burn-My-Windows]" "Melt your windows"
|
||||||
generate "fire" "Fire [Burn-My-Windows]" "The classic effect inspired by Compiz"
|
generate "fire" "Fire [Burn-My-Windows]" "The classic effect inspired by Compiz"
|
||||||
generate "glide" "Glide [Burn-My-Windows]" "Fade the window to transparency with subtle 3D effects"
|
generate "glide" "Glide [Burn-My-Windows]" "Fade the window to transparency with subtle 3D effects"
|
||||||
|
generate "glitch" "Glitch [Burn-My-Windows]" "This effect applies some intentional graphics issues to your windows"
|
||||||
generate "hexagon" "Hexagon [Burn-My-Windows]" "With glowing lines and hexagon-shaped tiles, this effect looks very sci-fi"
|
generate "hexagon" "Hexagon [Burn-My-Windows]" "With glowing lines and hexagon-shaped tiles, this effect looks very sci-fi"
|
||||||
generate "incinerate" "Incinerate [Burn-My-Windows]" "A less snappy but definitely more fancy take on the fire effect"
|
generate "incinerate" "Incinerate [Burn-My-Windows]" "A less snappy but definitely more fancy take on the fire effect"
|
||||||
generate "pixelate" "Pixelate [Burn-My-Windows]" "Pixelate the window and randomly hide the pixels"
|
generate "pixelate" "Pixelate [Burn-My-Windows]" "Pixelate the window and randomly hide the pixels"
|
||||||
|
|||||||
Executable
+100
@@ -0,0 +1,100 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||||
|
SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
-->
|
||||||
|
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>BMWConfigForm</class>
|
||||||
|
<widget class="QWidget" name="BMWConfigForm">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>562</width>
|
||||||
|
<height>365</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="label">
|
||||||
|
<property name="text">
|
||||||
|
<string>Duration:</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="label_2">
|
||||||
|
<property name="text">
|
||||||
|
<string>Color:</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>kcfg_Color</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="KColorButton" name="kcfg_Color">
|
||||||
|
<property name="alphaChannelEnabled">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="0">
|
||||||
|
<widget class="QLabel" name="label_3">
|
||||||
|
<property name="text">
|
||||||
|
<string>Scale:</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>kcfg_Color</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="1">
|
||||||
|
<widget class="QDoubleSpinBox" name="kcfg_Scale">
|
||||||
|
<property name="minimum">
|
||||||
|
<double>0.100000000000000</double>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<double>10.000000000000000</double>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QSpinBox" name="kcfg_Duration">
|
||||||
|
<property name="suffix">
|
||||||
|
<string> milliseconds</string>
|
||||||
|
</property>
|
||||||
|
<property name="minimum">
|
||||||
|
<number>100</number>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>9999</number>
|
||||||
|
</property>
|
||||||
|
<property name="singleStep">
|
||||||
|
<number>100</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<customwidgets>
|
||||||
|
<customwidget>
|
||||||
|
<class>KColorButton</class>
|
||||||
|
<extends>QPushButton</extends>
|
||||||
|
<header>kcolorbutton.h</header>
|
||||||
|
</customwidget>
|
||||||
|
</customwidgets>
|
||||||
|
<resources />
|
||||||
|
<connections />
|
||||||
|
</ui>
|
||||||
Executable
+28
@@ -0,0 +1,28 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||||
|
SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
-->
|
||||||
|
|
||||||
|
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
|
||||||
|
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
|
||||||
|
<kcfgfile name="" />
|
||||||
|
<group name="">
|
||||||
|
<entry name="Duration" type="UInt">
|
||||||
|
<default>2000</default>
|
||||||
|
</entry>
|
||||||
|
<entry name="Scale" type="Double">
|
||||||
|
<default>1</default>
|
||||||
|
</entry>
|
||||||
|
<entry name="Strength" type="Double">
|
||||||
|
<default>2</default>
|
||||||
|
</entry>
|
||||||
|
<entry name="Speed" type="Double">
|
||||||
|
<default>2</default>
|
||||||
|
</entry>
|
||||||
|
<entry name="Color" type="Color">
|
||||||
|
<default>#64A0FF</default>
|
||||||
|
</entry>
|
||||||
|
</group>
|
||||||
|
</kcfg>
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
// SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||||
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
// This part is automatically included in the effect's source during the build process.
|
||||||
|
// The code below is called whenever a window is closed or opened.
|
||||||
|
|
||||||
|
effect.setUniform(this.shader, 'uSeed', Math.random());
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
// SPDX-FileCopyrightText: Simon Schneegans <code@simonschneegans.de>
|
||||||
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
// This part is automatically included in the effect's source during the build process.
|
||||||
|
// The code below is called whenever the user changes something in the configuration of
|
||||||
|
// the effect.
|
||||||
|
|
||||||
|
effect.setUniform(this.shader, 'uDuration', this.duration * 0.001);
|
||||||
|
effect.setUniform(this.shader, 'uScale', effect.readConfig('Scale', 1.0));
|
||||||
|
effect.setUniform(this.shader, 'uStrength', effect.readConfig('Strength', 1.0));
|
||||||
|
effect.setUniform(this.shader, 'uSpeed', effect.readConfig('Speed', 1.0));
|
||||||
|
effect.setUniform(this.shader, 'uColor', this.readRGBConfig('Color'));
|
||||||
Reference in New Issue
Block a user