【《Unity着色器和屏幕特效开发秘笈》】学习整理:第一章

    虽然Unity最新版本已经更新到了Unity2017.但是由于此书为第二版,还是停留在Unity5中的表面着色器介绍上,所以我接下来也将会以Unity5.6版本为标准进行学习。
    虽然之前也零零散散看过些着顶点/片元色器相关的知识内容。但是由于平时用的比较少,所以多半都只停留在很浅层次的知识上。这本书是以表面着色器为主要内容介绍Unity中的Shader的,感觉很适合初心者,所以希望能以这本书为开端,学习下关于Unity中Shader方面的知识。

    以下内容都是感觉需要记住的一些东西和对一些内容的理解,可能会随着以后学习的深入而进行修改。

    第一章的内容相对较少,主要介绍了Unity从4到5的版本变化。
    其中比较重要的一条内容是关于光照强度变化的问题:Unity5中的光照强度是Unity4中的两倍。所以在使用比较旧的自定义着色器时,如果出现了过度曝光的现象,需要考虑这个可能性,并进行修改。
    第二个需要记录一下的是在展示一个普通的表面着色器时,使用了一个内建的函数:

                    pow(arg1, arg2)

    此函数表示的是数学上的幂函数,arg1表示底数,arg2是幂指数。
    例如:

        float x = pow(2, 3) => float x = 2 * 2 * 2 = 8

    此外,在书中使用此函数是进行颜色的计算,如下:

        fixed4 c = pow((_Color + _AmbientColor), _MySliderValue);

    其中c有4个分量(r, g, b, a),所以可知此函数应该是可以对不同分量进行单独的计算。

猜你喜欢

转载自blog.csdn.net/EverNess010/article/details/77141400