前言
今天我们来实现一个比较简单实用的shader特效 - 2D Sprite影子效果
最终效果:
准备工作:
打开unity新建一个2D场景,导入一张2D人物图片和一张透明的图片(用来接收影子),修改图片Texture Type为 Sprite 类型,
拖入2D人物精灵图到场景,然后拖拽透明图到人物精灵图节点下,命名为shadow,用来接收影子 然后新建一个材质球,拖拽到 shadow 节点上,shader选择我们将要新建的shadow.shader。
场景如下:
实现思路:
其实很简单,就是把人物的纹理传递给shadow shader, 把alpha值大于0的像素的rgb变为黑色即可。
Shader:
// ---------------------------【2D Sprite 影子】---------------------------
C#:
using
最后把c#脚本拖拽到人物节点上,把shadow拖拽到shadow变量上,点击运行即可
最终效果:
最后
最后欢迎来我的GitHub Star,谢谢! 里面有我平时学习unity shader过程中实现的一些特效demo。