06.10.2026

OpenUSD 如何成為數位內容的共通語言

AgarudaYC Wu

用「蓋房子」理解 3D 世界的開放標準


開場:BMW 沒蓋過、卻已運轉多年的工廠

2025 年,BMW 在匈牙利開出一座全新電動車廠。在水泥還沒灌、鋼骨還沒立之前,這座工廠的每一條產線、每一台機械手臂、每一條物流路徑,已經在虛擬世界裡模擬運轉了好幾年。建築師、機電工程師、機器人工程師——分散全球幾十個時區——同時在「同一座虛擬工廠」裡修改、驗證,沒人需要 email 確認最新版圖紙是哪一份。

讓所有人能「同時改同一座工廠卻不互相覆蓋」的關鍵技術,叫做 OpenUSD

這份入門解釋:OpenUSD 是什麼、怎麼運作、為什麼從 Pixar 動畫片場跑到了 BMW 工廠、Lowe's 零售店、Apple Vision Pro,以及它跟你的下一個產品決策有什麼關係。


TL;DR

OpenUSD(Universal Scene Description) 是開源的 3D 場景描述標準,讓 Maya、Blender、Revit、CATIA、Unreal Engine、Nvidia Omniverse、Apple Vision Pro 等各種工具能讀同一份 3D 資料,多人同時非破壞性地疊加修改。業界稱它「3D 的 HTML」。

你是誰為什麼這篇值得讀
PM/產品跨工具整合的痛點,OpenUSD 是現成的標準解
業務/BD客戶問「能不能跟 Omniverse / Vision Pro 對接?」答案就是 USD
設計師Layer 與 Variant 讓你少接一半「請複製一版改成紅色」的工單
工程師Schema、Composition、Hydra 三層架構值得當資料模型參考

重要里程碑

年份事件
1994Pixar 第一代動畫系統 Marionette(玩具總動員)
2012內部正式推出 USD
2016開源
2023.08Pixar、Adobe、Apple、Autodesk、NVIDIA 共同成立 AOUSD
2025.12AOUSD 發布 Core Specification 1.0(會員擴張到 50+ 家)
指南三部曲導覽圖:橫向時間軸標示三個站點——房屋比喻、標準與案例、實務決策,讀者由左至右依序閱讀。

Part 1:用「蓋房子」理解 OpenUSD

1.1 痛點:四份圖紙怎麼疊?

四張半透明藍圖圖層(A 屋主筆記、B 室內陳設、C 水電配線、D 建築結構)由上而下疊加,合成下方的場景 Stage,示意 OpenUSD 圖層合成概念。

裝潢一間新家:建築師畫結構圖、水電工程師畫配線圖、室內設計師畫裝潢提案、你自己列改造希望單。四份圖紙獨立,但最後得合成出一個結果——你住進去的家。

問題在於:改一張會不會影響別人?不同工具怎麼合?同物件多方案怎麼處理?場景太大開不動怎麼辦?

3D 場景遇到的協作痛點跟裝潢一棟房子一模一樣,只是規模更大——一座 BMW 工廠的數位孿生有幾十萬個元件、幾百個工程師。OpenUSD 就是這套協作機制:定義圖紙怎麼寫、怎麼疊、衝突怎麼決勝負、單一物件怎麼從外部資產庫拉進來、同物件多版本怎麼切換。

上方四份圖紙(Layers) 疊加合成下方完整的家(Stage)。Layer A 是最上層、強度最大;Layer D 是最底層。

直覺:你的修改不會破壞建築師的原始檔;建築師更新時你也即時看到。多人在不同 Layer 上工作互不干擾——這就是「非破壞性協作」。

1.2 OpenUSD 概念全景對照表

OpenUSD 名詞蓋房子情境一句話解釋
Stage完工後你走進去的家所有圖層合成後的最終結果
Layer一份圖紙一個 USD 檔,可疊加可覆寫
Prim家裡的一個物件(沙發、燈、牆)場景中的單位節點
Property物件的規格欄位Attribute(值)+ Relationship(指向)
Path物件的「家庭住址」/家/客廳/沙發
Reference從 IKEA 型錄調家具進來引用外部資產,不複製檔案
Payload「要看才載入」的隔間跟 Reference 一樣,但延遲載入
Variant Set同沙發的「皮革/布面」可切換同物件多版本共存
Specifier實有/修改單/設計規範def / over / class
Composition把所有圖紙疊成「最終的家」多 Layer 組裝成 Stage 的過程
Hydra把圖紙渲染成實景照片場景與渲染器解耦

1.3 五個必懂概念

① Layer + Composition:圖紙怎麼疊

每份圖紙就是一個 USD 檔(Layer),裡面畫了一些物件(Prim)。多份圖紙從上往下疊,由 USD 引擎合成為你看到的最終場景(Stage)。

三層概念套疊長這樣——每個 Layer 是一份檔案,檔案裡面裝著各自的 Prim,所有 Layer 合成出最終 Stage:

三個並排的 USD 檔案卡片(changes、interior、architecture)各含兩個 Prim,以虛線箭頭合成出含六個 Prim 的最終 Stage 場景示意圖。

一句話Layer = 檔案、Prim = 檔案裡的物件、Stage = 所有 Layer 合成後你看到的成品。

關鍵特徵:上層蓋過下層,但下層原始資料保留。把上層拿掉,下層原本寫入的 opinion(屬性值)會自動浮現——像是一疊透明投影片,可以隨時抽掉任何一張。

舉個具體情境:客廳沙發的顏色被兩層各自設定了不同值——

沙發顏色屬性的圖層覆蓋示意圖:Layer A 設定 sofa.color 為深棕並勝出,Layer B 的灰色值仍被保留,移除 A 即恢復灰色。

抽掉 Layer A 會發生什麼? 沙發自動變回灰色——Layer B 的值從來沒被刪除,只是被覆蓋了。這就是「透明投影片」比喻的真實意義:撤除任何一張,下面的圖案立刻顯現。傳統「直接覆寫檔案」做不到這件事。

⚠️ 套疊的「靜默地雷」:座標不一致

Layer 各自獨立的代價:當建築師用公尺、室內設計師用公分、機電師傅用英吋——USD 不會自動換算,它只忠實疊加數字。結果可能是沙發縮成米粒大、家具躺在牆上(單位錯與 Y/Z 軸誤判)、或場景遠端零件抖動(float 精度漂移)。這類錯誤的可怕之處是多半不會報錯,靜悄悄等到合成出來的 Stage 才暴露。

預防方式:在管線入口統一鎖定 metersPerUnitupAxis,並在存檔時或開發階段的 CI 流程中執行 usdchecker --strict,防止任何 Layer 偷改基礎元資料,也便於追蹤變更。

② Reference vs Payload:IKEA 訂貨 vs Netflix 串流

兩種引用外部資產的方式,差別在「何時載入」:

圖解 Reference 與 Payload 的差異:左側以 IKEA 配送比喻 Reference 立即載入整箱送達,右側以 Netflix 串流比喻 Payload 按需載入、需要時才申請場景資源。

粗實線箭頭=立即載入(Reference);細虛線箭頭=延遲載入(Payload)。

情境用 Reference用 Payload
主角 / 必看物件
巨大場景的某些區段
整棟工廠、整座城市

業務價值:IKEA 改了沙發設計(更新型錄檔),所有引用它的場景自動更新——不用通知任何人。同一張沙發出現在 100 個專案裡,硬碟只存一份。

③ Variant Set:同物件多版本共存

裝潢時最常見的對話:「這沙發我們做兩個方案,皮革跟布面,給客戶選。」

傳統做法是複製檔案改名。USD 的解法是 Variant Set:一個檔案,多個版本內建,可即時切換。

沙發材質 Variant Set 示意圖:同一個 Prim 路徑的沙發,可在深色皮革、米色布料、酒紅絲絨三種變體間即時切換,目前啟用米色布料。

工業上 BMW 用變體切換同一機械手臂的不同型號;零售上 Lowe's 用變體做同一張椅子的不同色系展示。客戶會議當場「換成布面看看」,即時切換,不再需要回去複製檔案。

④ def / over / class:實有、修改單、設計規範

裝潢設計流程的三種圖紙意圖:

三張卡片比喻 USD 三種設計意圖:def 如收據代表實際建立物件、over 如修改單覆寫既有屬性、class 如規格書供繼承重用。
圖紙意圖蓋房子情境行為
def「這張沙發我實際買了真正建立物件
over「修改單:顏色改深一點不建立新物件,只覆寫部分屬性
class「日式風格設計規範抽象範本;本身不會出現在畫面,專供繼承

為什麼要分? 設計師畫的是示意圖(class、def)、業主提的是修改(over)。USD 用 over 確保:業主提出修改時,不會覆蓋設計師的原始檔——這就是「非破壞性編輯」。

⑤ TimeCode:屬性可隨時間變化

早上的客廳跟晚上的客廳不一樣——陽光角度、燈光、氣溫都會變。USD 所有屬性都能「在不同時間點擁有不同的值」,這稱為 TimeSamples

範例:一天裡的太陽光強度

折線圖展示 USD TimeSamples 機制:在 00:00 至 21:00 五個關鍵時間點定義太陽光強度取樣值,橘色曲線顯示 USD 自動內插出中間所有值。

重點:你只定義 5 個關鍵時間點(TimeSamples),USD 會自動在點與點之間內插(interpolate)——所以從凌晨黑暗到正午烈日的整段平滑變化就有了,不需要你定義每一秒。

任何屬性都能這樣動畫化:燈光強度、家具位置、機械手臂角度、相機視角。對工業模擬、產品 demo、互動體驗都很關鍵——BMW 的工廠模擬就是用這個機制讓機械手臂跑出真實動作軌跡。

1.4 為什麼這套設計值得學

把以上五個概念合起來,OpenUSD 解決了大規模 3D 協作的五個問題:

  1. 多人不衝突 —Layer 疊加,互不破壞
  2. 資產真重用 —Reference 讓 IKEA 沙發只做一次
  3. 方案易切換 —Variant Set 讓客戶當場比較
  4. 大場景能開 —Payload 延遲載入
  5. 跨工具互通 —Schema 是公開規格,Maya 寫的 Blender 讀得懂

Part 2:標準與案例

2.1 OpenUSD 與 AOUSD:30 年演進到國際標準

OpenUSD 是 Pixar 內部 30 年動畫管線演進的結晶,2016 年開源。2023 年五大廠商共同成立 AOUSD,把它推向 ISO 國際標準。

時間軸圖表呈現 OpenUSD 從 1994 年 Pixar 內部 Marionette、2016 年開源到 2025 年 Core Spec 1.0 國際標準的三階段三十年演進歷程。

配色敘事:紫色由淺到深 = 時序由舊到新。淺紫(1994-2008)是 Pixar 內部時期,中紫(2012-2016)是整合與開源,深紫(2023-2025)是國際標準時期。

AOUSD 創始會員(2023.08):Pixar、Adobe、Apple、Autodesk、NVIDIA。

2025.12 重大里程碑:發布 OpenUSD Core Specification 1.0,會員擴張到 50+ 家,新增 Intel、Microsoft、Sony、Lowe's、Coca-Cola、Trimble、Hexagon 等跨產業企業。

AOUSD 聯盟生態示意圖:中央深紫色圓形標示 AOUSD 與 50+ 成員,上排連線 Pixar、Adobe、Apple、Autodesk、NVIDIA 五家創始成員,下排連線影視動畫、汽車、建築營建、零售、科技平台等採用產業。

上排為創始 5 家(深紫框),下排為主要採用產業(淺紫框)。

三種主要副檔名

副檔名性質何時用
.usda純文字開發、Diff、版本控制
.usdc二進位交付、大場景(快 10-100 倍)
.usdzZIP 封裝消費端 AR/VR(iOS、Vision Pro 原生)

2.2 LIVERPS:誰的意見會勝出?

當不同 Layer 對同一個屬性寫了不同值,USD 用 LIVERPS 順序決定誰勝出。順序就是強度,左邊最強:

LIVERPS 七字母合成優先順序圖,從最強到最弱依序為 Local、Inherits、Variants、rELocates、References、Payloads、Specializes,並附衝突示例說明本機修改勝過外部參照。
縮寫全名一句話用途
LLocal(含 sublayers)你正在編輯的圖紙
IInherits階層式繼承
VVariants同 Prim 多種狀態切換
ErElocates非破壞性地重新命名路徑
RReferences引用外部資產
PPayloads引用但延遲載入
SSpecializes階層式特化

衝突解決範例:你的修改單寫沙發是「深棕色」(Local),IKEA 型錄裡寫「灰色」(Reference)。Local 強過 Reference,所以最終看到的是深棕色——但 IKEA 的灰色並沒有被刪除。把你的修改單拿掉,灰色自動回來。這就是「非破壞性」的精髓。

2.3 Hydra:渲染抽象層

裝潢做完平面圖後,要渲染成 3D 透視圖給客戶看。但每家渲染服務都有自己的引擎、自己的設定。

Hydra 在中間插一層抽象,把場景描述(USD)跟特定渲染器解耦。從 N × M 個整合工作量,變成 N + M:

USD Stage 經由 Hydra 轉譯層分送至 HdStorm、Arnold、RenderMan 與第三方渲染器的架構圖,整合工作量從 N×M 降為 N+M。

對 PM/業務的意義:選渲染器不再被 DCC 工具綁死。同一份工廠數位孿生,可以餵給不同渲染引擎做不同用途——即時導覽、宣傳影片、AR 疊加——不需要重做場景。

2.4 三個產業案例

🚗 BMW Virtual Factory

BMW 在 NVIDIA Omniverse + OpenUSD 上自建 FactoryExplorer,覆蓋全球 30 多家工廠。

已驗證成果資料
涵蓋工廠數30+ 全球生產基地
規劃成本下降預估最多 30%
新廠規劃時間從 24 個月 → 12 個月
已掃描室內空間700+ 萬平方公尺
Factory Viewer 使用者15,000 名員工

OpenUSD 把建築(Revit)、裝置(CAD)、物流、車輛、人員模擬整合到單一 USD 場景,多人能同時用 sublayer 疊加修改。傳統 PLM 系統做不到。

🛒 Lowe's Store Digital Twin

美國家居零售商 Lowe's(2,000+ 家門市,AOUSD 成員)用 OpenUSD 整合 AutoCAD、Revit、SketchUp、Maya 與即時感測資料,建立可在 Magic Leap 2 AR 頭戴裝置使用的店面數位孿生。

店員實際使用情境

  • AR Reset:戴上頭戴裝置,數位孿生疊在實體貨架上,比對「應該的樣子 vs 現況」
  • AR X-Ray Vision:對高處貨架透視,不用爬梯子就能看上方有什麼
  • Planogram 測試:要換 SKU 位置時,先在數位孿生跑模擬,預測銷售影響

🥽 Apple Vision Pro / iOS(消費端 AR)

Apple 是 AOUSD 創始成員,選擇 USDZ 作為其 AR/空間計算平台的原生格式。

家具電商情境:客戶在 iPhone 點選網頁上的椅子 → 跳出 AR Quick Look → 對著客廳投影出實際大小的 3D 椅子 → 戴上 Vision Pro 看同一網頁,椅子直接在眼前空間中浮現。整個體驗不需要下載 App——USDZ 直接嵌進 HTML,就像今天的圖片或影片標籤。


Part 3:實務決策

3.1 三大格式怎麼選?

格式強項何時用
USD / USDZ大型場景、跨工具協作、變體工業數位孿生、影視製作、Apple AR
FBX(Autodesk)動畫、完整骨架匯入遊戲引擎、角色動畫
glTF / GLB(Khronos)檔案小、Web 載入快Web 3D、行動裝置、電商展示
USD/USDZ、FBX、glTF/GLB 格式選擇決策樹,依工業數位孿生、角色動畫、Web 3D 電商、iOS Vision Pro 四種使用情境給出對應建議格式。

並非互斥:成熟的 pipeline 通常是「USD 作為中央儲存格式」,下游再轉成 glTF(Web)、USDZ(Apple)或 FBX(Unity)。USD 是中樞,其餘都是輸出端。


附錄

A. 名詞速查

術語30 字以內白話
OpenUSDPixar 開源、跨工具的 3D 場景描述標準
AOUSD推動 OpenUSD 成為 ISO 國際標準的聯盟
Stage你看到的最終 3D 場景(多 Layer 合成後)
Layer一份 USD 檔,可疊加可覆寫
Prim場景中的一個物件節點
Property物件的屬性(值或關係指向)
Path物件的「家庭住址」字串
Composition把多 Layer 組裝成 Stage 的合成
LIVERPSComposition 強度排序口訣
Reference引用外部資產(即時載入)
Payload引用但延遲載入
Variant Set同物件多版本切換
Specifierdef(實有)/ over(修改單)/ class(規範書)
SchemaPrim 的資料規格
HydraOpenUSD 的渲染抽象層
USDZ打包好的 USD 封裝,iOS/Vision Pro 原生

B. 延伸閱讀

C. 內容來源

本文資料來源(更新至 2026 年 5 月):Pixar OpenUSD 官方文件與 Quickstart Guide、AOUSD 官網與公告、NVIDIA Learn OpenUSD、BMW Group 官方新聞稿、Lowe's 官方新聞稿、Apple Developer 文件、Wikipedia AOUSD 條目。


本文為 OpenUSD 入門,目標是建立共同語言。實務決策(格式選擇、採用評估、企業採用時程)屬進階題,需另行展開。


Related