最近学Shader有点心得,做了一个SLG画线模块。github地址:https://github.com/871041532/SLGDrawLine
性能有能再提高的地方,欢迎大佬指点。
1.介绍
- 画线模块,可用于SLG游戏行军线。
- 多个不同速度、颜色、长度的线在一个DrawCall中实现。
- 材质中ShowLength控制两端显示的长度,AlphaLength控制渐隐长度,AllShowLength是一个临界值,长度小于它的线全部显示,长度大于它的线出现中间渐隐消失效果。(ShowLength、AlphaLength控制这两个效果)
- 只有一个C#脚本文件和一个Shader,100多行代码。
2.使用demo
外部接口,只有两个:
- 画线:int handle=LineManager.Instance.DrawLine(Vector3 start,Vector3 end,Color color,float speed);
- 回收线:LineManager.Instance.BackLine(int handle);