经过昨天2dtoolkit系列教程一的推出,感觉对新手还有有一定的启发作用,引导学习使用unity 2dToolKit插件的使用过程,今天继续系列二——动画精灵的创建,以及背景图的无限循环滚动,在群里总是看到什么技术好,什么技术不好,新手永远迷惑是学C#呢还是学java呢,是cocos2d呢还是unity呢,总想着什么比较火,其实没必要这样,让自己选择两难,每个人都有选择困难症,也不要想一口吃掉一个大饼,想贪图取巧,说不定别人跟你说什么什么技术比较火,但也就是目前,等到你一个新手学成的时候,说不定又被新技术给取代了,只要是IT技术,认准一点学,好好啃精,其实技术都是相同的,重要的学到思想学到解决问题的方法,这个是最重要的!接下来废话少说,继续今天的内容。

一、看一下整体的效果图

由于CSDN不好上传Flash,这也是头疼的一个地方,不像其他博客一样,可以上传flash,展示动态效果,这就上传到百度图库,动态效果图(点击查看),我也截图部分帧图片,看细节会发现一些变化,背景移动了,小龙翅膀晃动了!

看小龙的翅膀和下面小虫的位置移动,这说明背景在动,龙也在动!哇咔咔!

二、详细制作过程

1.准备一系列的序列帧图片

序列帧图片是我们制作动画的一个必备素材,根据系列一教程我们了解了创建精灵集的方法,同样,我们在制作序列帧动画之前还是要先做一个精灵集,将这些序列帧图片放入精灵集中。

在线演示:http://114.92.240.43/dingxiaowei/FlappyDragon.html

2.制作序列帧动画

1.在Assets目录下创建一个Animation的文件夹->右击Create->tk2d->Sprite Animation

2.点击刚刚的DragonAnimation->点击OpenEditor...编辑他的属性

然后添加动画帧图片,制作动画

当创建完所有的动画帧之后,可以点击一下Play看看效果,感觉不错,呵呵!

3.创建动画精灵

在Hierarchy面板中->Create tk2d->Sprite With Animation
 
命名为AnimatedDragonSprite,找到tk2dSpriteAnimator组件,修改AnimLib,选择刚刚创建的动画
 
然后我们运行一下,会发现Game面板中就会出现一个不断抖动翅膀的小龙,真的好萌,哇咔咔!截图我就不截了,跟上面效果图一样。
 

三、背景的无限循环滚动

在2d游戏制作中,你会发现一个规律,一般就是主角精灵都是固定在屏幕的某个位置,但还会让你感觉它在动,因为这是视觉视差,其实动的是背景然你感觉是主角精灵在动,2d游戏制作巧妙的应用了这一点,这就是物理学上的相对运动。
原理就是一张相同的图片,我们拷贝一份,将两个粘连在一起摆放,其中的一个图片正好作为整个屏幕的背景,另外一个正好处于刚要进入的区域,然后当第一张刚好要离开屏幕的时候,然后更改到右边第二张,这样循环往返就能实现效果。
直接贴代码:
  1. public float speed;
  2. private float movespeed;
  3. public float minPositionX;
  4. public float terPositionX;
  5. // Use this for initialization
  6. void Start () {
  7. }
  8. // Update is called once per frame
  9. void Update () {
  10. movespeed = speed * Time.deltaTime;
  11. transform.Translate(Vector3.left * movespeed, Space.World); //向左移动
  12. if (transform.localPosition.x < minPositionX)
  13. {
  14. transform.localPosition = new Vector3(terPositionX, transform.localPosition.y,transform.localPosition.z);
  15. }
  16. }

很简单的Code,呵呵,然后将这脚本拖放到背景图中,运行一下就看到背景无限滚动了!

 
 
 
 

==================== 迂者 丁小未 CSDN博客专栏=================

MyBlog:http://blog.csdn.net/dingxiaowei2013             MyQQ:1213250243

Unity QQ群:858550         cocos2dx QQ群:280818155

====================== 相互学习,共同进步 ===================

 
 

沉浸在写博客中,不知不觉又到了凌晨两点,我很享受这样的过程,与人分享,让学习不再困难,貌似我适合写书的岗位,哇咔咔,希望有哪天能出版自己的书籍!这是一个梦,当然最近也有给我提供图书编辑的岗位,但还是享受现在这过程,充实每一天,呵呵!改洗洗睡了,明天继续,学习永不止步!

[Unity3D插件]2dtoolkit系列二 动画精灵的创建以及背景图的无限滚动的更多相关文章

  1. [Unity3D插件]2dToolKit系列三 碰撞检测功能的实现以及障碍物的随机摆放

    貌似有一段时间没更新2dtoolkit系列了,这段时间一直在忙着其他事情,今天开始继续这个插件系列的教程,网上搜索,貌似关于这个插件的教程无非还是跟官方的教程很类似,有的甚至都没有自己照着亲手实践一遍 ...

  2. windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  3. 3.2Python数据处理篇之Numpy系列(二)--- ndarray数组的创建与变换

    目录 (一)ndarray数组的创建 1.从列表以元组中创建: 2.使用函数创建: (二)ndarray数组的变换 1.维度的变换: 2.类型的变换: 目录: 1.ndarray数组的创建 2.nda ...

  4. hive 学习系列二(数据库的创建删除修改) 拿走,不谢。

    database 相当于一个目录或者命名空间,用来更好地进行表的管理 在hdfs 的目录位置大致如下: [root@iZbp12vtv76y9q3d633bh6Z /]# hadoop fs -ls ...

  5. EF 学习系列二 数据库表的创建和表关系配置(Fluent API、Data Annotations、约定)

    上一篇写了<Entity Farmework领域建模方式 3种编程方式>,现在就Code First 继续学习 1.数据库表的创建 新建一个MVC的项目,在引用右击管理NuGet程序包,点 ...

  6. CSS3实现PS中的蚁行线动画以及画布的马赛克背景图

    话不多说,先看例子,外链 效果截图如下: 蚁行线 马赛克背景 代码: 蚁行线代码如下: /* <!-- HTML代码 --> <div class="ant"&g ...

  7. windows下mongodb基础玩法系列二CURD附加一

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  8. (转)15个非常棒的jQuery无限滚动插件【瀑布流效果】

    原文地址:http://www.cnblogs.com/lyw0301/archive/2013/06/19/3145084.html 现在,最热门的网站分页趋势之一是jQuery的无限滚动(也即瀑布 ...

  9. 15个非常棒的jQuery无限滚动插件【瀑布流效果】

    现在,最热门的网站分页趋势之一是jQuery的无限滚动(也即瀑布流).如果你碰巧观察Pinterest的网站,如Facebook,Twitter和deviantART的,你会发现无限滚动的动作,当旧的 ...

随机推荐

  1. linux创建子进程--fork()方法

    (1)fork()的定义 fork()函数是Unix中派生新进程的唯一方法,声明如下: #include <unistd.h> pid_t fork(void); 我们需要理解的是,调用一 ...

  2. Light OJ 1068

    数位DP #include <cstdio> #include <cstring> using namespace std; ; ; long long n; int f[MA ...

  3. Mac下DIY文件浏览器

    2015-07-14 15:07:53 Mac下的finder不能浏览Linux文件目录, 一些优秀的资源管理器是收费的..... 于是想到了既然Mac的本质是类Unix, 而在windows下查看L ...

  4. ACM/ICPC 之 BFS-广搜进阶-八数码(经典)(POJ1077+HDU1043)

    八数码问题也称为九宫问题.(本想查查历史,结果发现居然没有词条= =,所谓的历史也就不了了之了) 在3×3的棋盘,摆有八个棋子,每个棋子上标有1至8的某一数字,不同棋子上标的数字不相同.棋盘上还有一个 ...

  5. json格式

    $.post('text.action',{....},function(datas){ var name=datas.data[0].name; }); 如果是多个还可以用循环获取.$.post(' ...

  6. nyoj_31

    题目描述:五个数求最值. #include <iostream> #include <algorithm> using namespace std; int main(){ ] ...

  7. algorithm 中的常用函数

    非修改性序列操作(12个) 循环         对序列中的每个元素执行某操作         for_each() 查找         在序列中找出某个值的第一次出现的位置         fin ...

  8. nyoj123_士兵杀敌(四)_树状数组_插线求点

    士兵杀敌(四) 时间限制:2000 ms  |  内存限制:65535 KB 难度:5   描述 南将军麾下有百万精兵,现已知共有M个士兵,编号为1~M,每次有任务的时候,总会有一批编号连在一起人请战 ...

  9. KV6.60 SP1

    组态王6.60 SP1全新发布! 组态王6.60 SP1对过去几年6系列中已解决过的故障进行了合并,包括各主线分支.各OEM版本中的故障总计122个,覆盖运行系统.开发系统.历史趋势曲线控件.报表.A ...

  10. 解析客户端IP

    <html><head><title>新浪IP解析接口的使用</title><metahttp-equiv=Content-Typecontent ...