Unity_Shader学习笔记_02_透明度测试,透明度混合,半透明.shader入门精要

这篇博客详细介绍了Unity中Shader的透明度测试和透明度混合。通过clip函数实现透明度裁剪,讲解了透明物体的渲染类型和 Blend 操作。内容涉及透明度混合的原理,如何处理深度写入和遮挡关系,以及双面透明度渲染的实现,旨在帮助读者深入理解Unity Shader中的透明效果处理。
摘要由CSDN通过智能技术生成

关于透明度测试,主要是通过clip函数来实现裁剪功能
函数:void clip(float4 x);void clip(float3 x);void clip(float2 x);void clip(float x).
如果指定的一个参数为负数,就会舍弃当前像素的输出颜色
SubShader {
Tags {“Queue”=“AlphaTest” “IgnoreProjector”=“True” “RenderType”=“TransparentCutout”}

	Pass {
		Tags { "LightMode"="ForwardBase" }
		...
		...
		fixed4 frag(v2f i) : SV_Target {
		...
		clip (texColor.a - _Cutoff);
        ...
        }
        
        这里就是通过对该像素采样后的alpha通道来进行alpha测试,来决定该像素是否参与渲染。

透明度混合:简单理解,就是加了alpha通道混合,来实现透明度->a通道为1就不透明,为0就透明的线性计算。
在这里插入图片描述
这里列的都是要注意的地方:
SubShader {
Tags {“Queue”=“Transparent” “IgnoreProjector”=“True” “RenderType”=“Transparent”}


Pass{

Blend SrcAlpha OneMinus

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值