Unity3D游戏开发之连续滚动背景

在诸如天天跑酷等2D游戏中,因为游戏须要表现出运动的感觉,通常都会使游戏背景连续循环滚动以增强视觉效果,那么今天,博主就来带领大家一起来实现连续滚动背景吧!

首先来讲述一下原理,准备两张连续的图片(博主这里使用了一张图片,好吧,我偷懒了),我们使用正交投影的摄像机对准第一张背景,然后使用脚本让图片自右向左開始移动,当第一张图片移出摄像机的视野时,第二张图片马上接在第一张图的后面,继续向左移动,而当第二张图片移出摄像机视野时,第一张图片会马上接在第二张图片的后面,如此周而复始,就实现了连续滚动背景。好了,以下,我们一起開始,首先我们创建一个空的项目,我们须要添�一个Plane并将其命名为Bg0、一个 平行光源。參数设置例如以下图:

接下来,我们 将 实现准备好的背景图片拖放到Bg0上,然后调整摄像机的视野大小,使第一张图片恰好位于其视野中,然后我们将Bg0复制出一个副本并命名为Bg1,调整其位置,使其接在第一张图片的后面,此时,场景效果例如以下图:

好了,接下来,我们開始编写脚本,代码十分简单:

using UnityEngine;
using System.Collections; public class BGControll : MonoBehaviour { //Move Speed;
private float mSpeed=3.0F;
void Start ()
{ } void Update ()
{
//Translate form right to left
transform.Translate(Vector3.right * Time.deltaTime * mSpeed);
// If first background is out of camera view,then show sencond background
if(transform.position.x<=-11.8F)
{
//We can chenge this value to reduce the wdith between 2 background
transform.position=new Vector3(11.8F,transform.position.y,transform.position.z);
}
}
}

我认为大家对代码应该不会有什么疑问吧,唯一的疑问可能来自于-11.8,这个值是第一张图片离开摄像机视野的临界值,这个值怎么得到呢,大家能够将游戏视图改为标准视图,然后用鼠标拖动第一个背景图片来获取,这里就不再多说了,最后来看下游戏执行效果吧

以后的效果演示都会採用动画演示,希望大家喜欢,谢谢!

Unity3D游戏开发之连续滚动背景的更多相关文章

  1. [Unity3D]Unity3D游戏开发之连续滚动背景

    在诸如天天跑酷等2D游戏中.因为游戏须要表现出运动的感觉.通常都会使游戏背景连续循环滚动以增强视觉效果,那么今天.博主就来带领大家一起来实现连续滚动背景吧. 首先来讲述一下原理.准备两张连续的图片(博 ...

  2. Unity3D游戏开发初探—2.初步了解3D模型基础

    一.什么是3D模型? 1.1 3D模型概述 简而言之,3D模型就是三维的.立体的模型,D是英文Dimensions的缩写. 3D模型也可以说是用3Ds MAX建造的立体模型,包括各种建筑.人物.植被. ...

  3. [Unity3D]Unity3D游戏开发之飞机大战项目解说

    大家好,我是秦元培,欢迎大家继续关注我的博客,我的博客地址是blog.csdn.net/qinyuanpei. 首先感谢大家对我博客的关注,今天我想和大家分享的是一个飞机大战的项目.这是一个比較综合的 ...

  4. [Unity3D]Unity3D游戏开发之跑酷游戏项目解说

    大家好,我是秦元培.我參加了CSDN2014博客之星的评选,欢迎大家为我投票,同一时候希望在新的一年里大家能继续支持我的博客. 大家晚上好.我是秦元培,欢迎大家关注我的博客,我的博客地址是blog.c ...

  5. [Unity3D]Unity3D游戏开发之异步记载场景并实现进度条读取效果

    大家好,我是秦元培.欢迎大家关注我的博客,我的博客地址是:blog.csdn.net/qinyuanpei.终于在各种无语的论文作业中解脱了,所以立即抓紧时间来这里更新博客.博主本来计划在Unity3 ...

  6. 投影方式- Unity3D游戏开发培训

    投影方式- Unity3D游戏开发培训   作者:Jesai 2018-02-12 20:33:13 摘  要 透视投影是3D渲染的基本概念,也是3D程序设计的基础.掌握透视投影的原理对于深入理解其他 ...

  7. 从一点儿不会开始——Unity3D游戏开发学习(一)

    一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...

  8. Unity3D游戏开发从零单排(四) - 制作一个iOS游戏

    提要 此篇是一个国外教程的翻译,尽管有点老,可是适合新手入门. 自己去写代码.debug,布置场景,能够收获到非常多.游戏邦上已经有前面两部分的译文,这里翻译的是游戏的最后一个部分. 欢迎回来 在第一 ...

  9. [Unity3D]Unity3D游戏开发《反对》说到游戏(上)——目标跟踪

    朋友,大家好.我是秦培,欢迎关注我的博客.我的博客地址blog.csdn.net/qinyuanpei. 首先博主要自我反省,过了这么久才来更新博客,这段时间主要是在忙着写期末的作业,所以博主基本上没 ...

随机推荐

  1. 简析TCP的三次握手与四次挥手

    TCP是什么? 具体的关于TCP是什么,我不打算详细的说了:当你看到这篇文章时,我想你也知道TCP的概念了,想要更深入的了解TCP的工作,我们就继续.它只是一个超级麻烦的协议,而它又是互联网的基础,也 ...

  2. hdu 4034 Graph floyd

    题目链接 给出一个有向图各个点之间的最短距离, 求出这个有向图最少有几条边, 如果无法构成图, 输出impossible. folyd跑一遍, 如果dp[i][j] == dp[i][k]+dp[k] ...

  3. PHP中的一个很好用的文件上传类

    <?php    class FileUpload{      private $filepath; //设置上传文件的路径   private $allowtype=array('jpg',' ...

  4. HDU5280 Senior&#39;s Array(简单DP)

    题目链接:pid=5280">传送门 题意: 给定一个长度为n的序列,和一个改动的值p,必须从原序列中选一个位置改动成p, 求改动后的区间和的最大值. 分析: 枚举位置+最大区间和. ...

  5. 理解Android的layout和measure

    在Android UI开发中,总会有情况需要自定义View和View Group. 什么是View?就是Android中一个基本视图单位,一个Button是一个view, 一个Layout, 也是一个 ...

  6. CVT电子集团--笔试部分试题

    之前有在网上答了下CVT的网上笔试题,特别把它们都弄下来,答案参考,不一定是对的,有错希望大家能提出来. 1.有关系R和S,R∩S等价于(B) A.S-(R-S)    B.R-(R-S)   C.( ...

  7. js小写转实现资本,js数字革命万元

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html>  <hea ...

  8. 基于thinkphp的uploadify上传图功能

    php Action server端 <?php /*  * To change this template, choose Tools | Templates  * and open the ...

  9. 自己动手写处理器之第一阶段(3)——MIPS32指令集架构简单介绍

    将陆续上传本人写的新书<自己动手写处理器>(尚未出版).今天是第四篇.我尽量每周四篇 1.4 MIPS32指令集架构简单介绍 本书设计的处理器遵循MIPS32 Release 1架构,所以 ...

  10. 获取ubuntu 的root密码,告别sudo

    刚刚开始使用ubuntu的朋友可能知道一个提权命令    sudo 如果你接触过其他的Linux系统的话,你会知道  linux系统有一个最高权限   root.一般用su root,然后输入密码就可 ...