Unity中精灵Sprite,精灵图集SpriteAtlas详解
前言
Unity3D中UGUI的Image組件、Unity2D的SpriteRender組件等都需要使用Sprite類型的圖片。
用戶在導(dǎo)入圖片資源后,可以切換TextureType為Sprite(2D and UI)類型。
在使用精靈這一類型時(shí),還有以下幾個(gè)問(wèn)題需要解決:
1,官方PackingTag不好使
PS:需要注意的是本文中的SpriteAtlas專指由若干Sprite圖片打成的大圖集,而不是Unity3D2017新加入的Sprite Atlas組件。
官方自帶圖集解決方案SpritePacker
有過(guò)NGUI經(jīng)驗(yàn)的小伙伴都知道,每次要使用圖片都要先加入到圖集中。而UGUI的原理則是,讓開(kāi)發(fā)者徹底模糊圖集的概念,讓開(kāi)發(fā)者不要去關(guān)心自己的圖集。做界面的時(shí)候只用小圖,而在最終打包的時(shí)候Unity才會(huì)把你的小圖和并在一張大的圖集里面。然而這一切一切都是自動(dòng)完成的,開(kāi)發(fā)者不需要去管它。
啟用SpritePacker
Editor->Project Settings->Editor。默認(rèn)情況下Sprite Packer的Mode選項(xiàng)是Disabled狀態(tài)。
建議設(shè)置Mode為:Always Enabled(Legacy Sprite Packer)
PS:筆者設(shè)置Mode為Always Enabled,但是在打開(kāi)Sprite Packer的時(shí)候卻提示:Leagcy sprite packing is disabled…個(gè)人推測(cè),該選項(xiàng)對(duì)應(yīng)的功能還沒(méi)有完善開(kāi)放。
啟用后,Unity3D會(huì)自動(dòng)把具有相同Packing Tag的Sprite打成圖集。圖集以加密方式存儲(chǔ)在Libary/AtlasCache目錄下。需要注意的是要打成圖集的Sprite不能放到Resources目錄下,該目錄下的精靈不會(huì)被打成圖集。
打開(kāi)SpritePacker
Window->2D->SpritePakcer可以打開(kāi)SpritePacker,用來(lái)預(yù)覽圖集。
動(dòng)態(tài)加載圖集或精靈
官方方案旨在淡化圖集,因此未提供直接加載圖集或者根據(jù)已有圖集動(dòng)態(tài)加載精靈的方法。因此有這方面需求的需要自己造輪子了。
可以參考雨松的方案:https://www.xuanyusong.com/archives/3304 本文不再贅述。
TexturePacker方案
官網(wǎng):https://www.codeandweb.com/texturepacker
TexturePacker是收費(fèi)網(wǎng)站,可以給作者寫(xiě)郵件,申請(qǐng)序列號(hào)。
這里提供一個(gè)4.9.0的破解版供學(xué)習(xí)用:https://download.csdn.net/download/iningwei/11100528
https://www.xuanyusong.com/archives/3304
https://www.codeandweb.com/texturepacker
https://www.cnblogs.com/lancidie/p/8638926.html
https://assetstore.unity.com/packages/tools/sprite-management/texturepacker-importer-16641
https://www.cnblogs.com/zhoujiangyue/articles/6842280.html
總結(jié)
以上是生活随笔為你收集整理的Unity中精灵Sprite,精灵图集SpriteAtlas详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: android真机调试问题,看不到log
- 下一篇: 浅谈软件测试之回归测试