1.5 KiB
orx-temporal-blur
orx-temporal-blur is a an extension intended for off-line production;
i.e. videos made using the ScreenRecorder extension. This extension uses multi-sampling
to accumulate and average the final image. Multi-sampling is performed by modifying Program.clock
while processing the tail-end of the extension chain. This multi-sampling strategy is slow and not
entirely suited in real-time and/or interactive settings.
orx-temporal-blur works well with programs that use seconds for their animation input.
This includes Animatables, but only after the Animatable clock is synchronized with the Program clock.
(Which you should already have done when using ScreenRecorder)
Synchronizing clocks in OPENRNDR 0.3.36 (current release):
Animatable.clock(object: Clock {
override val time: Long
get() = (clock() * 1E3).toLong()
})
Synchronizing high precision clocks in OPENRNDR 0.3.37 (future release)
Animatable.clock(object: Clock {
override val time: Long
get() = timeNanos / 1000
override val timeNanos: Long
get() = (clock() * 1E6).toLong()
})
Note that time-step-based simulations or integrations will likely break because your drawing code will be executed multiple times per frame.
Configuration
extend(TemporalBlur()) {
duration = 0.9
samples = 30
fps = 60.0
jitter = 1.0
}