1. 程式人生 > >Unity優化資源優化之紋理優化

Unity優化資源優化之紋理優化

Unity3D引擎處理紋理:不論你匯入的是PNG,PSD還是TGA,它們都會被自動轉換成Unity自己的Texture2D格式。(美術資源規範:貼圖長寬應為4的倍數)

不同平臺的圖集格式選擇方案(TextureImporterFormat): Android: RGB Compressed ETC1 4 bits+Alpha(方形) iOS: RGB Compressed PVRTC 4 bits+Alpha(方形) 所以圖集需要設定為方形。

對於非方形的紋理: Android: 低畫質:RGB Compressed ETC2 4 bits(非透明)/RGBA Compressed ETC2 8 bits(透明) 中畫質:RGBA 16 bits 高畫質: RGBA 32 bits

ETC2 的格式理論上只在OpenGL ES 3.0 的裝置上被支援,而在不被支援的裝置上則會內部自動轉成 RGBA32/ARGB32的格式,這對於 RGBA Compressed ETC2 8bits 的紋理就是放大了 4 倍。

iOS: 低畫質:RGBA 16 bits 高畫質: RGBA 32 bits

紋理資源方面的問題除了尺寸外,紋理格式、Mipmap設定和Read&Write功能

格式修改程式碼: TextureImporter import = AssetImporter.GetAtPath(path) as TextureImporter;

AssetDatabase.ImportAsset(path);