Upgrade to OPENRNDR 0.3.40, fix Filters, better default paths for orx-gui

This commit is contained in:
Edwin Jakobs
2020-03-27 19:12:14 +01:00
parent 46d48cd07b
commit 7ea41ddd59
43 changed files with 154 additions and 153 deletions

View File

@@ -7,9 +7,9 @@ import java.net.URL
internal class FilterTools
internal fun filterFragmentCode(resourceId: String): String {
val urlString = resourceUrl("gl3/$resourceId", FilterTools::class.java)
return URL(urlString).readText()
internal fun filterFragmentUrl(resourceId: String): String {
return resourceUrl("gl3/$resourceId", FilterTools::class.java)
}
internal data class ColorBufferDescription(val width: Int, val height: Int, val contentScale: Double, val format: ColorFormat, val type: ColorType)

View File

@@ -1,8 +1,8 @@
package org.openrndr.extra.fx.antialias
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@@ -10,7 +10,7 @@ import org.openrndr.extra.parameters.DoubleParameter
* FXAA approximate antialiasing filter. Only works on LDR inputs
*/
@Description("FXAA")
class FXAA : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("antialias/fxaa.frag"))) {
class FXAA : Filter(filterShaderFromUrl(filterFragmentUrl("antialias/fxaa.frag"))) {
/**
* luma threshold, default value is 0.5
*/

View File

@@ -1,11 +1,11 @@
package org.openrndr.extra.fx.blend
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.BooleanParameter
class ColorBurn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/color-burn.frag"))) {
class ColorBurn : Filter(filterShaderFromUrl(filterFragmentUrl("blend/color-burn.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -14,7 +14,7 @@ class ColorBurn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFr
}
}
class ColorDodge : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/color-dodge.frag"))) {
class ColorDodge : Filter(filterShaderFromUrl(filterFragmentUrl("blend/color-dodge.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -23,7 +23,7 @@ class ColorDodge : Filter(Shader.createFromCode(Filter.filterVertexCode, filterF
}
}
class Darken : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/darken.frag"))) {
class Darken : Filter(filterShaderFromUrl(filterFragmentUrl("blend/darken.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -32,7 +32,7 @@ class Darken : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragm
}
}
class HardLight : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/hard-light.frag"))) {
class HardLight : Filter(filterShaderFromUrl(filterFragmentUrl("blend/hard-light.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -41,7 +41,7 @@ class HardLight : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFr
}
}
class Lighten : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/lighten.frag"))) {
class Lighten : Filter(filterShaderFromUrl(filterFragmentUrl("blend/lighten.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -50,7 +50,7 @@ class Lighten : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFrag
}
}
class Multiply : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/multiply.frag"))) {
class Multiply : Filter(filterShaderFromUrl(filterFragmentUrl("blend/multiply.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -59,7 +59,7 @@ class Multiply : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFra
}
}
class Normal : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/normal.frag"))) {
class Normal : Filter(filterShaderFromUrl(filterFragmentUrl("blend/normal.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -68,7 +68,7 @@ class Normal : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragm
}
}
class Overlay : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/overlay.frag"))) {
class Overlay : Filter(filterShaderFromUrl(filterFragmentUrl("blend/overlay.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -77,7 +77,7 @@ class Overlay : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFrag
}
}
class Screen : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/screen.frag"))) {
class Screen : Filter(filterShaderFromUrl(filterFragmentUrl("blend/screen.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -87,18 +87,18 @@ class Screen : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragm
}
class SourceIn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/source-in.frag")))
class SourceOut : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/source-out.frag")))
class SourceAtop : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/source-atop.frag")))
class DestinationIn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/destination-in.frag")))
class DestinationOut : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/destination-out.frag")))
class DestinationAtop : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/destination-atop.frag")))
class Xor : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/xor.frag")))
class SourceIn : Filter(filterShaderFromUrl(filterFragmentUrl("blend/source-in.frag")))
class SourceOut : Filter(filterShaderFromUrl(filterFragmentUrl("blend/source-out.frag")))
class SourceAtop : Filter(filterShaderFromUrl(filterFragmentUrl("blend/source-atop.frag")))
class DestinationIn : Filter(filterShaderFromUrl(filterFragmentUrl("blend/destination-in.frag")))
class DestinationOut : Filter(filterShaderFromUrl(filterFragmentUrl("blend/destination-out.frag")))
class DestinationAtop : Filter(filterShaderFromUrl(filterFragmentUrl("blend/destination-atop.frag")))
class Xor : Filter(filterShaderFromUrl(filterFragmentUrl("blend/xor.frag")))
class MultiplyContrast : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/multiply-contrast.frag")))
class MultiplyContrast : Filter(filterShaderFromUrl(filterFragmentUrl("blend/multiply-contrast.frag")))
class Passthrough : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/passthrough.frag")))
class Add : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/add.frag"))) {
class Passthrough : Filter(filterShaderFromUrl(filterFragmentUrl("blend/passthrough.frag")))
class Add : Filter(filterShaderFromUrl(filterFragmentUrl("blend/add.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters
@@ -106,7 +106,7 @@ class Add : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragment
clip = false
}
}
class Subtract : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/subtract.frag"))) {
class Subtract : Filter(filterShaderFromUrl(filterFragmentUrl("blend/subtract.frag"))) {
@BooleanParameter("source clip")
var clip: Boolean by parameters

View File

@@ -1,8 +1,8 @@
package org.openrndr.extra.fx.blur
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.ColorBufferDescription
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@@ -13,8 +13,7 @@ import org.openrndr.math.Vector2
* Approximate separated Gaussian blur
*/
@Description("Approximate Gaussian blur")
class ApproximateGaussianBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
filterFragmentCode("blur/approximate-gaussian-blur.frag"))) {
class ApproximateGaussianBlur : Filter(filterShaderFromUrl(filterFragmentUrl(("blur/approximate-gaussian-blur.frag")))) {
/**
* blur sample window, default value is 5
*/

View File

@@ -2,13 +2,13 @@ package org.openrndr.extra.fx.blur
import org.openrndr.draw.*
import org.openrndr.extra.fx.blend.Add
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@Description("Bloom")
class Bloom(blur: Filter = ApproximateGaussianBlur()) : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom.frag"))) {
class Bloom(blur: Filter = ApproximateGaussianBlur()) : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom.frag"))) {
/**
* the blur filter to use for the bloom, default is Approximate Gaussian Blur
*/

View File

@@ -1,7 +1,7 @@
package org.openrndr.extra.fx.blur
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@@ -12,8 +12,7 @@ import org.openrndr.math.Vector2
* BoxBlur implemented as a separable filter
*/
@Description("Box-blur")
class BoxBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
filterFragmentCode("blur/box-blur.frag"))) {
class BoxBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/box-blur.frag"))) {
data class ColorBufferDescription(val width: Int, val height: Int, val contentScale: Double, val format: ColorFormat, val type: ColorType)

View File

@@ -1,14 +1,12 @@
package org.openrndr.extra.fx.blur
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@Description("Frame blur")
class FrameBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
filterFragmentCode("blur/frame-blur.frag"))) {
class FrameBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/frame-blur.frag"))) {
@DoubleParameter("blend", 0.0, 1.0)
var blend: Double by parameters

View File

@@ -1,8 +1,9 @@
package org.openrndr.extra.fx.blur
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@@ -11,8 +12,7 @@ import org.openrndr.extra.parameters.IntParameter
* Exact Gaussian blur, implemented as a single pass filter
*/
@Description("Gaussian blur")
class GaussianBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
filterFragmentCode("blur/gaussian-blur.frag"))) {
class GaussianBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/gaussian-blur.frag"))) {
/**
* The sample window, default value is 5

View File

@@ -1,15 +1,14 @@
package org.openrndr.extra.fx.blur
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@Description("Hash blur")
class HashBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
filterFragmentCode("blur/hash-blur.frag"))) {
class HashBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/hash-blur.frag"))) {
/**
* Blur radius in pixels, default is 5.0
*/

View File

@@ -2,7 +2,7 @@ package org.openrndr.extra.fx.blur
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.BooleanParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@@ -10,11 +10,11 @@ import org.openrndr.extra.parameters.IntParameter
import org.openrndr.filter.color.delinearize
import org.openrndr.filter.color.linearize
class BloomDownscale : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-downscale.frag"))) {
class BloomDownscale : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-downscale.frag"))) {
}
class BloomUpscale : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-upscale.frag"))) {
class BloomUpscale : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-upscale.frag"))) {
var gain:Double by parameters
var shape:Double by parameters
var seed:Double by parameters
@@ -26,7 +26,7 @@ class BloomUpscale : Filter(Shader.createFromCode(filterVertexCode, filterFragme
}
}
class BloomCombine: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-combine.frag"))) {
class BloomCombine: Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-combine.frag"))) {
var gain: Double by parameters
var bias: ColorRGBa by parameters
@@ -37,7 +37,7 @@ class BloomCombine: Filter(Shader.createFromCode(filterVertexCode, filterFragmen
}
@Description("MipBloom")
open class MipBloom<T:Filter>(val blur:T) : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-combine.frag"))) {
open class MipBloom<T:Filter>(val blur:T) : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-combine.frag"))) {
var passes = 6
@DoubleParameter("shape", 0.0, 4.0)

View File

@@ -1,16 +1,13 @@
package org.openrndr.extra.fx.blur
import org.openrndr.draw.ColorBuffer
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.draw.colorBuffer
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.math.Vector2
@Description("Zoom Blur")
class ZoomBlur : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blur/zoom-blur.frag"))) {
class ZoomBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/zoom-blur.frag"))) {
var center: Vector2 by parameters
@DoubleParameter("strength", 0.0, 1.0)

View File

@@ -1,14 +1,14 @@
package org.openrndr.extra.fx.color
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.math.Vector2
import org.openrndr.resourceUrl
@Description("Chromatic Aberration")
class ChromaticAberration : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/chromatic-aberration.frag"))){
class ChromaticAberration : Filter(filterShaderFromUrl(filterFragmentUrl("color/chromatic-aberration.frag"))){
/**
* aberration factor, default value is 8.0
*/

View File

@@ -1,12 +1,12 @@
package org.openrndr.extra.fx.color
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Color correction")
class ColorCorrection : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("color/color-correction.frag"))) {
class ColorCorrection : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-correction.frag"))) {
@DoubleParameter("brightness", -1.0, 1.0, order = 0)
var brightness: Double by parameters

View File

@@ -1,9 +1,9 @@
package org.openrndr.extra.fx.color
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
class ColorLookup(lookup: ColorBuffer) : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/color-lookup.frag"))) {
class ColorLookup(lookup: ColorBuffer) : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-lookup.frag"))) {
/** a color look-up texture */
var lookup: ColorBuffer by parameters

View File

@@ -2,15 +2,15 @@ package org.openrndr.extra.fx.color
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.extra.parameters.Description
class ColorMix : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/color-mix.frag")))
class ColorMix : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-mix.frag")))
@Description("Tint")
class ColorTint : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/color-tint.frag"))) {
class ColorTint : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-tint.frag"))) {
@ColorParameter("tint")
var tint: ColorRGBa by parameters

View File

@@ -2,15 +2,14 @@ package org.openrndr.extra.fx.color
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.parameters.BooleanParameter
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Luma map ")
class LumaMap : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/luma-map.frag"))) {
class LumaMap : Filter(filterShaderFromUrl(filterFragmentUrl("color/luma-map.frag"))) {
@ColorParameter("foreground color")
var foreground: ColorRGBa by parameters

View File

@@ -1,16 +1,13 @@
package org.openrndr.extra.fx.color
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.parameters.BooleanParameter
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Luma map ")
class LumaOpacity : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/luma-opacity.frag"))) {
class LumaOpacity : Filter(filterShaderFromUrl(filterFragmentUrl("color/luma-opacity.frag"))) {
@DoubleParameter("foreground luma",0.0, 1.0)
var foregroundLuma: Double by parameters

View File

@@ -2,15 +2,14 @@ package org.openrndr.extra.fx.color
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.parameters.BooleanParameter
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Luma threshold ")
class LumaThreshold : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/luma-threshold.frag"))) {
class LumaThreshold : Filter(filterShaderFromUrl(filterFragmentUrl("color/luma-threshold.frag"))) {
@DoubleParameter("threshold value", 0.0, 1.0)
var threshold: Double by parameters

View File

@@ -1,13 +1,13 @@
package org.openrndr.extra.fx.color
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Sepia")
class Sepia : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/sepia.frag"))) {
class Sepia : Filter(filterShaderFromUrl(filterFragmentUrl("color/sepia.frag"))) {
@DoubleParameter("amount", 0.0, 1.0)
var amount: Double by parameters

View File

@@ -2,14 +2,14 @@ package org.openrndr.extra.fx.color
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Set background")
class SetBackground : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/set-background.frag"))) {
class SetBackground : Filter(filterShaderFromUrl(filterFragmentUrl("color/set-background.frag"))) {
@ColorParameter("background color")
var background: ColorRGBa by parameters

View File

@@ -2,10 +2,10 @@ package org.openrndr.extra.fx.color
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
class SubtractConstant : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/subtract-constant.frag"))) {
class SubtractConstant : Filter(filterShaderFromUrl(filterFragmentUrl("color/subtract-constant.frag"))) {
var constant: ColorRGBa by parameters
init {

View File

@@ -1,13 +1,13 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Block repeat")
class BlockRepeat : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/block-repeat.frag"))) {
class BlockRepeat : Filter(filterShaderFromUrl(filterFragmentUrl("distort/block-repeat.frag"))) {
@DoubleParameter("block width", 0.0, 1.0, order = 0)
var blockWidth: Double by parameters

View File

@@ -1,14 +1,13 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.parameters.BooleanParameter
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.math.Vector3
@Description("Perturb")
class DisplaceBlend : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/displace-blend.frag"))) {
class DisplaceBlend : Filter(filterShaderFromUrl(filterFragmentUrl("distort/displace-blend.frag"))) {
var seed: Vector3 by parameters
@DoubleParameter("offset", -1.0, 1.0)

View File

@@ -1,12 +1,12 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Fisheye")
class Fisheye : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/fisheye.frag"))) {
class Fisheye : Filter(filterShaderFromUrl(filterFragmentUrl("distort/fisheye.frag"))) {
@DoubleParameter("strength", -1.0, 1.0, order = 0)
var strength: Double by parameters

View File

@@ -1,7 +1,7 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@@ -9,7 +9,7 @@ import org.openrndr.math.Vector3
import org.openrndr.math.Vector4
@Description("Perturb")
class Perturb : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/perturb.frag"))) {
class Perturb : Filter(filterShaderFromUrl(filterFragmentUrl("distort/perturb.frag"))) {
var seed: Vector3 by parameters
/**

View File

@@ -1,7 +1,7 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.BooleanParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@@ -9,7 +9,7 @@ import org.openrndr.math.Vector3
import org.openrndr.math.transforms.transform
@Description("Perspective plane")
class PerspectivePlane : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/perspective-plane.frag"))) {
class PerspectivePlane : Filter(filterShaderFromUrl(filterFragmentUrl("distort/perspective-plane.frag"))) {
// @DoubleParameter("camera x", -1.0, 1.0, order = 0)
var cameraX: Double = 0.0
// @DoubleParameter("camera y", -1.0, 1.0, order = 1)

View File

@@ -1,13 +1,13 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@Description("Stack repeat")
class StackRepeat : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/stack-repeat.frag"))) {
class StackRepeat : Filter(filterShaderFromUrl(filterFragmentUrl("distort/stack-repeat.frag"))) {
@DoubleParameter("zoom", -1.0, 1.0, order = 0)
var zoom: Double by parameters

View File

@@ -1,12 +1,12 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Stretch waves")
class StretchWaves : Filter(filterShaderFromCode(filterFragmentCode("distort/stretch-waves.frag"))) {
class StretchWaves : Filter(filterShaderFromUrl(filterFragmentUrl("distort/stretch-waves.frag"))) {
@DoubleParameter("distortion", -0.0,1.0, 1)
var distortion: Double by parameters

View File

@@ -1,13 +1,13 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@Description("Tiles")
class Tiles : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/tiles.frag"))) {
class Tiles : Filter(filterShaderFromUrl(filterFragmentUrl("distort/tiles.frag"))) {
@DoubleParameter("rotation", -180.0, 180.0, order = 2)
var rotation: Double by parameters

View File

@@ -1,13 +1,13 @@
package org.openrndr.extra.fx.distort
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
@Description("Horizontal wave")
class HorizontalWave : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/horizontal-wave.frag"))) {
class HorizontalWave : Filter(filterShaderFromUrl(filterFragmentUrl("distort/horizontal-wave.frag"))) {
@DoubleParameter("frequency", 0.0, 64.0, order = 1)
var frequency: Double by parameters
@@ -39,7 +39,7 @@ class HorizontalWave : Filter(Shader.createFromCode(filterVertexCode, filterFrag
}
@Description("Vertical wave")
class VerticalWave : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/vertical-wave.frag"))) {
class VerticalWave : Filter(filterShaderFromUrl(filterFragmentUrl("distort/vertical-wave.frag"))) {
@DoubleParameter("frequency", 0.0, 64.0, order = 1)
var frequency: Double by parameters

View File

@@ -1,13 +1,13 @@
package org.openrndr.extra.fx.dither
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.IntParameter
@Description("ADither")
class ADither: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("dither/a-dither.frag"))) {
class ADither: Filter(filterShaderFromUrl(filterFragmentUrl("dither/a-dither.frag"))) {
@IntParameter("pattern index", 0, 3)
var pattern: Int by parameters

View File

@@ -1,13 +1,13 @@
package org.openrndr.extra.fx.dither
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("CMYK Halftone")
class CMYKHalftone: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("dither/cmyk-halftone.frag"))) {
class CMYKHalftone: Filter(filterShaderFromUrl(filterFragmentUrl("dither/cmyk-halftone.frag"))) {
@DoubleParameter("scale", 1.0, 30.0, precision = 4)
var scale: Double by parameters

View File

@@ -1,14 +1,14 @@
package org.openrndr.extra.fx.dither
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Crosshatch")
class Crosshatch: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("dither/crosshatch.frag"))) {
class Crosshatch: Filter(filterShaderFromUrl(filterFragmentUrl("dither/crosshatch.frag"))) {
@DoubleParameter("threshold 1", 0.0, 1.0)
var t1: Double by parameters

View File

@@ -2,17 +2,14 @@ package org.openrndr.extra.vfx
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
import org.openrndr.resourceUrl
@Description("Contour")
class Contour : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("edges/contour.frag"))) {
class Contour : Filter(filterShaderFromUrl(filterFragmentUrl("edges/contour.frag"))) {
@DoubleParameter("levels", 1.0, 16.0)
var levels: Double by parameters

View File

@@ -1,14 +1,14 @@
package org.openrndr.extra.fx.edges
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.extra.fx.ColorBufferDescription
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.IntParameter
import org.openrndr.math.Vector2
internal class EdgesWork1 : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("edges/edges-work-1.frag"))) {
internal class EdgesWork1 : Filter(filterShaderFromUrl(filterFragmentUrl("edges/edges-work-1.frag"))) {
var delta: Vector2 by parameters
init {
@@ -17,7 +17,7 @@ internal class EdgesWork1 : Filter(Shader.createFromCode(filterVertexCode, filte
}
@Description("Edges Work")
open class EdgesWork : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("edges/edges-work-2.frag"))) {
open class EdgesWork : Filter(filterShaderFromUrl(filterFragmentUrl("edges/edges-work-2.frag"))) {
/**
* radius, default value is 1.0
*/

View File

@@ -2,14 +2,14 @@ package org.openrndr.extra.fx.edges
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Luma Sobel")
class LumaSobel : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("edges/luma-sobel.frag"))) {
class LumaSobel : Filter(filterShaderFromUrl(filterFragmentUrl("edges/luma-sobel.frag"))) {
@ColorParameter("background color")
var backgroundColor: ColorRGBa by parameters

View File

@@ -1,6 +1,7 @@
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.BooleanParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@@ -9,7 +10,7 @@ import org.openrndr.extra.parameters.DoubleParameter
* Film grain filter
*/
@Description("film grain")
class FilmGrain : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("grain/film-grain.frag"))) {
class FilmGrain : Filter(filterShaderFromUrl(filterFragmentUrl("grain/film-grain.frag"))) {
@BooleanParameter("use color")
var useColor: Boolean by parameters

View File

@@ -2,13 +2,13 @@ package org.openrndr.extra.fx.patterns
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@Description("Checkers pattern")
class Checkers : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("patterns/checkers.frag"))) {
class Checkers : Filter(filterShaderFromUrl(filterFragmentUrl("patterns/checkers.frag"))) {
var background: ColorRGBa by parameters
var foreground: ColorRGBa by parameters
@DoubleParameter("size", 0.0, 1.0)

View File

@@ -2,23 +2,20 @@ package org.openrndr.extra.fx.shadow
import org.openrndr.color.ColorRGBa
import org.openrndr.draw.ColorBuffer
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.draw.colorBuffer
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.*
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.ColorParameter
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
import org.openrndr.extra.parameters.IntParameter
import org.openrndr.math.Vector2
private class Blend : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("shadow/dropshadow-blend.frag"))) {
private class Blend : Filter(filterShaderFromUrl(filterFragmentUrl("shadow/dropshadow-blend.frag"))) {
var shift: Vector2 by parameters
}
@Description("Drop shadow")
class DropShadow : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("shadow/dropshadow-blur.frag"))) {
class DropShadow : Filter(filterShaderFromUrl(filterFragmentUrl("shadow/dropshadow-blur.frag"))) {
@IntParameter("blur window", 1, 25)
var window: Int by parameters

View File

@@ -1,8 +1,8 @@
package org.openrndr.extra.fx.tonemap
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
import org.openrndr.extra.parameters.Description
import org.openrndr.extra.parameters.DoubleParameter
@@ -10,7 +10,7 @@ import org.openrndr.extra.parameters.DoubleParameter
* Uncharted 2 tonemap filter
*/
@Description("Uncharted 2 tonemap")
class Uncharted2Tonemap : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("tonemap/uncharted2-tonemap.frag"))) {
class Uncharted2Tonemap : Filter(filterShaderFromUrl(filterFragmentUrl("tonemap/uncharted2-tonemap.frag"))) {
@DoubleParameter("exposure bias", 0.0, 128.0)
var exposureBias:Double by parameters

View File

@@ -2,9 +2,10 @@ package org.openrndr.extra.fx.transform
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
import org.openrndr.draw.filterShaderFromUrl
import org.openrndr.extra.fx.filterFragmentUrl
/**
* Vertically flips in the input image
*/
class FlipVertically : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("transform/flip-vertically.frag")))
class FlipVertically : Filter(filterShaderFromUrl(filterFragmentUrl("transform/flip-vertically.frag")))