(一)unity Shader之————————AlphaTest透明度测试

本文详细介绍了在Unity中如何从Surface Shader转换到vertex&fragment Shader,并保持AlphaTest透明度测试效果的一致性。通过理解`_Cutoff`变量的作用,以及利用`clip()`函数实现像素剔除,确保了大于指定阈值的像素被渲染,从而达到性能优化的目的。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在进行树木的叶子shader时,原来使用的是Surface shader,出于性能的考虑要转变成效果一致的vertex&fragment Shader,转变中遇到个小问题。

原来Surface shader的效果:

自己写的vertex&fragment Shader的效果:

经过研究,发现surface中定义了这么一个指令:

1.#pragma surface surf LambertLight alphatest:_Cutoff   

2.shader属性中定义了:

 _Cutoff("Alpha Cut", Range(0,1)) = 0.5

3.Tags标签加上"Queue"="AlphaTest"

Tags {"Queue"="AlphaTest" "RenderType"="XXX" XXX}

alphatest:_Cutoff

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值