Shader在游戏中的作用非常重要,然而学习shader的路却不是那么容易,它涉及到方方面面的知识和基础, 比如:3D数学,计算机图形学甚至硬件。很多朋友为了达到一种特别的功能,往往在互联网上四处搜索别人的shader,最后却找不到适合自己需求的东西。与其纠结在无法理解和改良别人shader的痛苦中,不如放弃盲目和被动,转而从头学习这种“代码的艺术”。 本教程“授人以渔”,为大家带来零起点的shader教学,从图形硬件的发展史开始,讲GPU可编程管线,讲现代shader language的发展历程,让大家能从一个纵深的过程中宏观的了解这种技术的前世今生。教程以Unity引擎为环境 ,重点放在Cg语言的学习和经典光照的计算上。 为了突破难点,作者铺助了大量图文课件进行讲解3D数学和图形学知识,手把手在unity环境下进行逐行代码的coding教学,期望帮助大家进入Shader编程的大门,最终能在实际的工程实践中有些创造和创新。 课程大纲: 初级课时 1. 图形硬件简史与可编程管线 2. Shader和渲染管线 3. 三大主流编程语言 HLSL/GLSL/ Cg 4. Unity shader 的组织形式 (Shaderlab) 5. 固定管线shader (Fixed function shader)_1 6. 固定管线shader (Fixed function shader)_2 7. Surface shader 1 8. Surface shader 2 9. Cg 语言入门 1 输入输出和语义 10. Cg 语言入门 3 profile和基本数据类型 11. Cg 语言入门 4 数据类型和swizzle操作 12. Cg 语言入门 5 流程控制 13. Cg 语言入门 6 Cg 函数 1 14. Cg 语言入门 6 Cg 函数 2 15. 3D数学基础 1 - 坐标系 16. 3D数学基础 2 - 向量 17. 3D数学基础 3 - 矩阵 18. 3D数学基础 4 - 矩阵和行列式 19. 3D数学基础 5 - 矩阵的逆 20. 3D数学基础 6 - 矩阵和变换 21. 3D数学基础实例- C# 矩阵变换与三维渲染 1 22. 3D数学基础实例- C# 矩阵变换与三维渲染 2 23. 3D数学基础实例- C# 矩阵变换与三维渲染 3 24. 3D数学基础实例- C# 矩阵变换与三维渲染 4 25. 3D数学基础实例- C# 矩阵变换与三维渲染 5 26. 3D数学基础实例- C# 矩阵变换与三维渲染 6 27. Vertex Shader - 顶点数据的输入与输出 1 28. Vertex Shader - 顶点数据的输入与输出 2 29. Vertex Shader - 更好的数据组织方式struct 30. Vertex Shader - Uniform 与 properties属性 31. Vertex Shader - 几何变换 —MVP矩阵变换 1 32. Vertex Shader - 几何变换 —MVP矩阵变换 2 33. Vertex Shader - 几何变换 —顶点颜色变换 1 34. Vertex Shader - 几何变换 —顶点颜色变换 2 35. Vertex Shader - 几何变换 —顶点位移 36. Vertex Shader - 几何变换 —扭曲 37. Vertex Shader - 几何变换 —波 38. 图形学入门 - 法向量与光照 39. 基础实例 - C# 光照渲染 1 40. 基础实例- C# 光照渲染 2 41. 基础实例- C# 光照渲染 3 42. 基础实例- C# 光照渲染 4 43. 图形学入门 - 实现漫反射 Diffuse shader 1 44. 图形学入门 - 实现漫反射 Diffuse shader 2 45. 图形学入门 - 反射向量与Cg reflect函数 46. 图形学入门 – 实现phong 光照 47. 图形学入门 - 半角向量与BlinnPhong 48. Fragment shader - 片段级光照 1 49. Fragment shader - 片段级光照 2 50. Fragment shader - 片段级光照 3 51. Fragment shader - 片段颜色混合 52. Fragment shader - 边缘泛光shader 1 53. Fragment shader - 边缘泛光shader 2 54. Fragment shader - 片段级模型动态变色 1 55. Fragment shader - 片段级模型动态变色 2 56. Fragment shader - 片段级模型动态变色 3 57. Fragment shader - 2D纹理采样 1 58. Fragment shader - 2D纹理采样 2 59. Fragment shader - 2D纹理采样 3 60. Fragment shader – UV动画 1 61. Fragment shader – UV动画 2 62. Fragment shader – UV动画 3 63. Fragment shader –纹理混合动画 1 64. Fragment shader –纹理混合动画 2 65. Fragment shader – 程序纹理 66. Fragment shader – 程序纹理水波仿真1 67. Fragment shader – 程序纹理水波仿真2 68. Fragment shader – 程序纹理水波仿真3 69. Fragment shader – 程序纹理水波仿真4 70. Fragment shader - Alpha 与 blend 运算 71. Fragment shader 7 - 实现半透明着色 1 72. Fragment shader 7 - 实现半透明着色 2 73. Fragment shader - 纹理法线与凹凸贴图 1 74. Fragment shader - 纹理法线与凹凸贴图 2 75. Fragment shader - 纹理法线与凹凸贴图 3 76. Fragment shader - 纹理法线与凹凸贴图 4 77. Fragment shader - Cube纹理采样 78. Fragment shader - 实现高效的reflection shader |
Shader编程教程_Shader新手入门视频教程_Shader编程从入门到精通
猜你喜欢
转载自blog.csdn.net/wiki99/article/details/80556270
今日推荐
周排行