US1L6——如何进行Shader开发

如何学习Shader开发

学习Shader开发,主要要学习:数学相关知识、语法相关知识、着色器开发相关知识 等
学习了这些知识后,我们就能按照需求去处理渲染数据
最终才能在屏幕上显示出符合需求的图像效果

学习Shader开发,我们必须要学习的基本知识有

  1. 数学相关知识

    在渲染管线的几何阶段,我们最主要要处理的核心工作之一就是坐标转换
    我们要了解坐标转换的原理,就需要学习数学相关的知识,主要包含的内容有:

    • 向量相关知识
    • 线性代数相关知识(学习矩阵计算相关知识)

    在 顶点着色器 中,我们就需要利用这些知识完成坐标转换等相关的工作

  2. 语法相关知识

    我们已经知道我们需要在渲染管线的 几何阶段 中的 顶点着色器 和 光栅化阶段 中的 片元着色器 两个小阶段
    自定义处理数据来达到各种不同的表现效果
    而想要实现自定义逻辑处理,我们就需要学习着色器开发的特定语言
    在Unity当中的Shader开发,我们需要学习

    • Unity中的 ShaderLab 语法
    • 着色开发的 CG语言

    等等

  3. 着色器开发相关知识

    渲染管线的本质是将数据最终呈现为屏幕图像,那为了让最终的图像效果更加的好,更加的符合需求
    我们就必须学习一些效果处理的计算规范,比如:

    • 光照效果的颜色 如何通过计算得到
    • 纹理颜色 应该如何从图片中获取
    • 透明效果、阴影效果 应该如何计算处理

    等等