Unity3D ShaderLab开发实战讲解

从本博客开始,本人主要是通过《Unity3D ShaderLab开发实战讲解》这本书,同读者学习和分享Unity3D中Shader编程的相关知识。

本文首先介绍下《Unity3D ShaderLab开发实战讲解》这本书的内容和简介。

说句题外话,这本书买了差不多2年多了,刚开始想着看书学习,到后来就没有坚持下去。原因有两点,第一,Shader编程需要一定的OpenGL基础,编程语言跟java或者C#相比确实比较的灰色难懂。第二,工作中实践的机会比较少,Shader的应用可能实在游戏开发的领域比较多一点,而本人在工作中使用Shader的机会确实会少很多。这两点导致了这本书看了头三章基础的东西就停住了,学习的动力不大。

而这次之所以想重新学习这本书,一个直接的原因是面试中对Shader的知识模棱两可,不仅是Shader,还有其他的一些工作中的知识点都理解的不够深入,不管怎么样就从Shader的学习开始吧,真正深入的学习知识,不仅要知道怎么用还要知道背后的原理,这个才是更加重要的。

所以在Shader学习的这个系列中,除了介绍书中每个章节的关键知识点外,会对知识点内部原理以及扩展知识等进行深入分析。也欢迎大家在博客下留言写出你想了解的知识点,大家一起探讨学习。下面就开始本文内容。

本书的内容提要(摘自书目录)

全面讲解了Unity Shader渲染的实战技术,全书分为五篇共33章,

主要内容为:

  1. Shader在3D游戏中的作用、Shader的实例化、Shader的实现语言等;
  2. Unity中Shader的形态、SubShader的重要标签、可编程Shader、Surface Shader;
  3. Shader中用到的各种空间的概念和Shader中的投影矩阵;
  4. 基本的光照模型;
  5. 被执行的Pass,包括渲染路径和Pass的LightMode标签;
  6. VertexLit渲染路径,包括顶点照明和Unity存放光源的方式;
  7. Forward渲染路径;
  8. 基于光照贴图的烘焙照明;
  9. 基于LightProbes的照明;
  10. 平面阴影;
  11. 球体阴影;
  12. 体积阴影;
  13. 映射阴影;
  14. 内置的阴影;
  15. Pass的通用指令开关;
  16. 固定管线;
  17. Surface Shader;
  18. 凹凸材质;
  19. 卡通材质;
  20. 镜面材质;
  21. 半透明材质;
  22. 体积雾;
  23. Wrap Model新解;
  24. 面积光;
  25. 体积光;
  26. 材质替代渲染;
  27. 后期效果;
  28. 地形;
  29. 投影;
  30. Shader的组织和复用;
  31. 你必须知道的渲染概念;
  32. 基于渲染路径的优化;
  33. 移动平台上的优化;

从本文开始,我会尽量用33篇博客来全面解读这本书。

猜你喜欢

转载自my.oschina.net/u/3227483/blog/1807426