04 Unity2D
Unity2D系统是Unity引擎进行2D制作时使用的
Sprite精灵:
在Unity2D制作中将图片称作精灵(Sprite),为了提高游戏效率,降低对GPU的损耗,通常将一类的图片拼接成一张大图来使用
关于精灵的创建
1.选中多个图片,将TextureType设为 Sprite(2D and UI),所有的图片设一个统一的packing tag ,apply之后使用SpritePacker创建精灵
2.一张已经拼接好的图片,将TextureType设为 Sprite(2D and UI),SpriteMode设为Multiple ,apply之后点击SpriteEditor之后,slice切割,根据图片和需求选择不同的切割方式.
2D物理引擎
各种碰撞器都有对应的2D碰撞器,物体也有2D的刚体组件(Rigidbody2D)
2D的碰撞检测和触发检测的回调方法与3D的差不多,不过是在方法名字和参数类型的后面加2D
模拟愤怒小鸟(小球打砖块)
砖块添加Box Collider 2D,小球添加Circle Collider 2D
void OnMouseDown ()
{
//按下鼠标的时候记录小球的起点
begin = Input.mousePosition;
}
void OnMouseUp ()
{
//松开的时候记录下小球的的终点
end = Input.mousePosition;
//小球发射的方向
Vector3 dir = begin - end;
GetComponent<Rigidbody2D> ().AddForce (dir * force);
在鼠标松开的时候给小球重力
GetComponent<Rigidbody2D> ().gravityScale = 3f;
}
void OnMouseDrag ()
{
视口坐标转化为世界坐标,将世界坐标赋给小球,实现拖拽鼠标移动小球
Vector3 pos = Input.mousePosition;
float z = Camera.main.transform.position.z;
Vector3 worldPos = Camera.main.ViewportToWorldPoint (new Vector3 (pos.x / Screen.width, pos.y / Screen.height, Mathf.Abs (z)));
transform.position = worldPos;
}
void Update ()
{
if (Input.GetKeyDown (KeyCode.Space)) {
SceneManager.LoadScene (0);
}
}
2D动画:
连续形成序列的Sprite可用来创建序列帧动画





04 Unity2D的更多相关文章
- UBUNTU12.04下安装配置体验gnome3
年. ubuntu12.04默认采用unity界面,但是自己更加喜欢gnome3的操作方式. 安装gnome3: sudo apt-get install gnome-shell 其实安装成功后,注 ...
- 如何让Ubuntu 12.04 LTS更炫更具吸引力
Ubuntu 12.04 LTS震撼发布 适逢七周岁生日之际,Ubuntu正式推出了第四个LTS长期支持版本,开发代号Precise Pangolin的Ubuntu 12.04在2012年4月26 ...
- Unity2d 骨骼动画1:介绍
http://bbs.9ria.com/thread-401613-1-1.html by Orlando Pereira and PedroPereira3 days ago2 Comments 在 ...
- Ubuntu 12.04下安装配置体验GNOME 3(转载)
转自:http://www.tuicool.com/articles/zIbeIj 自己并不是一个思想前卫的人,穿衣审美也都是大众眼光.但是唯独喜欢在计算机方便尝试最新,心肝情愿的做小白鼠.近日,按耐 ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
- Ubuntu 14.04中Elasticsearch集群配置
Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...
- win8.1硬盘安装ubuntu14.04双系统
在网上找了很多方法都失败了,原因是大多数方法都是用mbr方式安装的,如grub4dos,easybcd.以至于连自己都怀疑win8能不能用硬盘安装,差点就去买个u盘来安装了,就在打算放弃的时候在ubu ...
- 使用win10远程控制ubuntu16.04
使用win10远程控制ubuntu16.04,网上很多需要安装xfce桌面的.今天介绍一下,不需要安装其他桌面,使用Ubuntu16.04自带桌面,漂亮美观. Ubuntu16.04端: 1.打开终端 ...
- ubuntu14.04下安装node.js
在网上查了下,起初是下载了一个node-v0.12.7-linux-x64.tar.gz,解压在/home/node路径下,然后在/etc/profile中添加如下命令: export NODE_HO ...
随机推荐
- JS操作小记
this.Phenomenon.forEach(element => { if (element.value3 == this.prvphe) { this.Reason1 = element. ...
- 数据库建表并返回给前端 - (mysql-thinkphp) (3)
1.先建一个表,你可以用mysql代码建,也可以用thinkphp建,也可以视图建,我用不到太复杂的,就用视图建了. 2.配置id为自增,唯一的值,不可重复.主键.要输入中文的选择utf8_gener ...
- Python基础week2
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...
- Java笔记: 初始化块
Java语言提供了很多类初始化的方法,包括构造器.初始化器等.除了这两种方法之外,我们还可以用初始化块(initialization block)来实现初始化功能. 基本语法 初始化块是出现在类声明中 ...
- centos7 程序快捷方式
/usr/share/Applications 在此文件夹中,全是".desktop"的文件,利用终端打开一个看看就知道了!
- git克隆项目后的操作
使用https路径clone代码后,如果直接提交,会出现两个问题: 1. 提交的用户是操作系统登陆用户: 2. 需要重复输入用户名和密码: 一 设置用户名和邮箱 git config user.nam ...
- 偶然在博客中见对百度一个面试题的探讨,写些自己的看法以及指出探讨中不对的观点:百度面试题:求绝对值最小的数 有一个已经排序的数组(升序),数组中可能有正数、负数或0,求数组中元素的绝对值最小的数,要求,不能用顺序比较的方法(复杂度需要小于O(n)),可以使用任何语言实现 例如,数组{-20,-13,-4, 6, 77,200} ,绝对值最小的是-4。
今天申请了博客园账号,在下班后阅览博客时发现了一个关于百度面试题探讨的博客(其实是个很基础的问题),此博客url为:http://www.blogjava.net/nokiaguy/archive/2 ...
- 一文详解scala泛型及类型限定
今天知识星球球友,微信问浪尖了一个spark源码阅读中的类型限定问题.这个在spark源码很多处出现,所以今天浪尖就整理一下scala类型限定的内容.希望对大家有帮助. scala类型参数要点 1. ...
- Codeforces Round #618 (Div. 2) 小号上紫之路
这一场涨了不少,题也比较偏思维,正好适合我 A. Non-zero 我们记录这些数字的总和sum,并且记录0的个数zero,显然答案应该是这些0的个数,注意如果sum+zero==0的话答案要额外加一 ...
- Js获取页面地址参数
var url = window.location.href; //获取当前窗口的Url; 结果:http://localhost:61768/Home/Index?id=2&age=18 v ...