博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Shader】Position Based Gradient Shader
阅读量:4087 次
发布时间:2019-05-25

本文共 1001 字,大约阅读时间需要 3 分钟。

这里写图片描述

原文链接:

Shader "Custom/Fog"{Properties{_Color("Color", Color) = (1,1,1,1)_MainTex("Texture", 2D) = "white" {}_FogColor("Fog Color", Color) = (0.3, 0.4, 0.7, 1.0)_FogStart("Fog Start", float) = 0_FogEnd("Fog End", float) = 0}SubShader{Tags{ "RenderType" = "Opaque" }CGPROGRAM#pragma surface surf Lambert finalcolor:mycolor vertex:myvertstruct Input{float2 uv_MainTex;half fog;};fixed4 _Color;fixed4 _FogColor;half _FogStart;half _FogEnd;sampler2D _MainTex;void myvert(inout appdata_full v, out Input data){UNITY_INITIALIZE_OUTPUT(Input,data);float4 pos = mul(unity_ObjectToWorld, v.vertex).xyzw;data.fog = saturate((_FogStart - pos.y) / (_FogStart - _FogEnd));}void mycolor(Input IN, SurfaceOutput o, inout fixed4 color){fixed3 fogColor = _FogColor.rgb;fixed3 tintColor = _Color.rgb;#ifdef UNITY_PASS_FORWARDADDfogColor = 0;#endifcolor.rgb = lerp(color.rgb * tintColor, fogColor, IN.fog);}void surf(Input IN, inout SurfaceOutput o){o.Albedo = tex2D(_MainTex, IN.uv_MainTex).rgb;}ENDCG}Fallback "Diffuse"}
你可能感兴趣的文章
【泛型】一个简易的对象间转换的工具类(DO转VO)
查看>>
1.随机函数,计算机运行的基石
查看>>
MouseEvent的e.stageX是Number型,可见as3作者的考虑
查看>>
在mc中直接加aswing组件,该组件还需最后用validate()方法
查看>>
移植Vim配色方案到Eclipse
查看>>
从超链接调用ActionScript
查看>>
谈谈加密和混淆吧[转]
查看>>
TCP的几个状态对于我们分析所起的作用SYN, FIN, ACK, PSH,
查看>>
网络游戏客户端的日志输出
查看>>
关于按钮的mouseOver和rollOver
查看>>
Netty框架
查看>>
Socket经验记录
查看>>
对RTMP视频流进行BitmapData.draw()出错的解决办法
查看>>
FMS 客户端带宽计算、带宽限制
查看>>
在线视频聊天(客服)系统开发那点事儿
查看>>
SecurityError Error 2148 SWF 不能访问本地资源
查看>>
Flex:自定义滚动条样式/隐藏上下箭头
查看>>
烈焰SWF解密
查看>>
Qt 静态编译后的exe太大, 可以这样压缩.
查看>>
3D游戏常用技巧Normal Mapping (法线贴图)原理解析——基础篇
查看>>