许久没有更新博客,先说说近况,前不久刚刚花了一点时间学习了一下bootstrap重新给自己的博客装修了一下,还是主打简约风,话说已经好久没有做过web开发的我,又花了些时间重温,而且这个属于web前端的范畴了,只能说马马虎虎了,有时间再继续学习吧。而重中之重的是我越来越对TA感兴趣了,而想成为一名好的TA,Shader就是必不可少的技能之一。
《UnityShader入门精要》这本书我两年前就已经买了,但是时至今日,我才第一次将它通读完,而且是经过了3次,我才成功完整的读完了一遍,第一遍的时候,面对满篇的专业名词,和各种数学公式,物理知识,可以说是举步维艰,只看到第四章,就放弃了。第二次,我打算将看不懂的地方先跳过,想先尝试完整的看一遍,基本跳过了很多数学公式,矩阵变换的内容,直接阅读unity的shader代码,这一次,似乎比之前要能读进去很多,然而看了又没有多少,由于工作太忙,又放下了,而工作中实际需要和shader打交道的地方也不多,就这么一晃几个月又过去了,直到第三次。也就是大约一个月前,我又开始下定决心,一定要把它看完。第三次看的时候我依然是从头看起,但是我发现了一件事,古人云,温故而知新,以前不是很能理解,现在再读的时候,真的有种感觉,每一次去读同一本书的时候,会觉得越来越容易读,原本一些不懂的名词和地方,也许是因为工作中慢慢接触到,不经意间在积累,真的发觉这一次读的时候,比前两次好了很多,再加上刚好在项目中有遇到现成的shader问题解决,明显觉得这一次比前两次要对shader的理解强很多,顺带说一个小插曲,就是我们使用的绿幕剔除技术来实现真人放置在我们AR场景中的玩法,而本来在网上可以有现成的shader可以用,但是有个问题,就是不支持阴影,而我刚好读到了书里那段关于混合阴影的实现,现学现卖,把这个问题解决了,而技术这行我认为想要学习的最快的方式就是在实际工作中运用,原本单纯的啃书本,要有用的多。
读完这本书后,我觉得最大的收获是可以基本看懂unity的shader了,即使遇到了不知道的宏定义或者关键字,我也知道了可以在哪里去查,算得上是入了个门吧,之前看到很多关于这本书的评价,我个人觉得还是比较符合的,确实是一本非常适合用于入门的书,但是切记,只是入门unity shader,而不是所有的shader,因为读了书你才会知道unityshader并不等于传统的shader,当然其中的算法,原理是相通的。接下来我也有在考虑要不要出一个读书笔记系列,就是关于这本书的,因为自己写博客其实也是一个温习的过程,但无论如何,我觉得这第三遍绝不是终点,只是这一遍算是收获比较大的,至今书上仍有些地方看的还是一知半解,还需要我不断的阅读,和查阅资料,并且在工作中实践,才能真正的理解。我个人觉得现在做游戏也好,AR也罢,都越来越看中画面效果了,而shader是伟大的,因为各种炫酷的效果,本质玩的都是shader,即使你有很好的创意,如果不能把它实现出来,也将毫无意义,而shader恰恰就是关键,往后学习shader的路还很长,这,仅仅只是个开始。