Unity3d shader之SWAP Force Depth-of-Field Shader

由于博主常年逃课,所以期末考试期间只能突击,但偶尔还能拿个奖学金啥的,哈哈,所以近一个月没有做游戏,也没有发博客= =。。。更醉的的是考完试还要上三周的日了*的jsp课程设计= =。。。。

这个景深的方法很简单

我们需要求的是CoC(circle of confusion)模糊圈

CoC与R相关 主要原理如下图所示

alpha是透镜的半径 zf为焦点,z为物距

要求R知道一些高中的三角公式就可以了


再根据CoC决定模糊程度 需要的变量为zf焦点-决定模糊的深度位置,alpha透镜的半径-决定模糊的域的范围,direction-模糊方向

需要注意的是因为循环的次数是变量所以需要用到texel fetch方法,在unity中是tex2Dlod


博主又弄了一下sparkle版的,改动下模糊方式即可,这个可以自由发挥

60fps完美运行


普通模糊:







sparkle





博主近期渲染:最近用unity5弄的一些渲染


                              ---- by wolf96   http://blog.csdn.net/wolf96






  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值