ssRender支持shader编写和Material的使用,今天介绍一下如何编写shader
1.首先创建工程在Resource窗口下点击Material创建New Material 和New Shader
2.在顶点着色器中输入顶点信息,这部分无特殊需求无需更改引擎端已经帮我们封装好了。
3.编写片段着色器片,在FS中也有一些内置的变量,ssUV表示纹理坐标范围[0,1],ssTime时间变量随时间变化,我们先简单的画一个矩形。首先把纹理坐标的范围调整至[-1,1],中心点在屏幕的中心。
4.创建矩形的颜色和矩形的范围,x范围在[0.2,0.7],y范围在[0.2,0.9]
5.接下来上色,在引擎端就可以看到一个粉色的矩形。
6.接下来我们再画一个圆,首先将笛卡尔坐标系转换成极坐标
7.在极坐标中规定屏幕中所有到圆心的距离小于0.8的点上色,这样就画出了一个圆
8.现在我们让这个圆动起来,因为sin函数的范围是-1到1,angle的范围是-pi到pi,用sin*3.14这样sin的范围改成-3.14到3.14周期性变化
9.现在不想让圆显示这么大只想留圆的边缘怎么办呢?把圆上色的宽度调整到0.02,让小于0.85的像色点不上色
10. 最终的效果
ssRender支持shader的编写,可拓展性很高,这里只介绍了单独shader相关的内容,后面会有Material相关的介绍.