對遊戲研發來說,美術素材絕對是整個遊戲容量的最大問題來源,尤其現在的手遊市場、中國低階市場對遊戲容量(包)的要求更是嚴苛。那麼美術人員能夠做什麼樣的優化,讓美術資源佔用更少容量呢?從量最大的Texture來說,大部分的美術人員用Photoshop等工具存出圖檔後就不會再做任何處理,但其實Photoshop在檔案輸出的部份優化的並不是很好,我們可以透過其他的工具讓輸出的圖片容量更小,且達到幾乎完全相同的品質。在此就介紹一個可以有效壓縮PNG的軟體「PNG Gauntlet」,這個軟體是我在參與2013 GDC Taipei時聽到Qubit Games的創始人兼美術總監路致遠先生提到才知道的,因為過往我也是個不太care這個問題的美術…
PNG Gauntlet
http://pnggauntlet.com/- 免費軟體
- 運行需要NET Framework 4
- 支援輸入:
- PNG
不支援16-bit color depths - GIF
只會輸出第一個影格 - PCX
支援8和24bit - BMP, JPEG, TGA
完全支援 - 本文使用的是3.1.2版本
Options
開啟設定面板 |
設定面板視窗 - PNGOUT |
PNGOUT \ Standard Options
主要需要設定的是PNGOUT面板的Standard Options區塊- Bit Depth 色彩深度
一般用Minimize選項即可,會自動選擇最適合的Bit Depth。
但有固定需求時可以直接去設定自己想要的選項,以防轉出的不是自己想要的格式。 - Color Type 顏色模式
一般用Default(Best)選項即可,會自動選擇合適的模式。 - Filter Type 過濾器類型
用Default(Best)即可,會自動選擇合適的模式。 - Preserve Gamma Information
保持Gamma資訊,在PNGOUT的Doc中沒說明到這一部份…
PNGOUT \ Advanced Options
下面的Advanced Options部份通常是不需要進行設定,可以略過此部份…- Block Split
維持預設的Automatic即可。
這是PNG壓縮演算法會使用到的參數,通常Automatic能替你找出最適合的數值。 - Keep palette order intact
完整保留palette的順序
這邊我亂猜可以用於做tint的運用,透過固定的palette順序可以直接抽換palette的顏色達到換色效果?! - Randomize Initial Huffman Tables
壓縮時會使用隨機產生的Huffman Tables,在同樣的格式設定下每次壓縮會造成圖檔容量的差異,但由於差異不大,可以完全忽略。
PNGOUT的規則與限制
而PNGOUT的Doc有提到一些規則與限制,最重要的是第二項
- 會以無損的前提下進行壓縮。
- 他不會去破壞現有的色彩資訊,因此你得事先用其他軟體把圖片轉成你想要的模式。
例如:你輸入的圖片為彩色的,就不能輸出成Grayscale,因為他不會改變現有的色彩資訊,你必須先用Photoshop把圖片轉成灰階模式 - 無法移除Alpha資訊
- Interlaced的PNG會被輸出為Non-interlaced
- 預設設定下無法將檔案壓縮到更小的容量時,就會中止壓縮作業(可透過General面板的Always convert files to PNG even if it would make them larger選項關閉)
- 檔案名稱變成紅字時代表壓縮失敗,可能是因為無法轉換或者是因為壓縮後的檔案變的更大了
- 當PNGOUT將圖片壓縮為8 bit的paletted格式時,部份的圖像軟體會無法正確讀取Alpha
OptiPNG
再來是OptiPNG面板,由於PNGOUT的壓縮效率已經很高,這部份能獲得的效果其實不大,若想節省壓縮時間可以關閉。DelfOpt
而DelfOpt面板由於關軟體的原始網站已經變成滑水網站,所以就略過吧…參考
- png图片无损压缩工具PNGGauntlet详细介绍及使用方法(出处: 爱毒霸社区)
http://bbs.duba.net/thread-22664727-1-1.html
Super PNG
- Phtoshop Plug-in安裝方式:
將.8bi檔案放入Potoshop Plug-in資料夾內
ex. C:\Program Files\Adobe\Adobe Photoshop CC 2014\Plug-ins
TinyPNG
http://januswow.blogspot.tw/2015/03/png-png-tinypng.html
沒有留言:
張貼留言