|
〖课程介绍〗: 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 语言入门 6Cg 函数1 14.Cg 语言入门 6Cg 函数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.图形学入门-实现漫反射 Diffuseshader1 44.图形学入门-实现漫反射 Diffuseshader2 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
|
|