檔案格式 (.lum)

Lumi 的原生 .lum 格式是專案目錄,不是封閉的單一檔案。它為分層插畫而設計:深層圖層樹、大尺寸畫布、遮罩、非破壞性效果,以及不必把整幅畫再複製一份的檢查點。

格式的任務是讓這套工作結構維持完整。專案才能如實重新開啟,出狀況時得以檢查,並從最近的檢查點復原,而不是把圖稿當成一塊看不透的整體。

有意拆開存放

.lum 專案是一個資料夾。圖層樹與影像屬性寫在可讀的 XML 裡。每個圖層和遮罩各自保留像素緩衝區,按圖稿命名,而不是按內部 ID。向量路徑以普通 SVG 儲存。較重的濾鏡設定放在影像旁的獨立檔案中。ICC 設定檔只在專案根目錄存一份,復原快照可以參照它們,而不必複製。

正因為拆成多份,其餘的格式才站得住。未變更的圖層可以留在磁碟上不動。損壞的緩衝區只讓自己失敗,不會拖垮整個檔案。缺少圖層像素時,會變成空圖層,但名稱、位置與混合設定仍在;缺少圖層群組的合成時,則從子項重建。專案仍然是這幅畫如何建成的一張地圖。

顏料調色盤留在 Lumi 的色彩工具裡。專案可以記住影像關聯了哪套調色盤,但調色盤庫本身在 .lum 之外。

可編輯狀態,而非扁平化

檔案儲存的是正在畫的那幅畫。圖層仍是圖層,圖層群組仍是圖層群組,遮罩仍是遮罩,偏移、鎖定、混合行為與濾鏡堆疊都包括在內。非破壞性濾鏡儲存為操作與參數,而不是已經固化的像素。純色圖層完全不需要像素檔案。

摺疊的圖層群組還會留下自己的合成預覽。關閉圖層群組時,畫布上出現的就是這份已儲存的合成預覽,不必只為了看圖而重建子項。僅用於顯示的檢查模式不進入該快取:為編輯而顯示遮罩或 Alpha,會作為中繼資料復原,而不會燒進已儲存的圖層群組。

大型檔案可以部分留在磁碟上

開啟 .lum 不必載入每一個像素。摺疊圖層群組裡的內容可以留在磁碟上,同時立刻顯示該群組已儲存的合成預覽。展開圖層群組時,其中的圖層、遮罩與巢狀圖層群組才載入記憶體。一直關著的圖層群組負擔較輕。

檔案還會記下哪些圖層群組真正在用。目前選取路徑上的圖層群組可以以展開狀態重新開啟;其他資料夾即使上次工作階段是開啟的,也會按摺疊儲存。這樣,開啟深層檔案時不會立刻把未使用的分支都載入記憶體。

因此,群組既是組織方式,也是效能選擇。大型背景、歸檔的實驗與未使用的變體可以放在關閉的圖層群組裡,而不佔用與正在繪製的圖層相同的記憶體。儲存遵循同一規則:仍隱藏的緩衝區按檔案複製或略過,而不會為了再寫出去就重新脹回記憶體。

只寫入已變更內容的檢查點

檔案 → 儲存 會更新工作專案。增量儲存與自動儲存寫入復原樹,並且只寫入已變更的資料——已變更的圖層緩衝區,而不是整幅影像的第二份副本。每個檢查點仍帶有圖層樹的完整描述,因此這條軌跡上的任意一點,都可以透過從較舊檢查點(必要時從工作檔案本身)補齊未變更的像素來開啟。

自動儲存以同樣的方式寫到單獨的快取中,因此自動保護不必重寫磁碟上的檔案。若開啟專案時存在比上次完整儲存更新的檢查點,Lumi 可以提供它們,而不是默默丟棄更新的工作。復原的影像以不同的名稱開啟,以免一次快速儲存覆寫原件。

用於繼續工作的格式

.lum 是為了在 Lumi 裡把畫繼續畫下去。扁平化或相容性格式則供發布、交付與其他應用程式使用。專案是由許多檔案組成的目錄,若要攜帶,應當封存。

工作檔案維持豐富且可編輯。完成或需要分享的影像,靠匯出離開這套結構。