Actionscript 3 使用PixelBender显示/隐藏特定颜色范围
隐藏特定(插值)颜色范围的最佳方法是什么?例如,我有一个从蓝色>青色>黄色>红色的渐变。我需要的是隐藏蓝色>青色,黄色>红色,但保留青色>黄色Actionscript 3 使用PixelBender显示/隐藏特定颜色范围,actionscript-3,pixel-shader,pixel-bender,Actionscript 3,Pixel Shader,Pixel Bender,隐藏特定(插值)颜色范围的最佳方法是什么?例如,我有一个从蓝色>青色>黄色>红色的渐变。我需要的是隐藏蓝色>青色,黄色>红色,但保留青色>黄色 var rangeA:Object = {min:0x0000FF, max:0x00FFFF} //hide var rangeB:Object = {min:0x00FFFF, max:0xFFFF00}; //show var rangeC:Object = {min:0xFFFF00, max:0xFF0000}; //hide 可以为每个范
var rangeA:Object = {min:0x0000FF, max:0x00FFFF} //hide
var rangeB:Object = {min:0x00FFFF, max:0xFFFF00}; //show
var rangeC:Object = {min:0xFFFF00, max:0xFF0000}; //hide
可以为每个范围应用不同的过滤器
有什么想法吗?这是我找到的最简单的解决方案:
void
evaluatePixel()
{
float4 color = sampleNearest(src,outCoord());
float maxR = max(minColor.r, maxColor.r);
float maxG = max(minColor.g, maxColor.g);
float maxB = max(minColor.b, maxColor.b);
float minR = min(minColor.r, maxColor.r);
float minG = min(minColor.g, maxColor.g);
float minB = min(minColor.b, maxColor.b);
dst = color;
// Check whether a color is within the range
if(color.r >= minR && color.g >= minG && color.b >= minB)
{
if(color.r <= maxR && color.g <= maxG && color.b <= maxB)
{
dst = float4(0.0,0.0,0.0,0.0);
}
}
}
void
evaluatePixel()
{
float4 color=sampleNearest(src,outCoord());
float maxR=max(minColor.r,maxColor.r);
float maxG=max(minColor.g,maxColor.g);
float maxB=max(minColor.b,maxColor.b);
float minR=min(minColor.r,maxColor.r);
float minG=min(minColor.g,maxColor.g);
float minB=min(minColor.b,maxColor.b);
dst=颜色;
//检查颜色是否在范围内
如果(color.r>=minR&&color.g>=minG&&color.b>=minB)
{
if(color.r)