aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt')
-rw-r--r--src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt b/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt
new file mode 100644
index 0000000..35de05d
--- /dev/null
+++ b/src/main/kotlin/phenax/extensions/HeadlessScreenshot.kt
@@ -0,0 +1,30 @@
+package phenax.extensions
+
+import org.openrndr.*
+import org.openrndr.draw.*
+import org.openrndr.extensions.SingleScreenshot
+import org.openrndr.ffmpeg.VideoWriter
+
+class HeadlessScreenshot : Extension {
+ override var enabled: Boolean = true
+
+ var screenshots: SingleScreenshot? = null
+ var videoWriter: VideoWriter? = null
+ var maxFrameCount: Int? = null
+
+ override fun setup(program: Program) {
+ val scr = SingleScreenshot()
+ screenshots = scr
+ program.extend(scr) {
+ outputFile = "screenshot/${program.name}.png"
+ }
+ }
+
+ override fun beforeDraw(drawer: Drawer, program: Program) {}
+
+ override fun afterDraw(drawer: Drawer, program: Program) {
+ screenshots?.trigger()
+
+ // program.application.exit()
+ }
+}