AS3 change parameters in Pixel Bender

Pixel Bender 는 강력하지만 자주 사용하는 툴은 아니라서 플래시에 연동하는 방법을 매번 까먹곤 합니다. 그래서 기억력 보조 차원에서 간단하게 Pixel Bender 파일을 플래시에서 사용하는 법을 알아보겠습니다.

    parameter float d<
        minValue: 0.001;
        maxValue:10.0;
        defaultValue:2.0;
    >;

    parameter float r<
        minValue: 0.001;
        maxValue:10.0;
        defaultValue:0.425;
    >;

pbk 파일에 사용할 수 있는 파라미터가 위와 같이 정의 되어 있을 경우 아래의 as3 처럼 사용 하면 됩니다.

[Embed("assets/BilateralBlur.pbj", mimeType="application/octet-stream")]
private var BilateralBlur:Class;

_shader = new Shader(new BilateralBlur() as ByteArray);
_shader.data.d.value = [d_slider.value];
_shader.data.r.value = [r_slider.value];

_filter = new ShaderFilter(_shader);
wm1.filters = [_filter];

필요한 부분만 간략하게 줄였습니다.
_shader.data.d.value = [d_slider.value];
이렇게 파라미터에 값을 넣어주면 됩니다. 주의 할 점은 값을 Array 형으로 전달 해야 한다는 겁니다. 이유는 정확히 모르겠지만 파리미터 타입이 여러개 이므로 그에 맞게 값을 넘겨줘야 하기 때문이 아닌가 추측해 봅니다.

1 thought on “AS3 change parameters in Pixel Bender”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.