指定着色器输入和参数值

原文:http://www.pixelbender.cn/?p=59

 

使用 Shader 对象的 data 属性可以设置着色器输入和参数,还可以确定特定着色器是否需要输入或参数。

 

识别着色器输入和参数

var shaderData:ShaderData = myShader.data;
// 着色器输入
var inputs:Vector.<ShaderInput> = new Vector.<ShaderInput>();
// 着色器参数
var parameters:Vector.<ShaderParameter> = new Vector.<ShaderParameter>();
// 着色器元标签,namespace、vendor等
var metadata:Vector.<String> = new Vector.<String>();
for (var prop:String in shaderData)
{
        if (shaderData[prop] is ShaderInput)
        {
                inputs[inputs.length] = shaderData[prop];
        }else if (shaderData[prop] is ShaderParameter)
        {
                parameters[parameters.length] = shaderData[prop];
        }else
        {
                metadata[metadata.length] = shaderData[prop];
        }
}
// do something with the inputs or properties

 

指定着色器输入值

myShader.data.src.input = image.bitmapData;
 

指定着色器参数值

myShader.data.brightness.value = [75]

你可能感兴趣的:(actionscript,pixel bender)