Unity Shader (四)Alpha测试(alpha test)
2017-01-10 15:53
162 查看
前言:经过片段处理的像素,这个时候理论上要去经过混合运算了,但是为了优化混合,程序还可以使用alpha测试进行像素剔除。
常用:AlphatTest一般用于具有凹型物体,比如树叶
代码
例子跟之前的一样,一个道童,这里不截图了,当_cutoff =1 的时候你会发现道童不渲染了,也就是没有比alpha值还大的像素了
AlphaTest的分类
Greater/GEqual/Less/LEqual/Equal/NotEqual/Always/Never常用:AlphatTest一般用于具有凹型物体,比如树叶
代码
Shader "Custom/Alpha Test" { Properties { //定义一个贴图 _MainTex ("Base (RGB)", 2D) = "white" {} _CutOff("Alpha cutoff", Range(0, 1)) =0.5 } SubShader { Pass { alphatest greater[_CutOff] SetTexture [_MainTex] { Combine texture * primary //正面赋予贴图 } } } FallBack "Diffuse" }
例子跟之前的一样,一个道童,这里不截图了,当_cutoff =1 的时候你会发现道童不渲染了,也就是没有比alpha值还大的像素了
相关文章推荐
- Alpha 和Beta 测试 (Alpha and Beta Test)
- (转)mobile cpu上禁用alpha test的相关总结
- mobile cpu上禁用alpha test的相关总结
- blend关于透明度的弊端和其alphatest的取舍
- 关于AlphaTest
- MRT与AlphaTest
- OpenGL中alpha测试GL_ALPHA_TEST
- OpenGL中alpha测试GL_ALPHA_TEST
- Unity shader学习之Alpha Test的阴影
- 【Unity Shaders】Alpha Test和Alpha Blending
- Unity shader学习之Alpha Test
- 能穿透alphatest纹理的shadowmap
- 对上一篇的补充,在用alpha test方式绘制草地、树林时,一种避免排序又能达到理想效果的技巧
- (转)【Unity Shaders】Alpha Test和Alpha Blending
- 深度测试Alpha混合方法Alpha测试
- mobile cpu上禁用alpha test的相关总结
- 【Unity Shaders】Alpha Test和Alpha Blending
- 【Unity Shaders】Alpha Test和Alpha Blending
- Tcxxs'J BlackJack AlphaTest发布
- Alphatest vs. Alphablend