如有需要,請使用 MIP 映射來縮放大型影像。
Flash Player 10.1 與 AIR 2.5 在所有平台上可使用的另一項新功能與 MIP 映射相關。Flash Player 9 與 AIR 1.0 引進 MIP 映射功能,以改善降幅點陣圖的品質與效能。
備註:
MIP 映射功能僅適用於動態載入的影像或內嵌的點陣圖。MIP 映射不適用於已套用濾鏡或快取的顯示物件。只有在點陣圖的寬度與高度為偶數時,才會處理 MIP 映射。當遇到奇數的高度或寬度時,MIP 映射會停止。例如,250 x 250 影像可以向下 MIP 映射至 125 x 125,但是無法進一步 MIP 映射。在此情況下,至少有一個尺寸是奇數。尺寸為 2 的次方之點陣圖可具有最佳結果,例如:256 x 256、512 x 512、1024 x 1024,以此類推。
例如,想像載入 1024 x 1024 的影像,且開發人員想要縮放影像以建立圖庫中的縮圖。當使用點陣圖的中間縮減取樣版本做為紋理來縮放時,MIP 映射功能會正確地顯示影像。舊版的執行階段會在記憶體中建立點陣圖的中間降幅版本。如果載入 1024 x 1024 影像並以 64 x 64 顯示,較舊版本的執行階段會建立每個一半大小的點陣圖。例如,在此情況下,會建立 512 x 512、256 x 256、128 x 128 以及 64 x 64 的點陣圖。
Flash Player 10.1 與 AIR 2.5 現在支援直接從原始來源 MIP 映射至所需的目的大小。在之前的範例中,只會建立 4 MB (1024 x 1024) 的原始點陣圖與 16 KB (64 x 64) 的 MIP 映射點陣圖。
MIP 映射邏輯也可以和動態點陣圖取消載入功能搭配使用。如果使用 64 x 64 點陣圖,會從記憶體釋放 4 MB 的原始點陣圖。如果必須重新建立 MIP 映射,則會重新載入原始點陣圖。另外,如果需要各種大小的其他 MIP 映射點陣圖,會使用點陣圖的 MIP 映射鏈以建立點陣圖。例如,如果必須建立 1:8 點陣圖,則會檢查 1:4、1:2 與 1:1 點陣圖,以判斷哪一個先載入記憶體。如果找不到其他版本,會從資源載入 1:1 原始點陣圖並加以利用。
JPEG 解壓縮程式可以用自己的格式執行 MIP 映射。這個直接的 MIP 映射可以讓大型的點陣圖直接解壓縮成 MIP 映射格式,而不須載入整個未壓縮的影像。產生 MIP 映像會大幅變快,而且不會配置和釋放大型點陣圖所使用的記憶體。JPEG 影像品質可媲美一般 MIP 映射技術。
備註:
請盡量少用 MIP 映射。雖然 MIP 映射可改善降幅點陣圖的品質,但會影響頻寬、記憶體以及速度。在某些情況下,較好的做法是使用外部工具預先縮放點陣圖版本,然後將它匯入您的應用程式中。如果您只是想將大型的點陣圖縮小,則請不要從大型點陣圖開始您的作業。