以 NetDrive 服務 VFX 與 3D 算圖工作室 — 無需本機副本的算圖農場

閱讀時間 5 分鐘 use-case google-cloud-storage
Morgan
MorganStaff Engineer
VFX 與 3D 算圖工作室如何使用 NetDrive 將 Google Cloud Storage 掛載為磁碟機,讓算圖節點無需事先同步即可讀取影格與貼圖。

一家中型 VFX 工作室把自己的鏡頭素材庫放在 Google Cloud Storage 上——包括快取的流體模擬、EXR 影格序列,以及在多個進行中專案裡持續成長、已超過 30 TB 的共用貼圖庫。算圖農場中的每個算圖節點都需要對這個素材庫的讀取權限,但在工作開始前把整套工作集下載到每台機器,既浪費了原本可用於本機暫存檔案的磁碟空間,又會讓每次算圖都因同步耗時而延誤。用 NetDrive 把該儲存桶掛載為磁碟機後,每個節點都能依需求精準讀取某個工作實際會用到的影格與貼圖,不必事先執行複製步驟。

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

在整個算圖農場掛載雲端儲存

NetDrive 讓 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 與 macOS 上顯示為原生磁碟機 — 不需同步,也不需完整下載。

  • 唯讀磁碟機可防止算圖節點動到來源素材
  • 最高 1 TB 的快取大小選項可吸收重複的貼圖讀取
  • 開機自動掛載讓磁碟機無需使用者工作階段即可就緒
WindowsmacOS
下載 NetDrive →

免費試用。提供終身與訂閱方案。

為什麼隨選存取勝過事先同步

算圖農場節點通常被設定成完全相同、可任意抽換的機器——基本假設是任何節點都能接手任何工作。這與把整個素材庫事先同步到本機磁碟的做法相衝突,因為一旦某項工作可能落在五十個節點中的任何一個,要嘛這五十個節點都得有一份完整的本機副本(一種龐大且不斷過時的重複儲存),要嘛每項工作開始前都得先跑一次同步步驟,替一次可能每格只需幾秒鐘的算圖平白增加幾分鐘的閒置時間。

NetDrive 會把 Google Cloud Storage 儲存桶掛載為網路磁碟機或唯讀磁碟機,算圖引擎看到的就是像 R:\assets\textures\ 這樣普通的檔案路徑。只有在工作真正讀取某個影格或貼圖時,資料才會被傳輸過來,而 NetDrive 的快取機制會讓最近用過的檔案保持可用,供下一個需要同一貼圖的工作直接使用,不必每次都重新從儲存桶取得。

用於透過 NetDrive 將儲存桶掛載為磁碟機的 Google Cloud Storage 供應商圖示

為算圖節點設定唯讀素材磁碟機

  1. 開啟 NetDrive,在 Drive Manager 中點擊 + Add Drive。
  2. 從供應商清單中選擇 Google Cloud Storage。
  3. 輸入限定於鏡頭素材庫儲存桶範圍的服務帳戶憑證——對於只消費素材的節點,唯讀 IAM 角色就已足夠。
  4. 輸入儲存桶名稱。
  5. 在 Drive Type 中選擇 Read-only drive。算圖節點沒有理由要寫回來源素材儲存桶,唯讀掛載可以杜絕組態錯誤的工作意外覆寫共用貼圖的可能性。
  6. 由於算圖節點是以無人值守機器的方式運作,而非已登入的工作站,請將 Mount on 設為 Boot。
  7. 在磁碟機設定中調高快取大小——NetDrive 支援 100 GB 到 1 TB 的快取大小(於 3.16.589 新增),這對於在單一序列的多個影格中反覆讀取同一貼圖集的算圖節點尤其重要。
  8. 點擊 Mount。

NetDrive Drive Manager 顯示已掛載為磁碟機的雲端儲存,可供算圖節點讀取

在不阻塞算圖的情況下寫回影格

讀取權限涵蓋了貼圖與模擬快取,但算圖完成的影格仍需要存放到某處。第二個以讀寫方式掛載到輸出儲存桶的磁碟機負責這部分。NetDrive 的背景上傳模式會先把完成的影格寫入本機快取,再非同步上傳到 Google Cloud Storage,這樣算圖流程就能接著處理下一影格,而不必在每次寫入時都因網路 I/O 而停滯。

NetDrive 背景上傳佇列顯示正在非同步寫入雲端儲存的資料

這種分離——共用素材庫採唯讀,輸出採搭配背景上傳的讀寫——讓兩條資料路徑互不干擾。讀取 4K 貼圖的算圖節點,不會與自身的影格輸出佇列爭搶同一套連線語意。

跨多個節點擴充

由於每個節點都各自獨立掛載同一個儲存桶,替農場增加運算量只需用相同的 NetDrive 磁碟機設定再部署一台機器,而不必協調共用儲存的爭用問題。工作進行到一半時離線的節點,也不會讓共用檔案系統陷入不一致狀態,因為每個節點只保有自己的本機快取——儲存桶本身始終是唯一可信的來源。

對於運行混合環境的工作室而言,同一個儲存桶在 Windows 算圖節點與 macOS 美術工作站上以完全相同的方式掛載,因此負責檢視鏡頭的美術師所使用的路徑結構,與農場算圖時所用的完全一致。

小結

把雲端儲存掛載為磁碟機,能讓算圖農場把 Google Cloud Storage 儲存桶當成普通的本機路徑來處理:唯讀掛載保護來源素材,背景上傳則確保影格輸出不會阻塞下一次算圖。關於底層設定,請參閱在 Windows 上以 NetDrive 掛載 Google Cloud Storage或在 macOS 上以 NetDrive 掛載 Google Cloud Storage。對於運行 CI 風格自動化算圖流水線的工作室,為 CI 團隊準備的 S3 測試固件一文所介紹的開機掛載模式,對無人值守節點同樣有用。

— Morgan, NetDrive