Uni2D入门

转载 http://blog.csdn.net/kakashi8841/article/details/17558059

开始

Uni2D增加了一些新的便利的特性给Unity,它们用于推动你2D工作流程和生产力。最有用的一个特性是sprite的创建:使用Uni2D,你能通过从项目窗口拖动texture来闪电创建sprite或者物理sprite。这个部分将向你展示怎样设置Uni2D以及插件主要特性与原理。

什么是sprite?

一个sprite是一个带有texture的plane mesh。一个sprite通常和camera是正交的。最简单的sprite是一个由三角形合成的矩形,但它还能更复杂。在Unity中,sprite是一个没有厚度的3D物体。

什么是物理Sprite?

一个物理sprite带有物理碰撞器。它能和其它物理物体碰撞并做出正确的反应。物理sprite的特性和渲染是分开的,所以它们的物理外形不必和sprite的图形一样。Uni2D能自动从sprite的texture中生成物理碰撞器。

什么是animation clip?

一个animation clip是一系列texture,称为帧,它用于以一个固定的速率显示sprite,来造成一种动画的错觉。没什么好惊奇的,一个animation clip就是简单的电影胶片。

什么是ATLAS?

一个texture atlas是一个大图,它包含了一系列更小的子图,它们是用于2D/3D物体某部分的texture。当有某些需要在屏幕渲染的时候,它背后带来的是draw call。由于不同的原因(例如渲染状态改变),一个draw call是一个很慢的操作,因此我们需要保持较低的draw call来保证较高的帧率。在移动设备上,接近30-40个draw call就开始变得危险了,具体取决于你的设备和渲染的场景。

幸运的是,在一些条件下,draw call是可以被批量处理的。unity会自动那么做,Atlas是帮助批处理draw call的一个方式:通过使用一个大texture(altas),不同的精灵能被批处理,只要它们共享同个texture。

什么是骨骼动画(Skeletal Animation)?

骨骼动画是让2D/3D对象动起来的一种方式,这些对象构成的骨骼由骨头层级组成,几乎就像人类的骨骼一样。通过移动一个骨头,mesh会因为受到骨头的影响发生形变。这个技术是直观的,它允许你让一个对象做动作。

无缝更新

如果你某个texture改变了,而它是通过一个Uni2D asset来使用的,比如sprite或animation clip,这个asset将会被自动更新。这个特性为你提供了一个非常舒服的工作流程,你可以使用你喜欢的图片编辑器编辑texture,而只要在Unity中几秒后就能看到结果!还不满意?撤销改变,那么所有事物都会被还原。简单!

理论看够了!

好,让我们开始吧!首先,到Unity的菜单栏点击Uni2D > Sprite Editor

这将打开Sprite Editor。只要这个窗口打开了,将会开启拖放特性,所以先不要那么快关闭它!

Sprite的拖放特性现在已经开启了。下面是Uni2D一些sprite创建的快捷方式。

操作 快捷方式 描述
拖放texture到场景 从texture创建sprite
ALT+拖放texture到场景 从texture创建新的物理sprite
SHIFT+拖放多个texture到场景 从多个texture中创建sprite动画(按名字排序)。也创建Animation Clip。
ALT+SHIFT+拖放多个texture到场景 从多个texture中(通过名字排序)创建一个新的动画sprite,并使用物理系统。物理是从第一帧动画的texture开始计算的。同时也创建了animation clip。

当然还有更多的创建方式:正如你看到的,sprite editor窗口有3个按钮,你可以选择一个或多个texture,然后再点击按钮来创建。

必须在SpriteEdite打开状态下才有效

按钮 描述
Create sprite 对每个选择的texture创建一个sprite。和拖放texture到场景是一样的。
Create physics sprite 对每个选择的texture创建一个物理sprite。和ALT+拖放texture到场景是一样的。
Create animation clip 从选择的texture创建 animation clip asset。帧是根据texture名字排序的。参照上面快捷方式表格第三和第四种方式。

Sprite组件和属性(Uni2D Sprite)

Uni2DSprite组件inspector显示所有的设置,你能按你的爱好扭曲你sprite的形状。inspector支持多选编辑,这样可以节省你宝贵的时间。

Sprite Inspector 预览

Sprite部分

设置  描述
Sprite Texture 用于sprite的texture
Use Atlas 包含了texture的atlas。atlas已经包含了下面列出的sprite texture,其它所有可用atlas在“all atlases”子菜单中列出。你也能创建一个新的atlas来立刻包含sprite texture,通过点击"create a new atlas"即可。看Atlasing部分可以了解更多细节。
Shared Material 默认的,如果没有atlas,sprite有它唯一的material。如果你想要在多个sprite之间共享material(为了优化)设置这个域为你指定的material。
Vertex Color 给sprite的mesh染色。这个属性也能在运行时通过脚本访问(请看API部分获取更多详情)
Collider Triangles 生成的物理mesh 三角形的统计数目,用于信息显示。当创建物理sprite的时候,尽量让这个数目小一点。
Sprite Scale 基础scale用于生成sprite。Uni2D使用纹理的width和height做为基础大小并应用0.01因素给它们。默认scale1表示512*512的texture将在Unity中产生一个5.12*5.12的sprite,0.5将创建一个2.56*2.56等等。

Pivot部分

设置 描述
Position 预定义中心点的位置。默认是Middle Center
Custom 使用这个把轴心放到你喜欢的位置。

Pivot 调节不会显示在视图中,但会影响SpriteScale

Sprite Mesh部分

设置 描述
Mesh 用于渲染Sprite的Mesh(表格下面有三个图片来演示mesh不同设置)

  • Quad:生成一个简单的四方mesh
  • Texture-To-Mesh:通过texture的外形生成mesh。对于节省填充率它是很有用的。
  • Grid:生成格子mesh。也能节省填充率。
Alpha cut off(只有mesh属性设置为Texture-To-Mesh或Grid才有) 0意味着所有的像素都有用,而结果就是一个方形mesh。
Edge Simplicity 使用这个设置去简化生成mesh的拓扑。一个低的值意味着一个轮廓分明的mesh。一个高的值意味着一个简单的图形。用于减少三角形数目。
Use Physics 勾选这个复选框,如果你想让你的sprite 使用物理的mesh做为sprite mesh。(前提是这是一个物理sprite)
Horizontal/Vertical Sub Divs 水平和垂直创建网格的数量。增加这个值能在skinned sprite创建更美妙的变形。都为0则为一个方形mesh。

不同mesh设置的效果:

Physics 部分

设置 描述
Physics Mode 应用到sprite的模式有:

  • No Physics:sprite没有物理效果
  • Static:一个mesh collider附加到sprite上
  • Dynamic:一个mesh collider和一个rigidbody附加到sprite上
Collision Type 生成的物理mesh的形状。

  • Convex:凸面形
  • Concave:凹面形
  • Compound:多个碰撞器组成,也允许以开销较大的速度执行凹面碰撞。
Is Kinematic(只有Dynamic物理模式有效) 勾选这个复选框让sprite不受unity的物理引擎驱动。
Alpha Cut Off 和sprite的mesh是一样的,不过这个用于生成物理mesh。
Edge simplicity 和sprite的mesh是一样的,不过这个用于生成物理mesh。
Extrusion depth 所有生成的物理mesh有厚度,使用这个值可以调整它。
Polygonize Holes(只有Concave和Compound的collision type有效) 打开它可以在生成物理mesh的时候顾及到小孔。

physics > Dynamic 要么为3D要么为2D 否则不会交互

physics Skin Mode 1 no collider 不随Skeletal更新

          2 使用脚本更新

          3 只有Skeletal移动才更新

Skeletal平滑绑定部分

设置 描述
Skin quality 骨头的数目影响到对每个顶点的考虑。越大的值提供越好的效果,但也带来计算量的增加。“auto”值使用Unity当前平台的默认质量,即你项目build setting中设置的。
Bone Influence Falloff 改变这个值去设置你骨头的影响区域。Bone Influence会在两个骨头的顶点方法中计算。低的值意味着更少的衰减,所以大的影响区域,更高的值意味着更大的衰减,即影响区域更小。
Open Skeletal Animation Editor 点击这个按钮打开骨骼动画编辑器。更多详情在专门的部分会讲到。

Animation 部分

属性 描述
Play Automatically 勾选这个复选框会使得在sprite初始化的时候就开始播放默认clip
Start clip index 第一个播放动画的下标
Animation Clips 当前sprite上面的animation clips。更多详情看Animation Clip部分
Add animation clip 点击这个按钮来附加一个animation clip到这个sprite上。你也能通过点击菜单栏“Uni2D > Create > Animation Clip”来创建一个新的animation clip并把它附加到sprite上。
时间: 2024-08-01 21:42:58

Uni2D入门的相关文章

Uni2D 入门 -- Skeletal Animation

转载 csdn http://blog.csdn.net/kakashi8841/article/details/17615195 Skeletal Animation Uni2D V2.0 引进了一个新的skinning 特性:由于内置骨骼动画编辑器你现在能增加骨头到你的sprite并立刻让他们动画.为了这样做,你的sprite只需要几步设置,通过posing 模式就可以达成. TIPS:为了得到最好的结果,我们强烈建议你使用细致的grid render mesh Skeletal Anima

Uni2D 入门 -- Asset Table

转载 http://blog.csdn.net/kakashi8841/article/details/17686791 Uni2D生成了一个自定义的表格用于保存你资源的唯一ID的引用.这个表格用于更新资源.比如,当你导入一个texture,Uni2D将检查这个表格,从而判断是否有atlas需要被更新. 为了以防万一,你也可以执行一个完全重新生成这个表格命令,如果你怀疑Uni2D可能出错的时候,就像一个空的atlas再inspector中列出sprite. 首先,选择Uni2D asset表格.

Uni2D 入门 -- Animation Clip 和 Animation API

转载 csdn kakashi8841 http://blog.csdn.net/kakashi8841/article/details/17599505 Animation Clip 一个animation clip是可重用的帧集合,它以给定的帧率显示sprite.每一帧包含的texture和可选事件. 可通过菜单栏“Uni2D > Create > Animation Clip”创建一个Animation Clip.   Animation Clip Inspector Atlas 部分

Uni2D 入门 -- Atlas转载 http://blog.csdn.net/kakashi8841/article/details/17588095

转载csdnTexture Atlas 我为什么应该使用Texture Atlas? 使用Atlas是一个普遍的好做法,而且它有很多好处.当有某些需要在屏幕渲染的时候,它背后带来的是draw call.由于不同的原因(例如渲染状态改变),一个draw call是一个很慢的操作,因此我们需要保持较低的draw call来保证较高的帧率.在移动设备上,接近30-40个draw call就开始变得危险了,具体取决于你的设备和渲染的场景. 幸运的是,在一些条件下,draw call是可以被批量处理的.u

R语言快速上手入门

R语言快速上手入门 课程学习网址:http://www.xuetuwuyou.com/course/196 课程出自学途无忧网:http://www.xuetuwuyou.com 课程简介 本教程深入浅出地讲解如何使用R语言玩转数据.课程中涵盖R语言编程的方方面面,内容涉及R对象的类型.R的记号体系和环境系统.自定义函数.if else语句.for循环.S3类R的包系统以及调试工具等.本课程还通过示例演示如何进行向量化编程,从而对代码进行提速并尽可能地发挥R的潜能.本课程适合立志成为数据科学家的

笔记:Spring Cloud Zuul 快速入门

Spring Cloud Zuul 实现了路由规则与实例的维护问题,通过 Spring Cloud Eureka 进行整合,将自身注册为 Eureka 服务治理下的应用,同时从 Eureka 中获取了所有其他微服务的实例信息,这样的设计非常巧妙的将服务治理体系中维护的实例信息利用起来,使得维护服务实例的工作交给了服务治理框架自动完成,而对路由规则的维护,默认会将通过以服务名作为 ContextPath 的方式来创建路由映射,也可以做一些特别的配置,对于签名校验.登录校验等在微服务架构中的冗余问题

linux入门基础知识及简单命令介绍

linux入门基础知识介绍 1.计算机硬件组成介绍 计算机主要由cpu(运算器.控制器),内存,I/O,外部存储等构成. cpu主要是用来对二进制数据进行运算操作,它从内存中取出数据,然后进行相应的运算操作.不能从硬盘中直接取数据. 内存从外部存储中取出数据供cpu运存.内存的最小单位是字节(byte) 备注:由于32的cpu逻辑寻址能力最大为32内存单元.因此32位cpu可以访问的最大内存空间为:4GB,算法如下: 2^32=2^10*2^10*2^10*2^2 =1024*1024*1024

JAVA通信系列二:mina入门总结

一.学习资料 Mina入门实例(一) http://www.cnblogs.com/juepei/p/3939119.html Mina入门教程(二)----Spring4 集成Mina http://www.cnblogs.com/juepei/p/3940396.html Apache Mina 入门实例--创建一个MINA时间服务http://loftor.com/archives/apache-mina-quick-start-guide.html MINA2.0用户手册中文版--系列文

Storm入门(四)WordCount示例

Storm API文档网址如下: http://storm.apache.org/releases/current/javadocs/index.html 一.关联代码 使用maven,代码如下. pom.xml  和Storm入门(三)HelloWorld示例相同 RandomSentenceSpout.java /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor lice