变灰
<1>
fixed4 frag(v2f IN) : SV_Target
{
fixed4 c = tex2D(_MainTex, IN.texcoord) * IN.color;
c.rgb *= c.a;
float gray = dot(c.xyz, float3(0.299, 0.587, 0.114));
c.xyz = float3(gray, gray, gray);
return c;
}
<2>
half4 frag (v2f IN) : COLOR
{
half4 col = tex2D(_MainTex, IN.texcoord) * IN.color;
float c = 0.299*col.r + 0.587*col.g + 0.184*col.b;
col.rgb = float3(c, c, c);
return col;
}
本文介绍了两种使用Shader实现图像灰度化的技术。一种是通过计算RGB颜色通道的加权平均值来得到灰度值,另一种则是直接将计算出的灰度值应用于所有颜色通道。这两种方法均可用于实时图像处理。
520

被折叠的 条评论
为什么被折叠?



