Unity shader(CG) 写一个 散色、折射、反射、菲涅尔、gamma、简单后期屏幕特效

12 篇文章 0 订阅
11 篇文章 0 订阅

Unity shader(CG) 写一个 散色、折射、反射、菲涅尔、gamma、简单后期屏幕特效

1.自生要求是很重要的,当然不是什么强迫工作之类的,而是自己有限的能力上不断的扩展兴趣上的内容。
2.用生活的眼光去发现shader的存在形式,许多灵感都来自于大自然,比如 火苗的动态抖动 像 frac/fract(time)函数,甚至小草被风吹也像frac/fract(time).这里写图片描述http://www.glslsandbox.com/e#24095.1
3.千万不要有压力,而是动力,每次调颜色和参数都有不经意的收获,多次尝试是产生意外之一,感觉会油然而生,当然要抓住它它它它它它它它。。。


转载请出处地址 http://blog.csdn.net/baidu_26153715/article/details/45420029 恬纳微晰


如果写效果头疼,那么

  1. 1.这这这,不就是透射的感觉么?

    这里写图片描述

  2. 折射率改变

    这里写图片描述

  3. 散色率的改变
    这里写图片描述

  4. 透射颜色改变
    这里写图片描述

    如果看效果眼睛疼,那么

  5. 后期屏幕特效-HDR之亮度映射效果
    这里写图片描述

  6. 后期屏幕特效-HDR之色调映射效果
    这里写图片描述

  7. 后期屏幕特效-模拟gamma效果
    这里写图片描述

  8. 什马效果
    当然除了以上效果,还有bloom,glow,streak,ghost,blur,flare,次表面散色等等效果,你直接wiki和Nvida官网上得到相关资料。当然搭配得好才是,,,不然耗了硬件又耗了审美观。。

慢慢来,不要强求一下子完美

  • 反射
    这里写图片描述
    物理上我们常常学到的是环境中的光线入射到介质里,产生了折射变化。而对于一个unity游戏引擎来说光是非常宝贵的,unity5.x中的GI全局光照什马的采用so easy版光线追踪,什马的ray_cast、ray_track、ray_march等等,我们常用到的还是ray-cast…….

于是我们可以用视线投射出光线,逆着光路查询颜色。

这里写图片描述
当然至于查询颜色,像这种360度无死角反射,让你会毫不犹豫的想到它(?????)

这里写图片描述
对!!!就是它了,cubemap,当然你也要先samplerCUBE采样器采样。

  • 那散色与折射呢?
    这里写图片描述
    亦夫如是,不过要下点功夫而已,什么是散射,它和折射到底是父子关系还是夫妻关系?(这个嘛!属于物理,可以wiki百科啊、、)

    那怎么用shader写出散色,如果知道rgb通道,那么做做手脚也是不错的选择。(三原色,哈哈哈!!!)
    这里写图片描述

  • fresnel(菲涅尔)好高大上的样子
    这里写图片描述
    OK!!!就是这么着,这是我简版菲涅尔。
    其实它就是我们可以认为的边缘光照(这里写图片描述),有可以用它做为描边效果,而我用它做做差值反射与折射效果,这个pow()嘛!你懂得!

用用后期效果试试

  • 我实在是不行了,快来救救我,于是
    这里写图片描述
    对,没有猜错,这就是so easy版camera与shader打交道的方式之一

    这里写图片描述
    这是传递camera图像的,a图片传给shader(gpu),b图片就是shader渲染完的图片给camera显示啊。你当然可以看看 unity 自带的 API说明就是了。

  • 后期shader

    这里写图片描述就是Ta,一个又是自己写的shader,,,其实自己写shader才放心,还能变花样,还能优化!当然也有人怀疑自己弄得太神,哈哈哈哈哈哈,天朝gpu编程有多大的历史啊,有好多靠wiki学习,再说这么点代码,太美妙了。

  • 亮度(Luminance)

    用用Luminance是个不错的选择

    这里写图片描述
    对亮度合理的分配。

  • 色调映射(toneMapping)
    http://en.wikipedia.org/wiki/Tone_mapping这是Tonemapping的wiki解释
    这里写图片描述

    对!就它了,图中圈出的so easy版tonemapping 过滤器。。。。
    这里写图片描述
    当然,还有更好的tonemapping过滤器,你可以自己去发明或看看理论。

  • gamma
    一个so easy gamma版本
    这里写图片描述

  • 更叼的算法和特效,你说呢?
    那是不会放出来的,有的埋在土里,有的就在wiki中,作为一个博客,为了不让别人把重要的东西复制走了,你除了水印就是代码替换,保护自己的著作版权。。。

    视觉一览通

    这里写图片描述这里写图片描述这里写图片描述

    我认为雕像可以的样子

    背景-全景图cubemap来自wiki百科下载,特效渲染归 恬纳微晰所有

    这里写图片描述
    这里写图片描述
    这里写图片描述
    这里写图片描述

  • 有空把 曲面细分 拿来说说,把 sun shader拿来说说,还有好多多…………
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值