在学shader的过程中在GitHub中发现一个好玩的着色器TexturePanner,该着色器是一种美化的纹理平移器,融合了顶点位移、拉伸、uv旋转、滚动、扫描线和遮罩等效果,配合屏幕后期的Bloom效果,效果真的很棒,先贴几张图感受一下:
讲一下这个着色器的使用吧!
着色器分为了7个模块,看图:
其中顶点位移和顶点拉伸属于对顶点的操作,其他的基本为uv的操作。
基础模块:
其中的颜色混合模式,贴一下作者的说明(机翻,英语渣):
uv滚动、旋转模块:
自发光模块:
扫描线模块:
顶点拉伸模块:
顶点位移模块:
遮罩模块:
作者的工程里有两个相同的着色器(表面着色器),一个支持透明,一个不支持,为什么说相同?应为它们的实现逻辑基本一样,只是在标签上不同:
另外说一下,作者是用Unity 2017.4.8f1开发的,而我用的是Unity 2018.4.13c1,可能版本差异,打开的时候屏幕后期脚本MinDrawer.cs报错:
我并没有研究过屏幕后期,只是猜应该是UnityEngine.PostProcessing.MinAttribute(如果错了,请大佬指正),加上引用就好了。
最后,贴下地址:
屏幕后期:https://github.com/Unity-Technologies/PostProcessing
TexturePanner:https://github.com/adultlink/texturepanner