aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin')
-rw-r--r--src/main/kotlin/org/openrndr/Preload.kt8
-rw-r--r--src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt2
-rw-r--r--src/main/kotlin/roll_credits/RollCreditsProgram.kt19
3 files changed, 10 insertions, 19 deletions
diff --git a/src/main/kotlin/org/openrndr/Preload.kt b/src/main/kotlin/org/openrndr/Preload.kt
index e6a9688..42bab94 100644
--- a/src/main/kotlin/org/openrndr/Preload.kt
+++ b/src/main/kotlin/org/openrndr/Preload.kt
@@ -1,9 +1,9 @@
package org.openrndr
import org.openrndr.draw.*
+import org.openrndr.extensions.SingleScreenshot
import org.openrndr.extra.olive.*
import org.openrndr.ffmpeg.ScreenRecorder
-import phenax.extensions.HeadlessScreenshot
import phenax.utils.*
class Preload : ApplicationPreload() {
@@ -19,7 +19,11 @@ class Preload : ApplicationPreload() {
multisample = BufferMultisample.SampleCount(16)
}
} else if (screenshotEnabled) {
- program.extend(HeadlessScreenshot())
+ program.extend(SingleScreenshot()) {
+ outputFile = "screenshot/${program.name}.png"
+ async = false
+ quitAfterScreenshot = true
+ }
}
}
}
diff --git a/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt b/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt
index 35de05d..7bd9967 100644
--- a/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt
+++ b/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt
@@ -24,7 +24,5 @@ class HeadlessScreenshot : Extension {
override fun afterDraw(drawer: Drawer, program: Program) {
screenshots?.trigger()
-
- // program.application.exit()
}
}
diff --git a/src/main/kotlin/roll_credits/RollCreditsProgram.kt b/src/main/kotlin/roll_credits/RollCreditsProgram.kt
index b07d6fc..472ce85 100644
--- a/src/main/kotlin/roll_credits/RollCreditsProgram.kt
+++ b/src/main/kotlin/roll_credits/RollCreditsProgram.kt
@@ -3,8 +3,6 @@ package roll_credits
import org.openrndr.application
import org.openrndr.color.*
import org.openrndr.draw.*
-import org.openrndr.extra.noise.filters.SimplexNoise3D
-import org.openrndr.math.Vector3
import phenax.utils.*
fun main() = application {
@@ -25,31 +23,22 @@ fun main() = application {
}
oliveProgram {
+ val enableAntialiasing = captureEnabled
val cs by liveComputeShader("roll_credits")
- val outputBuffer = colorBuffer(width, height, type = ColorType.UINT8)
-
- val size = Math.max(width, height) * 2
- val noiseBuffer = colorBuffer(size, size, type = ColorType.UINT8)
- val noiseFilter = SimplexNoise3D()
- noiseFilter.scale = Vector3.ONE * 2.4
- noiseFilter.octaves = 8
- noiseFilter.premultipliedAlpha = true
+ val scale = if (enableAntialiasing) 2 else 1
+ val outputBuffer = colorBuffer(scale * width, scale * height, type = ColorType.UINT8)
// val camera_manager = CameraManager()
// extend(camera_manager)
extend {
- noiseFilter.seed = Vector3(0.01, 0.01, 0.001)
- noiseFilter.apply(emptyArray(), noiseBuffer)
- cs.image("noise_texture", 1, noiseBuffer.imageBinding(0, ImageAccess.READ))
-
// camera_manager.setUniforms(cs)
cs.uniform("seconds", seconds)
cs.image("output_image", 0, outputBuffer.imageBinding(0, ImageAccess.WRITE))
cs.execute(outputBuffer.width, outputBuffer.height, 1)
- drawer.image(outputBuffer)
+ drawer.image(outputBuffer, 0.0, 0.0, width.toDouble(), height.toDouble())
}
}
}