Unity 2D背景滚动
来源:互联网 发布:修复系统漏洞的软件 编辑:程序博客网 时间:2024/04/29 21:09
1.首先,了解Material(材质)
材质(Materials)是unity的一个重要组成部分,主要是用来把网格(Mesh)或粒子渲染器(Particle Renderers)贴到游戏对象上。他们在定义对象怎么被显示发挥重要组成部分。材质包括用于呈现网状或颗粒着色器的参考,所以这些组件不能在没有材质的情况下显示。
关于Material的具体详情可参考:http://www.ceeger.com/Components/class-Material.html
因为要使用到背景的滚动,因此,我们采用着色器是Texture(纹理)。Texture的位置可以改变,通过改变偏移(Offset)和平铺(Tiling)属性。而且只需要一张图,当然也可以使用多张图。因为重复使用一张或者多张重复使用,使得Texture性能上也有优势。
2.创建Texture
在此我们只需要一张图片,当然也可以使用多个图片来构建内容丰富的场景。我们需要对文理进行以下设置:
Texture Type 选择类型为Texture
Wrap Mode 选择Repeat (重复)
注意的是:Warp Mode一定要为Repeat才可以重复滚动
3.创建Material
Shader选择Unlit/Texture
4.创建滚动背景Object
- 添加Mesh Renderer网格组件,设置Materials size为1(单个材质)选择创建的Material
- 添加Mesh Filter 组件选择Mesh为 Quad(矩形)
- 由于我的图片大小是480*800,因此,进行适配,设置Transform x轴缩放4.8,Y轴缩放8
5.添加脚本
using UnityEngine;
using System.Collections;
public class BackgroundController2 : MonoBehaviour {
public float speed = 0.1F;public Renderer rend;// Use this for initializationvoid Start () { rend = GetComponent<Renderer> ();}// Update is called once per framevoid Update () { float y = Mathf.Repeat (Time.time*speed,1); rend.material.mainTextureOffset = new Vector2 (0,y);}
}
0 0
- Unity 2D背景滚动
- unity学习笔记【使用2d背景】
- Unity 2D 实现屏幕滚动
- Unity3D~2D游戏背景的循环滚动
- Unity 2D中如何让两张背景无缝连接
- 【Unity】为什么导入2D图片背景不是透明的
- unity 2D 游戏背景无线循环简单使用
- Unity 2D教程: 滚动,场景和音效
- Unity实例.001无限滚动的背景
- Unity 3D循环滚动效果
- 2D游戏引擎(十一)—— 向游戏引擎添加滚动背景支持
- 【Unity2D游戏实战 之 2D滚屏射击】1.背景滚动 (一)
- 【unity3d学习笔记】Shader-通过Shader实现2D游戏中无限滚动的背景Shader
- Unity学习笔记-2D横版游戏中的背景移动
- Unity 通过摄像机移动实现连续滚动的背景
- Unity手机开发之巧妙利用纹理制作滚动背景
- unity 2d贴图
- Unity 2D 入门
- 堆和栈的区别
- 机器视觉全球顶级实验室
- 线程
- Unity框选物体的做法
- Miller-Rabin素数测试学习笔记
- Unity 2D背景滚动
- Integer与int的种种比较你知道多少?
- RxJava && Agera 从源码简要分析基本调用流程(2)
- 串口知识
- Server Tomcat v7.0 Server at localhost failed to start.解决办法
- 服务器编程心得(四)—— 如何将socket设置为非阻塞模式
- Android Dialog 设置背景透明
- 剑指Offer(面试题8~10)
- 编写函数fun(int *a, int n, int *odd, int *even)