【游戏开发阅读列表1】Unity Shader 入门到进阶

动机

在豆瓣上看到有人写《GameDev Weekly》 系列,主要是记录每周阅读的游戏开发相关内容,包括视频、文章等。但我自身水平较弱,他分享的一些内容我还看不懂。于是自已也打算写类似的系列,不一定是weekly,把自己阅读过的有价值的内容尽量分类,按从入门到精通的顺序罗列出来,也做一些总结。

所分享的内容都亲自品尝过,保证无毒无害,营养价值极高!

入门


这是一套非常基础的入门指南,真的是猫都能学会,作者所用语言尽量通俗,很少出现“高大上”的词汇。第一篇主要介绍了概念和语法。第二篇举了一个应用场景,看完会有更直观的认识。缺点是只涉及surface shader。对于理解概念和了解语法,初步认识shader有很大意义!


Alan Zucconi 写的基础系列:

前两篇和前面推荐的“猫都能学会”系列内容重叠很多,可能有借鉴之处。相对而言这里的前两篇更深入一些,“猫都能学会”更通俗一些。

第三篇仍然是surface shader, 讲解了Lambertian和Blinn-Phong两种光照模型,以及Unity中现在使用的光照模型PBR(Physically Based Rendering)。

第四篇介绍了Vertex and fragment shader。这种shader往往不使用物理信息(光照、反射率、光滑度等),因此这种shader经常被用来做非真实的渲染、2D特效。

最后一篇讲了一些屏幕特效,比如老的CRT晶体管电视的效果。


接下来是两个视频:

前面只看文字可能到自己操作的时候可能还是有困难,视频的话更直观,并且都附带源码,还有课后作业。实现的效果也非常惊艳!

2D shader 实例


两个简单的shader在2D中的应用场景。

3D shader 实例


第一个系列写得非常详细,对于理解自然光相关物理有很大帮助!

官方实例中有不少惊艳的效果值得学习。


Shadertoy

最后推荐这个网站 Shadertoy,有非常多效果,找到自己喜欢的,学习下源码。有自己的想法之后也就可以在上面分享自己的shader啦!不过学了前面的unity shader的内容,并不会用shadertoy,所以再提供一个上手指南。

猜你喜欢

转载自blog.csdn.net/Techmonster/article/details/81191220