Add film grain and tonemap filters

This commit is contained in:
Edwin Jakobs
2019-12-07 18:12:36 +01:00
parent d192519e5c
commit a18830c8a7
4 changed files with 163 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
/**
* Film grain filter
*/
class FilmGrain : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("grain/film-grain.frag"))) {
var useColor: Boolean by parameters
var time: Double by parameters;
var grainLiftRatio: Double by parameters
var grainStrength: Double by parameters
var grainRate: Double by parameters
var grainPitch: Double by parameters
var colorLevel: Double by parameters
init {
useColor = false
grainLiftRatio = 0.5
grainStrength = 1.0
grainRate = 1.0
grainPitch = 1.0
colorLevel = 1.0
}
}

View File

@@ -0,0 +1,15 @@
package org.openrndr.extra.fx.tonemap
import org.openrndr.draw.Filter
import org.openrndr.draw.Shader
import org.openrndr.extra.fx.filterFragmentCode
/**
* Uncharted 2 tonemap filter
*/
class Uncharted2Tonemap : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("tonemap/uncharted2-tonemap.frag"))) {
var exposureBias by parameters
init {
exposureBias = 2.0
}
}