level 8
Shader运行在GPU上
图形渲染工作流程
模型——材质——shader
2023年06月26日 05点06分
3
level 8
不同的shader可以共享相同的数据
material相同于程序数据
shader相同于算法
2023年06月26日 05点06分
5
level 8
两种不同类型的shader
1.SurfaceShader ——Unity发明的——最终翻译成Vertex FragmentShader
2.Vertex FragmentShader
2023年06月26日 05点06分
6
level 8
shader 由属性块
Properties
{
}
着色器部分
SubShader
{
}
2023年06月26日 05点06分
7
level 8
创建一张纯色纹理
_MyTexture(" my texture" ,2D) = "white"{}
2023年06月26日 06点06分
8
level 8
bump表示法线贴图 自动初始化成 808080,表示没有凹凸感的贴图
2023年06月26日 06点06分
10
level 8
创建一张纯色纹理
_MyTexture(" my texture" ,2D) = "bump"{}
2023年06月26日 06点06分
11
level 8
subshader是没法直接使用属性的
必须再声明
sampler2D _Mytexture;
对Mytexture进行2D纹理采样
2023年06月26日 06点06分
12
level 8
【什么是纹理采样?】
按照纹理坐标抓取纹理贴图的像素颜色值的过程
用纹理过滤方式
有线性 各向异性采样
2023年06月26日 06点06分
13
level 8
【怎样采样?获得采样结果】
tex2D
用这个函数
函数名称区分大小写
属性不区分
subshader区分
2023年06月26日 06点06分
14
level 8
【tex2D】
传入纹理图,和uv纹理坐标
surf方法unity自动调用
主纹理必须叫 _mainTex,否则unity不会传递给Shader
uv_Maintex
采样器 必须 _MainTex
2023年06月26日 07点06分
15