Shaders & Effects

Unity Shader

# UnityShader 整理一些UnityShader效果

##################################################################################

#2018-06-19 更新

Distort

基于噪声图的扭曲效果
-扭曲Distort效果(基于给定的噪声图给像素加偏移)
-资源上传,新增一个特效资源包(https://assetstore.unity.com/packages/essentials/asset-packs/unity-particle-pack-73777)

-Assets\Examples\Distort
-参考
https://blog.csdn.net/puppet_master/article/details/70199330

##################################################################################

#2017-10-08 更新

Bloom

-图像中较亮处向周围扩散,造成一种朦胧的效果
-阈值提取亮度纹理,模糊处理模拟光的扩散,然后跟原纹理混合

-Assets\Examples\Bloom
-参考
《Unity Shader入门精要》 冯乐乐

##################################################################################

#2017-10-07 更新

高斯模糊

-权重矩阵计算邻域内像素的加权平均值去替代中心像素值

-Assets\Examples\GaussianBlur
-参考
http://blog.csdn.net/cbbbc/article/details/68490605
http://blog.csdn.net/poem_qianmo/article/details/51871531

##################################################################################

#2017-10-05 更新

饱和度,亮度,对比度

-饱和度
指色彩的鲜艳程度,也称色彩的纯度。饱和度取决于该色中含色成分和消色成分(灰色)的比例。
含色成分越大,饱和度越大;消色成分越大,饱和度越小。
纯的颜色都是高度饱和的,如鲜红,鲜绿。混杂上白色,灰色或其他色调的颜色,是不饱和的颜色,如绛紫,粉红,黄褐等。
完全不饱和的颜色根本没有色调,如黑白之间的各种灰色

-亮度
图像中RGB值的大小,RGB各个值越大,那么亮度越亮,越小,亮度越暗
-对比度
明暗区域最亮的白和最暗的黑之间不同亮度层级的测量,差异范围越大代表对比越大,差异范围越小代表对比越小。
一般来说对比度越大,图像越清晰醒目,色彩也越鲜明艳丽;而对比度小,则会让整个画面都灰蒙蒙的

-Assets\Examples\Filter
-参考
http://blog.csdn.net/puppet_master/article/details/52423905

##################################################################################

#2017-09-30 更新

滤镜

-用遮罩贴图(尺寸256*1刚好覆盖颜色的取值范围)保存颜色的偏移值(比如往暖色调方向偏移就是类似暖光滤镜)
-然后待处理像素的rgb分别在遮罩里取样输出,就完成了颜色值的偏移(相当于遮罩图片保存了偏移计算的结果)
-Assets\Examples\Filter
-常见用途,照片处理

##################################################################################

#2017-09-08 更新

顶点动画

-顶点着色器阶段修改坐标,从而修改网格形状
-Assets\Examples\VertexAnimate
-常见用途,模拟动画,比如水波浪,树叶,草,头发,飘带,旗帜的风动
-参考
《Unity Shader入门精要》 冯乐乐
http://superzhan.cn/blog/2016/08/17/unity_surface_vertex/

##################################################################################

#2017-09-07 更新

贴图动画

-时间轴上更改采样UV,达到更改渲染结果的目的
-Assets\Examples\TextureAnimation
-常见用途,动画表情,滚动物体(背景,水,瀑布),原理简单,适用性强,性能压力也不大
-参考 《Unity Shader入门精要》 冯乐乐

##################################################################################

#2017-08-31 更新

Mirror Reflection 镜面反射效果(RenderTexture方法实现)

-观察相机根据镜面计算出镜像相机(关于镜面对称),把镜像相机渲染出来的RenderTexture传参给镜面shader,采样结果跟镜面混合
-Assets\Examples\MirrorReflection
-PS:
-1,OnWillRenderObject的时候计算一次相机位置
-2,镜像相机culling mask需要忽略镜面
-参考
http://www.gad.qq.com/article/detail/18544