2010-08-07 4 views
0

Кто-нибудь использовал фильтр фотографий в Photoshop? Редактирование> Корректировки> Фильтр фотографий ...Photoshop PhotoFilter pixel Math

Он создает очень красивый оттенок изображения, который я не смог воспроизвести с режимами смешивания. Кто-нибудь понял какие-то пиксельные математики за этим фильтром? - Поэтому я могу построить на ней шейдер.

Похоже, в основном это оттенок, сохраняющий оттенок.

Имеет переменные: цвет, количество и сохранение светимости.

Любые идеи?

+0

Предположительно он пытается воспроизвести эффект цветового фильтра перед объективом камеры? –

+0

Да, это так. Я попытался разместить цветной слой над изображением, а затем настроить режимы смешивания, чтобы создать аналогичный эффект, но он никогда не меняется. Любые идеи? – Rob

ответ

1

Фильтры (в свету) мультипликативны, как:

red_filter = (1 , 0 , 0) * color

Я не думаю, что существуют какие-Blend-режимы для него, так как любая прозрачная накладка с этой системой будет затемнить изображение некоторым степень.

+0

Существует смешанный режим «Multiply», который работает именно так. Так как он всегда затемняет изображение, вам нужна другая отдельная операция для восстановления яркости. –

+0

Кто-нибудь знает, как восстановить светимость, как это делает Photoshop? –

0

Это невероятно просто, но если кто-то хочет код HLSL для этого:

// 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(); 
    } 

}