cartoonShader学习
来源:互联网 发布:网络推广软文怎么写 编辑:程序博客网 时间:2024/06/07 13:35
突然发现自己没有记笔记的习惯,特此开个博客纪录下自己的成长,天道出勤,自强不息。
Shader "Unlit/cartoonShader"{Properties{_MainTex ("Texture", 2D) = "white" {}_Color("color",COLOR)=(0.5,0.5,0.5,0.5)_Gloss("Gloss",float)=0_SpecularColor("SpecularColor",COLOR)=(1,1,1,1)}SubShader{Tags { "RenderType"="Opaque" }LOD 100Pass{CGPROGRAM#pragma vertex vert#pragma fragment frag#pragma multi_compile_fog#include "UnityCG.cginc"#include "Lighting.cginc"struct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;float3 normal:NORMAL;};struct v2f{float2 uv : TEXCOORD0;UNITY_FOG_COORDS(1)float4 vertex : SV_POSITION;float3 worldNormal:TEXCOORD1;float3 worldLightDir:TEXCOORD2;};sampler2D _MainTex;float4 _MainTex_ST;float _Gloss;float4 _Color;float4 _SpecularColor;v2f vert (appdata v){v2f o;o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);o.worldNormal=normalize(mul(v.normal,(float3x3)_World2Object));float3 worldPos=mul(_Object2World,v.vertex);o.worldLightDir=normalize(_WorldSpaceLightPos0.xyz);o.uv = TRANSFORM_TEX(v.uv, _MainTex);UNITY_TRANSFER_FOG(o,o.vertex);return o;}fixed4 frag (v2f i) : SV_Target{float halfLight=(dot(i.worldNormal,i.worldLightDir)*0.5+0.5);fixed3 ambient=UNITY_LIGHTMODEL_AMBIENT.xyz;float3 viewDir=normalize(_WorldSpaceCameraPos.xyz-i.vertex);fixed3 halfDir=normalize(i.worldLightDir+i.worldNormal);float3 specular=pow(max(0,dot(i.worldNormal,halfDir)),_Gloss)*_SpecularColor;fixed3 col = tex2D(_MainTex,float2(halfLight,halfLight))*_LightColor0.xyz*_Color+ambient+specular;UNITY_APPLY_FOG(i.fogCoord, fixed4(col,1));return fixed4(col,1);}ENDCG}}}
阅读全文
0 0
- cartoonShader学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- 学习
- eclipse 中导入源码出现 The declared package does not match the expected package的解决方法
- Data Volume 之 bind mount
- WAV格式理解
- hadoop源码解析之hdfs写数据全流程分析---创建文件
- Go编程基础—反射(reflection)反射三定律
- cartoonShader学习
- KVM创建与克隆
- 了解ARP协议
- 如何快速掌握程序语言
- ubuntu如何实现双屏显示
- H5混合开发,框架MUI-H5+,微信小程序,Vue.js,PHP,JavaScript,ReactNative,
- Linux中的磁盘管理
- MyBatis知识六 动态SQL语句
- sublime使用经验