[orx-fx] convert to MPP
This commit is contained in:
31
orx-fx/src/demo/kotlin/DemoBlend01.kt
Normal file
31
orx-fx/src/demo/kotlin/DemoBlend01.kt
Normal file
@@ -0,0 +1,31 @@
|
||||
package org.openrndr.extra.fx.demo
|
||||
|
||||
import org.openrndr.applicationSynchronous
|
||||
import org.openrndr.extra.fx.blend.*
|
||||
fun main() {
|
||||
applicationSynchronous {
|
||||
program {
|
||||
val add = Add()
|
||||
val colorBurn = ColorBurn()
|
||||
val colorDodge = ColorDodge()
|
||||
val darken = Darken()
|
||||
val destIn = DestinationIn()
|
||||
val destOut = DestinationOut()
|
||||
val destAtop = DestinationAtop()
|
||||
val hardLight = HardLight()
|
||||
val lighten = Lighten()
|
||||
val multiply = Multiply()
|
||||
val multiplyContrast = MultiplyContrast()
|
||||
val normal = Normal()
|
||||
val overlay = Overlay()
|
||||
val passthrough = Passthrough()
|
||||
val screen = Screen()
|
||||
val sourceIn = SourceIn()
|
||||
val sourceAtop = SourceAtop()
|
||||
val sourceOut = SourceOut()
|
||||
val subtract = Subtract()
|
||||
val xor = Xor()
|
||||
application.exit()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
import org.openrndr.application
|
||||
import org.openrndr.draw.colorBuffer
|
||||
import org.openrndr.draw.createEquivalent
|
||||
import org.openrndr.extensions.SingleScreenshot
|
||||
import org.openrndr.extra.fx.distort.FluidDistort
|
||||
import org.openrndr.extra.fx.patterns.Checkers
|
||||
|
||||
@@ -1,64 +1,64 @@
|
||||
import org.openrndr.application
|
||||
import org.openrndr.color.ColorRGBa
|
||||
import org.openrndr.extensions.SingleScreenshot
|
||||
import org.openrndr.extra.compositor.compose
|
||||
import org.openrndr.extra.compositor.draw
|
||||
import org.openrndr.extra.compositor.layer
|
||||
import org.openrndr.extra.compositor.post
|
||||
import org.openrndr.extra.fx.blur.GaussianBloom
|
||||
import org.openrndr.extra.fx.blur.LaserBlur
|
||||
import org.openrndr.extra.gui.GUI
|
||||
import org.openrndr.extra.gui.addTo
|
||||
import org.openrndr.extra.noise.simplex
|
||||
import org.openrndr.math.Vector2
|
||||
import kotlin.math.absoluteValue
|
||||
|
||||
suspend fun main() = application {
|
||||
configure {
|
||||
width = 1280
|
||||
height = 720
|
||||
}
|
||||
|
||||
program {
|
||||
if (System.getProperty("takeScreenshot") == "true") {
|
||||
extend(SingleScreenshot()) {
|
||||
this.outputFile = System.getProperty("screenshotPath")
|
||||
}
|
||||
}
|
||||
|
||||
val gui = GUI()
|
||||
val c = compose {
|
||||
layer {
|
||||
draw {
|
||||
drawer.fill = null
|
||||
drawer.strokeWeight = 4.0
|
||||
drawer.translate(width/2.0, height/2.0)
|
||||
drawer.rotate(seconds*45.0 + simplex(0, seconds)*45.0)
|
||||
drawer.translate(-width/2.0, -height/2.0)
|
||||
for (y in -1..1) {
|
||||
for (x in -1..1) {
|
||||
drawer.stroke = ColorRGBa.RED.toHSVa()
|
||||
.shiftHue(0.0 + simplex(500+x+y,seconds)*5.0)
|
||||
.shade(0.5 + 0.5 * simplex(300+x+y,seconds*4.0).absoluteValue)
|
||||
.toRGBa()
|
||||
val r = simplex(400+x+y, seconds) * 150.0 + 150.0
|
||||
drawer.circle(width / 2.0 + x * 100.0, height / 2.0 + y * 100.0, r)
|
||||
}
|
||||
}
|
||||
}
|
||||
post(LaserBlur()) {
|
||||
center = Vector2(simplex(2, seconds*0.1), simplex(100, seconds*0.1))
|
||||
aberration = simplex(5, seconds) * 0.01
|
||||
radius = simplex(7, seconds)
|
||||
}.addTo(gui)
|
||||
post(GaussianBloom()).addTo(gui)
|
||||
}
|
||||
}
|
||||
extend(gui) {
|
||||
doubleBind = true
|
||||
}
|
||||
extend {
|
||||
c.draw(drawer)
|
||||
}
|
||||
}
|
||||
}
|
||||
//import org.openrndr.application
|
||||
//import org.openrndr.color.ColorRGBa
|
||||
//import org.openrndr.extensions.SingleScreenshot
|
||||
//import org.openrndr.extra.compositor.compose
|
||||
//import org.openrndr.extra.compositor.draw
|
||||
//import org.openrndr.extra.compositor.layer
|
||||
//import org.openrndr.extra.compositor.post
|
||||
//import org.openrndr.extra.fx.blur.GaussianBloom
|
||||
//import org.openrndr.extra.fx.blur.LaserBlur
|
||||
//import org.openrndr.extra.gui.GUI
|
||||
//import org.openrndr.extra.gui.addTo
|
||||
//import org.openrndr.extra.noise.simplex
|
||||
//import org.openrndr.math.Vector2
|
||||
//import kotlin.math.absoluteValue
|
||||
//
|
||||
//suspend fun main() = application {
|
||||
// configure {
|
||||
// width = 1280
|
||||
// height = 720
|
||||
// }
|
||||
//
|
||||
// program {
|
||||
// if (System.getProperty("takeScreenshot") == "true") {
|
||||
// extend(SingleScreenshot()) {
|
||||
// this.outputFile = System.getProperty("screenshotPath")
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// val gui = GUI()
|
||||
// val c = compose {
|
||||
// layer {
|
||||
// draw {
|
||||
// drawer.fill = null
|
||||
// drawer.strokeWeight = 4.0
|
||||
// drawer.translate(width/2.0, height/2.0)
|
||||
// drawer.rotate(seconds*45.0 + simplex(0, seconds)*45.0)
|
||||
// drawer.translate(-width/2.0, -height/2.0)
|
||||
// for (y in -1..1) {
|
||||
// for (x in -1..1) {
|
||||
// drawer.stroke = ColorRGBa.RED.toHSVa()
|
||||
// .shiftHue(0.0 + simplex(500+x+y,seconds)*5.0)
|
||||
// .shade(0.5 + 0.5 * simplex(300+x+y,seconds*4.0).absoluteValue)
|
||||
// .toRGBa()
|
||||
// val r = simplex(400+x+y, seconds) * 150.0 + 150.0
|
||||
// drawer.circle(width / 2.0 + x * 100.0, height / 2.0 + y * 100.0, r)
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// post(LaserBlur()) {
|
||||
// center = Vector2(simplex(2, seconds*0.1), simplex(100, seconds*0.1))
|
||||
// aberration = simplex(5, seconds) * 0.01
|
||||
// radius = simplex(7, seconds)
|
||||
// }.addTo(gui)
|
||||
// post(GaussianBloom()).addTo(gui)
|
||||
// }
|
||||
// }
|
||||
// extend(gui) {
|
||||
// doubleBind = true
|
||||
// }
|
||||
// extend {
|
||||
// c.draw(drawer)
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
Reference in New Issue
Block a user