关于matcapShader的研究
来源:互联网 发布:琅琊榜 数据 编辑:程序博客网 时间:2024/06/11 22:41
在群里偶尔听大家聊起matCapShader,从网上找了些资历研究了下,成果如下。
Shader "Unlit/matCapShader2"{Properties{_MainTex ("Texture", 2D) = "white" {}_MatCap ("MatCap" , 2D) = "white"{}}SubShader{Tags { "RenderType"="Opaque" }LOD 100Pass{CGPROGRAM#pragma vertex vert#pragma fragment frag#pragma multi_compile_fog#include "UnityCG.cginc"struct appdata{float4 vertex : POSITION;float3 normal:NORMAL;float2 uv : TEXCOORD0;};struct v2f{float2 uv : TEXCOORD0;float2 matCap:TEXCOORD1;UNITY_FOG_COORDS(1)float4 vertex : SV_POSITION;};sampler2D _MainTex;float4 _MainTex_ST;sampler2D _MatCap;float4 _MatCap_ST;v2f vert (appdata v){v2f o;o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);o.matCap.x=mul(UNITY_MATRIX_IT_MV[0],v.normal);o.matCap.y=mul(UNITY_MATRIX_IT_MV[1],v.normal);o.matCap=o.matCap*0.5+0.5;o.uv = TRANSFORM_TEX(v.uv, _MainTex);UNITY_TRANSFER_FOG(o,o.vertex);return o;}fixed4 frag (v2f i) : SV_Target{// sample the texturefixed4 col = tex2D(_MainTex, i.uv);fixed4 mat = tex2D(_MatCap, i.matCap);// apply fogUNITY_APPLY_FOG(i.fogCoord, col);return col+mat;}ENDCG}}}首先上两张截图
然后稍微更改了下算法的截图
最后是matCap的贴图
以上,结束。。如有不正确的地方。还请大家指正~
附shader参考网址:http://www.cnblogs.com/Tearix/p/6878954.html
阅读全文
0 0
- 关于matcapShader的研究
- 关于FoxMail的研究
- 关于Len()的研究
- 关于foxmail的研究
- 关于GIS的研究
- 关于UndoInternal的研究
- 关于探针的研究
- 关于XML的研究
- 关于doom的研究
- 关于进度条的研究
- 关于javap的研究
- 关于素数的研究
- 关于log4j的研究
- 关于rmi的研究
- 关于红黑树的研究
- 关于ceph的研究
- 关于SqLite的研究
- 关于委托的研究
- -ms-,-moz-,-webkit-
- Office使用经验——一键移除文章中的多余空行(分享VBA源码)
- 用nodejs创建一个https服务器
- Django+Apache+mod_wsgi阿里云环境搭建(一)
- C++的三种访问权限与三种继承方式
- 关于matcapShader的研究
- android基础知识---用ActivityLifecycleCallbacks实现后台回来展示广告
- java 线程
- 一.Redis的介绍和安装(Linux环境)
- Python 写入MySQL乱码
- leetcode[Intersection of Two Arrays]
- 用nodejs创建一个http2服务器
- Linux学习之Varnish
- setTimeout()延时器