我正在Unity3d中編寫3D iOS遊戲,並且找不到關於爲不同設備包含不同紋理大小的完整且直接的答案。首先,我假設一個真正通用的應用程序將需要每個紋理的3個版本......(非視網膜iPhone/iPod的低分辨率,視網膜的低分辨率iPhone/iPod和非視網膜iPad ,現在是iPad的4倍水平)我也假設基於蘋果定義的命名約定,下載一個應用程序到特定的設備將只下載適當的紋理。否則,將所有三種分辨率下載到老的非視網膜電話將包含95%的載重量。在通用iOS應用程序中打包多個分辨率
Apple文檔鏈接指出在視網膜設備的紋理文件名以及適用於設備的「〜ipad」或「〜iphone」中使用「@ 2x」。
假設1024×1024低資源地圖集文件,並按照上面的命名規則,我們現在不得不包括每個圖像的四個文件,但其中的兩個文件是相同的除了文件名?
如:
(1024 x 1024) myAtlas~iphone.png
(2048 x 2048) [email protected]~iphone.png
(2048 x 2048) myAtlas~ipad.png
(4096 x 4096) [email protected]~ipad.png
這是正確的嗎?
我想我的困惑源於能夠輕鬆使用相同的紋理分辨率爲非視網膜iPad和視網膜iPhone/iPods,因爲屏幕分辨率是相當相似的,但蘋果建議的命名約定似乎並沒有利用那個。
這將是我在iOS上首次發佈的應用程序,也許我完全錯過了一些觀點?或者也許我的一些假設是錯誤的?
謝謝rickerster,我開始害怕,可能是這種情況。所以,鑑於Unity可以自動生成一些紋理的mipmap,我真的沒有理由包含除最高分辨率以外的任何其他紋理。這似乎對我來說非常直觀,迫使低端設備承擔額外的重量。 – Adam 2012-07-19 11:29:04