US3——Shader开发知识

前置知识点

Unity Shader 入门相关必备基础知识的学习,其中重要的知识有:

  1. 渲染管线相关(应用阶段——>几何阶段——>光栅化阶段)
  2. 数学基础相关(点、向量、矩阵、坐标系变换)
  3. 语法基础相关(ShaderLab语法、CG语法)

通过这些知识的学习,我们基本上能够大致了解了应该如何进行Shader开发

Shader 开发知识

我们可以通过 CG 等语言结合 ShaderLab 语法规则来编写 Shader 文件
我们需要在顶点、片元着色器的回调函数中具体实现着色器逻辑
在顶点着色器回调函数中我们利用语义获取到模型中的数据
将数据处理完毕后又传递给片元着色器回调函数中进行处理
还可以结合 ShaderLab 属性来进行更多的可变处理,从而呈现出不同的表现效果

我们之后学习的大部分 Shader 相关的知识,其实本质上都是一些计算公式、计算规则(算法)
Shader 的本质其实就是利用各种数学计算,呈现出不同的表现效果

本系列学习内容:

  1. Shader 开发入门

    学习了这些知识,我们才能实现最基础的渲染效果

    1. 光照效果
    2. 纹理效果
    3. 透明效果
  2. Shader 开发基础

    1. 渲染路径(前向渲染,延迟渲染等)
    2. 多种光源处理(存在多种不同类型光源的情况下的光照计算方法)
    3. 阴影(让物体投射阴影、让物体接受阴影)
    4. 标准光照着色器(结合漫反射与高光反射,多种光源,阴影的可通用的 Shader)
    5. 高级纹理(立方体纹理:可实现天空盒,反射,折射,菲涅尔反射等、渲染目标纹理、程序纹理)
    6. 动态效果(修改纹理采样范围实现纹理动画,偏移模型顶点位置实现顶点动画)
    7. 屏幕后期处理效果(将渲染完毕的画面传递到 Shader 内处理,进一步加工最终画面,实现边缘检测,模糊等效果)
    8. 深度和法线纹理(施工中)