Unity3D循环滚动的背景图片,制作方法

最近用unity4.3做个2d平台游戏,背景循环的问题搞得我头大了,如果用锚点连接图片有点小题大做,于是发现了下边这篇文章.

建议大家看文章中提到的这个例子插件 android game example ,下载地址:泽国论坛(这个论坛好棒呀,下载免费,不像大多数论坛那样动不动积分,权限,收费之类的) http://www.zeguoren.com/forum.php?mod=viewthread&tid=6028

真是抱歉,从今天起才认真的翻阅android game example 这个插件,开始熟悉一下外国佬的一些编程方式,相信很多人没有看过我就当做一个记录吧,都是一些简单的小东西。

首先就是这个滚动的背景图,也许叫“跑马灯”会比较好理解。

来看看效果:

看起来这博客系统还不那么差,至少可以播放gif。

 

这种滚动背景很容易让我想到的就是,跑酷类游戏,空战游戏,总之类似的横版游戏,当然了现在的游戏设计都变得很精致了,相信这样级别的背景还不能满足吧~

 

这个例子我们不借助任何第三方的精灵插件,都用原始的控件来,我们需要准备的就是一个cube,当然plane也可以。

 

现在新建一个场景,准备一个正交相机,一个plane,一个灯光,一个material,一张图片,现在调整好位置当该就变成了这样:

 

 

好吧现在我们让background上的贴图滚动(事实上这就1分钟的事儿,打成字居然这么麻烦,真是是该考虑制作视屏了),注意到这个了么:

 

试着变化一下offset的x的值,哇~图片变化了,好吧其实没有什么神奇的~

接着我们就让它自动变化便是了 

加上我们的滚动脚本:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
using  UnityEngine;
using  System.Collections;
         
public  class  ScrollingByOffset : MonoBehaviour
{
     /// <summary>
     /// 滚动速度
     /// </summary>
     public  float  _Speed;
     /// <summary>
     /// 滚动的材质载体
     /// </summary>
     private  Material _ScrollMaterial;
         
     void  Start()
     {
         this ._ScrollMaterial = renderer.material;
     }
         
     void  Update()
     {
         this ._ScrollMaterial.mainTextureOffset =  new  Vector2(_Speed * Time.time, 0);
     }
}

 

跑起来瞅瞅,似乎还不错。

接着调整一下灯光,图片的大小(图片最好大到超出相机的视野,效果会好很多)。

 

接着我把资源和代码贴上来,各位有兴趣可以试试。

转载于:https://www.cnblogs.com/TouchAfflatus/articles/3536667.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值