找回密码
 立即注册
查看: 5565|回复: 84

[渲染] Unity3D内置Shader详解

[复制链接]
发表于 2012-12-17 12:57 | 显示全部楼层 |阅读模式

Transparent Cutout Shader Family是对半透明对象Shader的一类补充,与Transparent Shader Family有所区别的是:Cutout Shader Faimily中的Shaders不允许绘制部分透明的区域。就是说,使用这种Shader绘制出来的对象,要么是全透明,要么是半透明。使用这个家族 Shader的对象通常用来转换和接受阴影。半透明对象中常有的排序问题在使用这类Shader的时候不存在。

       这个家族里面的所有Shader都定义了一个Alpha Cutout的数值,纹理中alpha大于Alpha Cutout数值的,被认为是不透明的,否则就是全透明的。通过这个alpha cutoff数值,我们可以控制哪些区域全透明,哪些区域不透明。(也可以用来做一些动画的控制,你懂的)

       这个家族只包含了6个Shader,分别是

       (1) Transparent Cutout Vertex-Lit

      

       (2)Transparent Cutout Diffuse

        

       (3) Transparent Cutout Specular

      

      (4) Transparent Cutout Bumped Diffuse

      

       (5)Transparent Cutoff Bumped Specular

      

       (6) Transparent Cutout Soft Edge UnLit

       这个是官方文档里面没有记录的,估计是后面新加入的。这个Shader绘制物体的正反两面,不受光照影响,常常用来绘制花草,树木,叶子。

       他包含了两个Pass,第一次将对象中Alpha大于alpha cutoff的部分以不透明的方式绘制。第二次关闭写zbuffer后,以半透明的方式绘制Alpha小于alpha cutoff的部分。这样做可以将绿草这种半透明的对象不需要排序就能绘制正确。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 1鲜花 +1 收起 理由
aa1287537617 + 1

查看全部评分

发表于 2012-12-19 16:33 | 显示全部楼层
Look Look!
发表于 2013-1-8 17:55 | 显示全部楼层
好文章~感谢楼主的分享~终于有一个系统的总结了
发表于 2013-7-7 11:44 | 显示全部楼层
好文章~感谢楼主的分享~终于有一个系统的总结了
发表于 2017-2-4 10:40 | 显示全部楼层
谢谢楼主的讲解
发表于 2017-3-13 11:36 | 显示全部楼层
很不错
发表于 2017-3-13 11:14 | 显示全部楼层
楼主是超人
发表于 2017-3-13 11:05 | 显示全部楼层
好帖就是要顶
发表于 2017-3-13 11:56 | 显示全部楼层
难得一见的好帖
发表于 2017-3-13 11:25 | 显示全部楼层
LZ真是人才
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-4-29 03:01 , Processed in 0.098018 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表