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 ...
随机推荐
- JVM性能调优指南
1.JVM的参数类型 1.1 标准参数:在各jdk版本中较稳定 -help -server -client -version -showversion -cp -classpath 1.2 X参数 1 ...
- xfpt 连接Linux失败问题
首先切换到root用户 1. su 未设置root密码的可以使用一下命令 sudo passwd root 一.上传文件失败(一动不动) 1.安装ftp服务 apt-get install vsftp ...
- XV6源代码阅读-虚拟内存管理
Exercise1 源代码阅读 1.内存管理部分: kalloc.c vm.c 以及相关其他文件代码 kalloc.c:char * kalloc(void)负责在需要的时候为用户空间.内核栈.页表页 ...
- 运行jar包中的main方法
java -classpath jar包名.jar 包名.类名
- python实现进程的三种方式及其区别
在python中有三种方式用于实现进程 多进程中, 每个进程中所有数据( 包括全局变量) 都各有拥有⼀份, 互不影响 1.fork()方法 ret = os.fork() if ret == 0: # ...
- CSS:导航栏下拉菜单模板
<!DOCTYPE html><html> <head> <meta charset="utf-8"> ...
- 创建一个TCP代理
代理技术 代理一般被我们用于"穿墙",具体来说可以看这里,或者查wiki.理解代理背后的原理之后,便很容易知道,代理的作用不仅仅只是"穿墙".例如我们可以把经过 ...
- Java Break 与 Continue
章节 Java 基础 Java 简介 Java 环境搭建 Java 基本语法 Java 注释 Java 变量 Java 数据类型 Java 字符串 Java 类型转换 Java 运算符 Java 字符 ...
- DRF源码-views.py
REST框架提供了一个APIView类,它是Django View类的子类. 要了解几个特点: 请求中body中的数据全部都封装到了data中(原POST,PUT,PATCH,DELETE中的数据全部 ...
- Golang的进制转换实战案例
Golang的进制转换实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常用进制概述 1>.进制概述 进制也就是进位制,是人们规定的一种进位方法.举个例子:二进制就 ...