Фильтр градиентной карты - Pixel Bender для AS3 - PullRequest
0 голосов
/ 04 августа 2010

Мне нужна помощь, чтобы создать фильтр в Pixel Bender для AS3, чтобы эффект был справа на этом изображении:

http://a.imageshack.us/img829/1488/gradientmap.jpg

Вы можете мне помочь?

Спасибо.

Ответы [ 2 ]

1 голос
/ 04 августа 2010

Есть ли причина, по которой это нужно делать в Pixel Bender?Вероятно, вы могли бы получить тот же эффект, покрыв половину изображения черным прямоугольником с непрозрачностью около 80%.Если вам потребуется дополнительная настройка эффекта, применение режима наложения к заливке, вероятно, сработает.

0 голосов
/ 19 декабря 2010

Немного поздно, но, похоже, это помогает:

<languageVersion : 1.0;>

kernel Darken
<   namespace : "omino";
    vendor : "omino";
    version : 1;
    description : "darken the right part of an image";
>
{
    input image4 src;
    output pixel4 dst;

    parameter float leftEdgeOfEffect <minValue: 0.0 ; maxValue: 2000.0; defaultValue: 200.0;>;
    parameter float darkness <minValue: 0.0 ; maxValue: 1.0; defaultValue: 0.75;>;

    void
    evaluatePixel()
    {
        float2 co = outCoord();
        pixel4 p = sampleNearest(src,co);
        if(co.x >= leftEdgeOfEffect)
            p.rgb = p.rgb * (1.0 - darkness);
        dst = p;
    }
}

Фактическая манипуляция пикселем происходит здесь: p.rgb = p.rgb * (1,0 - темнота);

Это просто затемняет R, G и B. Вы можете стать хитрее здесь для более интересных эффектов.

...