Unity Shader案例之地球云图
Posted 程序员小毛驴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity Shader案例之地球云图相关的知识,希望对你有一定的参考价值。
一、地球旋转云图
1.1 添加纹理
Shader "liulongling/earth"
Properties
_Tex1("地球",2D)="white"
_Tex2("云图",2D)="gray"
SubShader
Pass
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "unitycg.cginc"
sampler2D _Tex1;
sampler2D _Tex2;
struct v2f
fixed4 vertex:POSITION;
fixed2 uv:TEXCOORD0;
;
v2f vert(appdata_base v)
v2f o;
o.vertex =mul(UNITY_MATRIX_MVP,v.vertex);
o.uv= v.texcoord;
return o;
fixed4 frag(v2f i):COLOR
fixed4 c;
c.rgb = tex2D(_Tex1,i.uv).rgb+tex2D(_Tex2,i.uv).r;
c.a = 1;
return c;
ENDCG
提示:纹理Cloud使用r通道,才能够显示出来云层的效果。第三十行莫忘了加上:COLOR,偶经常犯这错误~
1.2 纹理效果
1.3 给地球加个旋转动画效果
修改第三十行代码
fixed4 frag(v2f i):COLOR
fixed4 c;
fixed2 uv=fixed2(i.uv.x+_Time.y/10,i.uv.y);
fixed2 uv1=fixed2(i.uv.x+_Time.y/5,i.uv.y);
c.rgb = tex2D(_Tex1,uv).rgb+tex2D(_Tex2,uv1).r;
c.a = 1;
return c;
1.4 地球旋转动画效果
作者: 小毛驴,一个游戏人
梦想:世界和平
原文地址: http://blog.csdn.net/liulongling 若有错误之处,请多多谅解并欢迎批评指正。 本博客中未标明转载的文章归作者 小毛驴所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
以上是关于Unity Shader案例之地球云图的主要内容,如果未能解决你的问题,请参考以下文章