手游客戶端圖片資源的優(yōu)化

手游中常用的圖片格式分為png8、png24、jpg和pvr。png8要么完全透明,要么完全不透明,而png24支持半透明,jpg完全不透明,pvr支持半透明,并且是大部分手機(jī)顯卡直接支持的,不需要額外的解析。
從體積大小上比較各種格式:pvr ≈ png24 > jpg > png8
從解析效率和內(nèi)存峰值上比較: jpg > png24 = png8 > pvr
那么我們?cè)谶M(jìn)行圖片資源優(yōu)化時(shí)有哪些原則和方法呢?

  1. 舍棄pvr。時(shí)至今日,幾乎所有手機(jī)的顯卡都已經(jīng)支持pvr,但是為何大家都不選擇pvr呢?pvr的唯一優(yōu)點(diǎn)是其能夠給大部分手機(jī)的顯卡直接支持,不需要解析就能渲染,但是硬件性能的提升已經(jīng)讓這唯一的優(yōu)勢(shì)蕩然無(wú)存了。
  2. 不透明的背景圖全都使用jpg。jpg最大的優(yōu)勢(shì)便是體積小,雖然顯卡在解析jpg時(shí),需要復(fù)制兩份圖片數(shù)據(jù)導(dǎo)致內(nèi)存峰值很高,但是內(nèi)存峰值的問(wèn)題,在目前的硬件條件下已經(jīng)不再是大問(wèn)題了。
  3. 需要支持透明的圖片都使用png24。為什么這里不選擇png8?因?yàn)閜ng8能夠存儲(chǔ)的顏色數(shù)量有限,簡(jiǎn)而言之就是png8不夠艷,在這個(gè)拼臉的時(shí)代里,顏值不高就什么都不對(duì)了。
  4. 安裝包太大,老板說(shuō)“你丫的快給老子把安裝包壓縮到80M以內(nèi)”怎么辦?使用jpg+png8。jpg之所以不支持透明,是因?yàn)樗淮鎯?chǔ)透明通道信息,而png8正好可以存儲(chǔ)透明通道信息,所以我們就可以把一張png24的圖拆成一張jpg和一張png8,壓縮比在90%左右,這個(gè)壓縮比非??捎^,缺點(diǎn)就是解析比較慢,內(nèi)存峰值也比較高。程序在讀取圖片時(shí),首先解析jpg,拿到RGB通道數(shù)據(jù),然后解析png8,拿到A通道數(shù)據(jù),再生成一個(gè)新的空紋理,將得到的RGB數(shù)據(jù)和A數(shù)據(jù)賦值給這個(gè)新的空紋理,就得到了包含ARGB的紋理了,再交給顯卡去渲染。因?yàn)橐馕鰞蓮垐D片,所以解析時(shí)間是通常的兩倍,內(nèi)存峰值也是png24的2.5倍(png24是2,png8是2,jpg是3,jpg + png8就是5)。
  5. 使用一些圖片壓縮工具將圖片體積變小。比如PP鴨,這個(gè)工具挺好使的,工具的制作團(tuán)隊(duì)開(kāi)發(fā)的MarkMan也是個(gè)小神器。

另外說(shuō)一點(diǎn),美術(shù)作圖時(shí)一定要考慮重用性 美術(shù)作圖時(shí)一定要考慮重用性 美術(shù)作圖時(shí)一定要考慮重用性

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,355評(píng)論 25 708
  • 1、2d游戲最占內(nèi)存的無(wú)疑是圖片資源。 2、cocos2d-x不同平臺(tái)讀取紋理的機(jī)制不同。ios下面使用 CGIm...
    IamOnelong閱讀 1,241評(píng)論 0 0
  • 如以上DEMO截圖所示效果,我們對(duì)于這種類似的功能肯定不算陌生,因?yàn)檫@可以說(shuō)是實(shí)際開(kāi)發(fā)中一類非常常見(jiàn)的功能需求了。...
    Machivellia閱讀 2,641評(píng)論 1 13
  • Png是圖像文件存儲(chǔ)格式,在網(wǎng)頁(yè)設(shè)計(jì)中已經(jīng)不是一個(gè)陌生的名詞,在前端開(kāi)發(fā)中經(jīng)常使用到它,如常用CSS雪碧圖。而Pn...
    打豆豆閱讀 1,033評(píng)論 0 1
  • 9.28出其不意策略 用出其不意的策略擊穿堆放地心理防線,才會(huì)讓自己處在一個(gè)占優(yōu)勢(shì)的地位中。
    張琪77閱讀 295評(píng)論 0 0

友情鏈接更多精彩內(nèi)容