unity中sprite是什么意思

unity中sprite是什么意思,第1张

unity中sprite是图片精灵的意思;图片精灵是用来绘制图集的控件,精灵可以在一张大图中去截取一部分(大图就是整体图像集合(Atlas),而截取的小图就是一个精灵),然后给精灵命名,使用时通过精灵的名称就能直接绘制,并且精灵还可以用来制作动画。

我们用来做sprite 的图片,通常会留有很多空白的地方,我们在画完了sprite之后,这些地方很可能就没有什么作用了。如果想避免这些资源上的浪费,我们可以把各个sprite做成图集,把图片上的空间尽量利用得充实一点。这时候,我们就需要一个制作图集的工具。

首先,Unity默认是在编辑器环境下不打开图集打包工具的,只有在Build的时候才会执行自动打包图集。Edit – Project Setting – Editor.既然这个功能是这样自动化,那为什么一开始是禁用状态,需要我们手动去editor setting里面设置打开呢?

原因是这个功能在unity打开工程的时候会先花一些时间运算图集,如果你需要计算的sprite很多,那么打开就会慢一些。计算好的图集会放在缓存文件夹Project\Library\AtlasCache里面,如果把这里的内容删掉,那么unity将会再次运算图集。

没有设置 Packing Tag,那Unity应该不知道怎么去打包图集.所以要把你要打包的图片.设置packingtag放在Resources中的图片,Unity不会打包到图集中。

2D游戏中的游戏物体,实际上是对图片的处理。把图片的格式转换成可以直接用在2D游戏中的格式,转换后的图片称为Sprite(精灵),为了提高性能,2D游戏开发时,美工会将不同的图片拼成一张大图,在引擎中会把这张大图中的某一部分读出来作为Sprite显示在屏幕中。

1.第一种方法:将美工制作好的包含多个小纹理图片的大纹理图片,导入到Unity中进行格式转换,然后使用SpriteEditor工具将大图分割成若干个Sprite使用,具体 *** 作流程如下:

(1)导入一张图片到Unity中,如图:这里是将多个所用到的2D精灵放置在一张图片中:

(2)将Texture Type设置成Sprite(2D and UI),Sprite Mode设置成Multiple,可以将大图分割为几个小图:

2.第二种方法:直接将原始图片导入到Unity中,使用Unity提供的SpritePacker工具将导入的图片打包,再从打包后的图片读取Sprite。

(1)SpritePacker打包精灵

Edit ->ProjectSetting ->Editor中SpritePacker默认是Disabled,需设置为AlwaysEnabled(LegacySpritePacker):

EnabledForBuilds:只有在到处游戏时使用。

(2)选中要打包的精灵,设置Packing Tag,点击Apply,相同的PackingTag值得精灵会打包到一个包里:

图片导入 设置等 :

常用的格式png jpg

将图片 textureType 设置为Sprite

将单个图片设置为 SpriteMode 设置为Single

将包含多个小图的一张大图 SpriteMode 设置为Multiple,在SpriteEditor中将素材进行切割,得到小的图片资源

PackingTag 进行精灵打包,减少资源大小,减少加载次数

GenerateMipMap (3D图片使用)牺牲CPU优化GPU,图片(大小)占用的内存增加33%左右,保存原图片的各种缩小图,在距离较远时,使用小图,来减少GPU的负担

Read/Write Enable 是否需要改图片

精灵动画 通过将多个精灵一起拖入Hierarchy进行创建精灵动画

SpriteRender :

OrderInLayer来控制渲染层级,数大的渲染在前面.

注意:在定项目之前定一个主分辨率

2D碰撞 条件和3D碰撞一样

给地形添加EdgeCollider地形碰撞

给玩家添加Rigidbody2D ,FreezeRotation -Z


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11252968.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存