前言
箭头在游戏开发中也是常见的一种图形之一,在游戏中箭头通常会用作道路引导或者指示,告诉玩家前进的方向,是比较重要的提示信号。本文将通过使用程序化图形来实现循环滚动的箭头效果,实践和熟悉Shader Graph的相关节点。
首先创建一个Shader Graph文件命名为MovingArrows,再创建对应的材质球M_MovingArrows,并创建一个Texture2D的MainTex变量为默认输入的贴图数据。
创建单个箭头形状
创建单个的箭头将使用到Polygon多边形节点,设置其边数为3即三角形,创建一个Float类型的EdgeLength控制三角形的边长,这里我们创建等边三角形。然后创建一个Float类型的YOffset变量控制三角形在Y轴上的位置偏移,用来获取我们所需的箭头。将原始的三角形减去位置偏移的三角形就可以获得一个基础的箭头形状,节点及效果如下所示。
制作多个箭头
通过思考其实我们可以想到为了制作多个箭头,其实就是重复制作单个箭头形状的步骤,不同的地方是两个相减的三角形的位置需要不同,这样才能在可视范围内去做箭头的重复显示。因为是重复的操作,只是参数的不同,那么我们可以将制作单个箭头的这个步骤过程给封装起来,那么只需要传入不同的可控参数就可以制作出位置不同的箭头。此处需要用到S