50 lines
1.4 KiB
Kotlin
50 lines
1.4 KiB
Kotlin
@file:Suppress("RUNTIME_ANNOTATION_NOT_SUPPORTED")
|
|
|
|
package org.openrndr.extra.fx.distort
|
|
|
|
import org.openrndr.draw.Filter1to1
|
|
import org.openrndr.extra.fx.fx_video_glitch
|
|
import org.openrndr.extra.fx.mppFilterShader
|
|
import org.openrndr.extra.parameters.BooleanParameter
|
|
import org.openrndr.extra.parameters.Description
|
|
import org.openrndr.extra.parameters.DoubleParameter
|
|
|
|
@Description("Video glitch")
|
|
class VideoGlitch : Filter1to1(mppFilterShader(fx_video_glitch, "video-glitch")) {
|
|
var time: Double by parameters
|
|
|
|
@DoubleParameter("amplitude", 0.0, 10.0)
|
|
var amplitude: Double by parameters
|
|
|
|
@DoubleParameter("border height", 0.0, 0.5)
|
|
var borderHeight: Double by parameters
|
|
|
|
@DoubleParameter("vertical frequency", 0.0, 10.0)
|
|
var vfreq: Double by parameters
|
|
|
|
@DoubleParameter("horizontal frequency", 0.0, 80.0)
|
|
var hfreq: Double by parameters
|
|
|
|
@DoubleParameter("p frequency", 0.0, 10.0)
|
|
var pfreq: Double by parameters
|
|
|
|
@DoubleParameter("p offset", -1.0, 1.0)
|
|
var poffset: Double by parameters
|
|
|
|
@DoubleParameter("scroll offset 0", 0.0, 1.0)
|
|
var scrollOffset0: Double by parameters
|
|
|
|
@DoubleParameter("scroll offset 1", 0.0, 1.0)
|
|
var scrollOffset1: Double by parameters
|
|
|
|
init {
|
|
amplitude = 1.0
|
|
vfreq = 4.0
|
|
pfreq = 10.0
|
|
hfreq = 80.0
|
|
poffset = 0.0
|
|
scrollOffset0 = 0.0
|
|
scrollOffset1 = 0.0
|
|
borderHeight = 0.05
|
|
}
|
|
} |