标签:cells base plane nes near oat ati lin add
内置文件
| cgnic name | Describe |
| UnityCG.cginc | |
| Lighting.cginc | 各种内置的光照模型,表面着色器会自动包含该文件 |
| HLSLSupport.cginc | 声明了许多用于跨平台编译的宏和定义 |
| UnityGlobalIllumination.cginc | 全局光照 |
内置常用结构体
| struct name | include variables |
| appdata_base | 顶点位置、顶点法线、第一组纹理坐标 |
| appdata_tan | 顶点位置、顶点切线、顶点法线、第一组纹理坐标 |
| appdata_full | 顶点位置、顶带你切线、顶点法线、四组纹理坐标 |
| appdata_img | 顶点位置、第一组纹理坐标 |
| v2f_img | (用于顶点着色器输出),裁剪空间位置、纹理坐标 |
内置变换矩阵
| matraix name | Describe |
| UNITY_MATRIX_MVP | 当前的模型·观察·投影矩阵,用于将顶点方向矢量从模型空间变换到裁剪空间 |
| UNITY_MATRIX_MV | 当前的模型·观察矩阵,用于将顶点方向矢量从模型空间变换到裁剪空间 |
| UNITY_MATRIX_V | 当前的观察矩阵,用于将顶点方向矢量从世界空间变换到观察空间 |
| UNITY_MATRIX_P | 当前的投影矩阵,用于将顶点方向矢量从观察空间变换到世界空间 |
| UNITY_MATRIX_T_MV | UNITY_MATRIX_MV的转置矩阵 |
| UNITY_MATRIX_IT_MV | UNITY_MATRIX_MV的逆转置矩阵,用于将法线从模型空间变换到观察空间, 也可用于得到UNITY_MATRIX_MV的逆矩阵。//可见链接最后的推导过程 |
| _Object2World | 把顶点方向矢量从模型空间变换到世界空间 |
| _World2Object | _Object2World的逆矩阵,用于将顶点方向矢量从世界空间变换到模型空间 |
内置变量-摄像机和屏幕参数
| variable name | type | Describe |
| _WorldSpaceCameraPos | float3 | 摄像机在世界空间中的位置 |
| _ProjectionParams | float4 | x=1.0(-1.0如果正在使用一个翻转的投影矩阵渲染),y=Near,z=Far,w=1.0+1.0/Far. 其中Near和Far分别是近裁剪平面、远裁剪平面 和摄像机的距离 |
| _ScreenParams | float4 | x=width,y=height,z=1.0+1.0/width,w=1.0+1.0/height, 其中width和height分别是摄像机的渲染目标(Render Target)的像素宽度和高度 |
| _ZBufferParams | float4 | x=1-Far/Near,y=Far/Near,z=x/Far,w=y/Far,该变量用于线性化Z缓存中的深度值 |
| unity_OrthoParams | float4 | x=width,y=height,z没有定义,w=1.0该摄像机是正交摄像机或 w=0.0该摄像机是 透视摄像机,其中width和height是正交投影摄像机的宽度和高度 |
| unity_CameraProjection | float4x4 该摄像机的投影矩阵 | |
| unity_CameraInvProjection | float4x4 该摄像机的投影矩阵的逆矩阵 | |
| unity_CameraWorldClipPlanes[6] | 该摄像机的6个裁剪平面在世界空间下的等式 按:左、右、下、上、近、远裁剪平面 |
UnityShader语义
从应用阶段传递模型数据给顶点着色器语义(模型空间中)
| Semantics | Describe |
| POSITION | 顶点坐标,一般为float4 |
| NORMAL | 顶点法线,一般为float3 |
| TANGENT | 顶点切线,一般为float4 |
| TEXCOORDn(n≥0) | 顶点的纹理坐标,TEXCOORD0表示第一组纹理坐标(依次类推),一般为float2或float4 |
| COLOR | 顶点的颜色,一般为fixed4或float4 |
| Semantics | Describe |
| SV_POSITION | 顶点坐标,结构体必须包含此变量修饰符 |
| COLOR0 | 第一组顶点颜色 |
| COLOR1 | 第二组顶点颜色 |
| TEXCOORD0 ~ TEXCOORD7 | 顶点对应的纹理坐标 |
| SV_Target | 输出值将会存储到渲染目标中 |
标签:cells base plane nes near oat ati lin add
原文地址:https://www.cnblogs.com/baolong-chen/p/11668645.html