经过昨天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. POJ 1016

    http://poj.org/problem?id=1016 一道字符串处理的题目,理解题意后注意细节就好. 题意:每一串数字 都可以写成 a1 b1 a2 b2 ....ai bi 其中ai是指bi ...

  2. Shell编程—定时任务

    应用:定时催收,定时下发,对新增内容入库同步, 时间:凌晨 服务器Reahat Linux: Bash HPUX:kbash? #!/bin/sh #!/bin/bash echo awk #输入重定 ...

  3. Android Multimedia框架总结(二)MediaPlayer框架及播放网络视频案例

    前言:前面一篇我们介绍MediaPlayer相关方法,有人说,没有实际例子,看得不是很明白,今天在分析MediaPlayer时,顺带一个播放网络视频例子.可以自行试试.今天分析的都是下几篇介绍各个模块 ...

  4. 自定义循环滑动的viewpager

    今天和大家分享一下如何定制一个可以循环滑动的viewpager.其实今天更重要的提供一种组件化思想,当然你可以理解为面向对象思想. 吐槽一下网上流行的实现方式吧(为了方便说明,下文称之为方式A),方式 ...

  5. 【leetcode】3Sum (medium)

    Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all un ...

  6. JS倒计时,不会重复执行

    直接上代码,亲自测试了的,没问题咯 <html> <head> <title>点击获取验证码按钮后按钮变灰,倒计时一段时间后又可重复点击</title> ...

  7. supersr--NSURLSessionConfiguration-下载进度

    ////  ViewController.m//  下载进度 // //  Created by Super on 14/7/4. //  Copyright (c) 2014年 iOS. All r ...

  8. 通过颜色代码初始化UIColor

    #define UIColorFromHEX(rgbValue) [UIColor \ colorWithRed:((float)((rgbValue & 0xFF0000) >> ...

  9. nodejs链接mongodb数据库

    nodeJs链接mongodb数据库有两种方式,第一种是利用官方自己开发的npm包mongodb链接,第二种是利用第三方npm包mongoose链接:这里如果是window操作系统,建议用mongoo ...

  10. IOS开发之实现App消息推送

    转自:http://blog.csdn.net/shenjie12345678/article/details/41120637 第一部分 首先第一步当然是介绍一下苹果的推送机制(APNS)咯(ps: ...