Unity 2DSprite

Unity官方意识到在4.3版本之前,并没有自带的支持2D游戏工具,商店里面有很多有名2D插件Uni2D,2DToolkit,在4.3版本之后就出现UISprite精灵来支持2D游戏开发,我用这个很多次了.现在才知道它就是Unity原生2D,用起来应该是没有Uni2D方便的,=。=实际开发大家应该不习惯这个

http://www.tudou.com/programs/view/mzW7lKEJrLw/  Unity2D中文介绍地址

http://unity3d.9tech.cn/news/2014/0224/39901.html    Unity2D经典的教程文章,还有单位的转换

总体功能介绍:

1. 支持分割图片,把一张完整的游戏图,分割成很多小块

2. PackingTag把多个图片,打成一个包减少Drawcall

3.支持动画状态机

下面就是2DSprite属性图

分割图片:

如果你想把一张图片分割出多个小图片,用来做序列帧动画. SpriteMode=Multiple,然后再点击SpriteEditor进去就可分割图片啦. (你分割之后Unity只是创建一个文件来记录有哪些图片,哪些坐标,并不是真正分割出一张张小图片在本地保存)

下面是SpriteEditor编辑器,有两种分割模式: Automatic自动分割,Grid网格分割,点击Apply就可以保存分割的状态了.

分割好的小图片(小图片并不真实存在!)你可以选中几个拖进Hierarchy视图中,Unity会询问你是否创建状态机和帧动画

选中游戏物体Windows –》 Animation中就可以动画编辑器,点击运行你就可以看见人物的行走啦

PackingTag把多个图片,打成一个包减少Drawcall:

Edit –> projection Settings –> Edit中设置 SriptePacker设置成AlwaysEnabled. 默认是关闭的,你想把一些图片打成一个包填写相同的名字.

打开Game视图State查看Draw Calls查看是否减少了, 在Windows->Sprite packer打开窗口可以查看你打了多少个精灵包

时间: 2024-12-31 19:15:53

Unity 2DSprite的相关文章

unity 接触一个月的感受和心得

unity scrollview 遇到的问题 一个scrollview作为翻页,这样的效果调整. 一页上面有三个scrollview,这三个scrollview上的items不受下层整个页面的scrollview的裁剪,导致滚动的时候,上层items会从页面外面飞入.这个问题我还没有解决,这个问题只有第二次以及以后打开界面才会出现,第一次打开不会出现, 所以我断定是我在第一次关闭界面的时候有些内容没有释放导致的. 现在采用迂回战术,关闭的时候不关闭,而是隐藏,这样就不会出现这个问题了. 但是根本

Unity 崩溃问题解决方法——之一

友情提示:工作随记,不喜勿喷 注意:文艺青年可以略过,暴力青年欢迎采纳 Library文件夹 Unity每次编译都会生成这个东西,不用担心丢失的问题.所以,干掉他! 选中 + Delete   或者  选中 + Shift  + Delete 网上看了很多方法,就觉得这个简单,粗暴,是我喜欢的类型. 优点:上面说了 缺点:如果工程过大,重新编译时间会比较长.(但是对于查Log日志来说,相对快点)

unity 射线检测

unity中射线检测时非常实用也经常实用的一种手段.下面讲解一下射线检测问题. 1)Ray 根据射线端点和射线的方向定义一条射线 Ray ray= new Ray(transform.position, transform.forward); 定义一个包含射线投射信息的变量RaycastHit hit,并进行射线检测Physics.SphereCast RaycastHit hit; if(Physics.SphereCast(ray,1f,out hit)) { if(hit.distance

关于Unity中的道具拾取(专题六)

原理就是把道具做成触发器,触发器就是当我们有碰撞发生的时候,只会检测碰撞,而不会有任何改变物理运动状态的过程. 触发器非常适合道具拾取,因为它不会改变原本运动物体的任何物理属性,但是依然会检测碰撞,响应物理事件. 道具拾取实例 1.创建Unity项目和文件目录,保存场景 2.导入金币模型资源rc_fx_obj_04_mod.FBX和obj_04_tex.png,设置材质球的shader为Lagacy Shaders---->Diffuse,颜色设置为255,255,255,255 3.创建一个平

关于Unity协程(Coroutine)

协程官方doc解释A coroutine is a function that can suspend its execution(yield) until the given given YieldInstruction finishes. StartCoroutine开启协程 先执行协程中的代码 碰到yield return时控制权交给unity引擎 引擎继续做接下来的工作例如第一次yield return之后执行StartCoroutine下一行代码 直到满足yield指令的要求才会重新进

Unity使用DLL库

Unity3D 能够很方便的集成一些外部插件,以便调用现有的动态链接库.下面会介绍Unity中如何集成Dll的两种方法.1. 标准引用这里所使用的语言是C#. 1.1 新建C#类库项目,这里就不多介绍了. 1.2 项目建好后正常的编写代码 以上是一个简单的测试代码. 1.3 将项目属性 -> 应用程序 -> 目标框架:改为 .NET Framework 3.5或以下 .这一步很重要,因为Unity3D(当前的Unity3D版本是3.5版) 支持的 .Net 是3.5版. 如果选择的是4.0版会

Unity 脚本<1>

RaycastHit2D hit = Physics2D.Linecast(targetPosition, targetPosition + new Vector2(x, y)); 猜测是linecast函数一旦检测到第一个碰撞体之后就会停止检测. 所以把自身检测进去之后就不会检测墙了.估计Physics.Raycast函数也有此性质,这里要注意一下. 2. Unity 2D两种常用判断点击的方法 1.Raycast法 原理相同于3D中得Raycast法,具体使用略有区别. RaycastHit

Unity编辑器扩展chapter1

Unity编辑器扩展chapter1 unity通过提供EditorScript API 的方式为我们提供了方便强大的编辑器扩展途径.学好这一部分可以使我们学会编写一些工具来提高效率,甚至可以自制一些小的插件应用的项目工程中去,达到复用的目的.今天首先创建一个新场景生成的菜单项,生成的场景已经绑定好需要的游戏对象及脚本. Tips:1.官方API 2.编辑器扩展脚本都需放在Editor文件夹下,Editor的层级和数目没有要求 EditorUtil.cs :编辑器扩展类,向外部提供编辑器扩展方法

Unity Update 详解

0x01:简介 Unity的脚本继承了Monobehaviour类,在脚本中定义函数: void FixedUpdate(){} void Update(){} void LateUpdate(){} 脚本如果是激活的,这三个函数会被上层逻辑每帧调用,FixedUpdate调用的次数和fixedTime有关,后面详细介绍,Update和LateUpdate每帧调用一次. 0x02:实现 一般游戏流程都类似下面代码示例: /*************************************