aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/phenax/utils/program.kt
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2026-09-27 12:06:00 +0530
committerAkshay Nair <phenax5@gmail.com>2026-09-28 01:48:05 +0530
commit5f41d4cded56121af66b18c232c7f557ab803f94 (patch)
treeb0b48b4e3b453f7786ba0e1a21c0b2301b06d895 /src/main/kotlin/phenax/utils/program.kt
parentaff909363f2fb647420105862432ab3e9d6ca1ed (diff)
downloadart-playground-openrndr-5f41d4cded56121af66b18c232c7f557ab803f94.tar.gz
art-playground-openrndr-5f41d4cded56121af66b18c232c7f557ab803f94.zip
Add headless screenshot + fix scaling for antialiasing for vacation
Diffstat (limited to 'src/main/kotlin/phenax/utils/program.kt')
-rw-r--r--src/main/kotlin/phenax/utils/program.kt7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/main/kotlin/phenax/utils/program.kt b/src/main/kotlin/phenax/utils/program.kt
index fe48351..cfbe9c9 100644
--- a/src/main/kotlin/phenax/utils/program.kt
+++ b/src/main/kotlin/phenax/utils/program.kt
@@ -19,7 +19,8 @@ fun recordDuration(millis: Int) {
fun recordDuration(): Int? = System.getProperty("phenax.record.frameCount")?.toIntOrNull()
-val recordingEnabled: Boolean by lazy { System.getenv("RECORD") != null }
+val recordingEnabled: Boolean by lazy { System.getenv("PHENAX_RECORD") != null }
+val screenshotEnabled: Boolean by lazy { System.getenv("PHENAX_SCREENSHOT") != null }
// fun classDir(): String =
// "src/main/kotlin/${stackRootClassName(sanitize =
@@ -30,7 +31,7 @@ val recordingEnabled: Boolean by lazy { System.getenv("RECORD") != null }
// Have to keep the same name (oliveProgram) to get update on save to work
fun ApplicationBuilder.oliveProgram(init: Program.() -> Unit) {
- if (recordingEnabled) {
+ if (recordingEnabled || screenshotEnabled) {
program(init)
} else {
// TODO: Make watching shader files work
@@ -88,7 +89,7 @@ fun Program.liveComputeShader(name: String): ReadOnlyProperty<Any?, ComputeShade
var cs: ComputeShader = ComputeShader.fromCode(shaderCode, name)
- if (!recordingEnabled) {
+ if (!recordingEnabled || screenshotEnabled) {
var lastCompiledCode: String = shaderCode
program.extend {