开发者

Photoshop PhotoFilter pixel Math

Has anyone used the photo filter in Photoshop? Edit > Adjustments > P开发者_如何学Gohoto Filter...

It produces a really nice image tint that I've been unable to reproduce with blending modes. Has anyone got any idea of the pixel maths behind this filter? - So I can build a shader based on it.

It seems to basically be a luminosity preserving colour tint.

Has variables: Color, Amount and Preserve Luminosity.

Any ideas?


Filters (in light) are multiplicative, as in:

red_filter = ( 1 , 0 , 0 ) * color

I don't think any blend-modes exist for it, since any transparent overlay with that system would darken the image to some degree.


It's incredibly simple, but if anyone wants the hlsl code for this:

// Photoshop PhotoFilter style effect.

// Input filter color.
float4 FilterColor;

// Implicit texture sampler.
sampler TextureSampler : register(s0);

float4 PhotoFilter(float4 color : COLOR0, float2 texCoord : TEXCOORD0) : COLOR0
{
    return tex2D(TextureSampler, texCoord) * FilterColor;
}

technique GeneralEffect
{
    pass Pass1
    {
        PixelShader = compile ps_2_0 PhotoFilter();
    }

}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜