14 lines
520 B
Plaintext
14 lines
520 B
Plaintext
float blendSoftLight(float base, float blend) {
|
|
return (blend<0.5)?(2.0*base*blend+base*base*(1.0-2.0*blend)):(sqrt(base)*(2.0*blend-1.0)+2.0*base*(1.0-blend));
|
|
}
|
|
|
|
vec3 blendSoftLight(vec3 base, vec3 blend) {
|
|
return vec3(blendSoftLight(base.r,blend.r),blendSoftLight(base.g,blend.g),blendSoftLight(base.b,blend.b));
|
|
}
|
|
|
|
vec3 blendSoftLight(vec3 base, vec3 blend, float opacity) {
|
|
return (blendSoftLight(base, blend) * opacity + base * (1.0 - opacity));
|
|
}
|
|
|
|
#pragma glslify: export(blendSoftLight)
|
|
#olive name Soft Light |