Shader之学习笔记六
2017-02-17 20:04
253 查看
加群获取unity引擎源代码:580392083;
Shader "Unity Shaders Book/Chapter 5/FalseColor" { SubShader{ Pass{ CGPROGRAM #pragma vertex vert #pragma fragment frag //集合了最常用的函数、宏、结构体 #include "UnityCG.cginc" //使用一个结构体来定义顶点着色器的输出 struct v2f{ float4 pos:SV_POSITION;//存储顶点在裁剪空间位置信息 fixed4 color:COLOR0; }; //顶点着色器和片元着色器之间的通信 v2f vert(appdata_full v){ v2f o;//定义一个输出对象 o.pos = mul(UNITY_MATRIX_MVP,v.vertex); //UNITY_MATRIX_MVP观察模型投影矩阵 //可视化法线方向 o.color = fixed4(v.normal*0.5+fixed3(0.5,0.5,0.5),1.0); //可视化切线方向 o.color = fixed4(v.tangent.xyz*0.5+fixed3(0.5,0.5,0.5),1.0); //可视化副切线方向 fixed3 binormal = cross(v.normal,v.tangent.xyz)*v.tangent.w; o.color = fixed4(binormal*0.5+fixed3(0.5,0.5,0.5),1.0); //可视化第一组纹理坐标 o.color=fixed4(v.texcoord.xy,0.0,1.0); //可视化第二组纹理坐标 o.color=fixed4(v.texcoord1.xy,0.0,1.0); //可视化第一组纹理坐标的小数部分 //frac-->fractional :部分的 该函数表示返回指定数据的小数部分 //saturate : 把输入值限制到[0, 1]之间。 //any:测试x的任何组件是否为非零 o.color = frac(v.texcoord); if(any(saturate(v.texcoord)-v.texcoord)){ o.color=0.5; } o.color.a=1.0; return o; } fixed4 frag(v2f i):SV_Target{ return i.color; } ENDCG } } }
相关文章推荐
- Shader 学习笔记 ---Depth of Field 介绍
- Directx9.0 a shader approach 学习笔记1---初始化D3D
- Unity Shader 学习笔记 (七) 根据切线和法线方向设置模型颜色shader
- Shader 学习笔记 20151103
- Shader 学习笔记 20151102
- Shader 学习笔记 20151031
- Shader 学习笔记 ---Depth of Field 介绍
- Unity Shader 学习笔记 (五) 积雪效果Shader
- [Shader学习笔记]一些向量的几何知识
- 环境烘培与shader初步,学习笔记一
- Unity3D Shaderlab实战学习笔记 一 (《shaders for game programmers and artists》实践)
- NVIDIA cg语言编写shader的学习笔记
- OpenGL Shader 学习笔记(一)
- Unity Shader 学习笔记 (一) 创建Shader自带代码解读
- unity3d shader 学习笔记1
- Shader 学习笔记 (1)
- Unity ShaderLab 学习笔记(一)
- Shader 学习笔记 ---Z-Buffering or W-Buffering
- Shader 学习笔记 20151105
- Unity Shader 学习笔记 (八) 语义词与语义绑定