Skip to content

Latest commit

 

History

History

orx-temporal-blur

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

orx-temporal-blur

Post-processing temporal-blur video effect. CPU intense, therefore not intended for use with the ScreenRecorder extension or other real-time uses.

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.

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 // duration is in frames
    samples = 30 
    fps = 60.0 
    jitter = 1.0
}

Color shifts

Additionally, a color matrix can be set per accumulation step. See DemoColorShift01.kt

extend(TemporalBlur()) {
    colorMatrix = {
        // `it` is 0.0 at start of frame, 1.0 at end of frame
        tint(ColorRGBa.WHITE.mix(ColorRGBa.BLUE, it))
    }
}

Demos

DemoBasic01

source code

DemoBasic01Kt

DemoColorShift01

source code

DemoColorShift01Kt