【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
若有错误之处,请多多谅解并欢迎批评指正。     
本博客中未标明转载的文章归作者 小毛驴所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值