通用場景描述(Universal Scene Description) 是開放、可擴展的框架和生態系統,具有用于在 3D 虛擬世界中合成、編輯、查詢、渲染、協作和仿真的 API。
本文介紹了如何使用現有資產和工具立即開始使用 OpenUSD,以及可以采取哪些步驟以迭代方式提升 USD 工作流程的水平。
要以交互方式全面介紹 OpenUSD 的基本概念、詞匯和最佳實踐,請探索 NVIDIA Deep Learning Institute 提供的 免費 Learn OpenUSD 學習路徑 。
數據交換?
OpenUSD 不會取代您現有的工具或數據格式。顧名思義,Universal Scene Description 提供了一種常用方法來表示網格和 PBR 材質等許多 3D 概念的數據。它不斷發展,以支持其他概念,例如 physics 和 B-reps。

要開始將 OpenUSD 與您的現有素材結合使用,請使用導出工具或轉換器將您的內容導入 USD。這一方法可確保快速有效地集成到新的 USD 工作流程中。通過這種方式使用 USD,您可以開始增強不同生產階段的協作、性能和互操作性。
有關入門指南的更多信息,請參閱 支持 USD 交換的應用程序和工具列表 。
當您擴展 USD 工作流并希望將 OpenUSD 與專有數據結合使用時,您可能需要開發自己的數據交換解決方案。
數據交換流程管理從一種數據格式到另一種數據格式的內容提取、轉換和提取。有幾種主要類型的數據交換解決方案用于將現有內容集成到 USD 工作流中:
- 導入和導出工具:這些工具可在數字內容創建 (DCC) 應用中找到,使您能夠直接向 USD 導入和導出 3D 素材。Rhino 和 Blender 等熱門軟件有助于導入 3D 素材,而 Houdini 等應用則將 3D 素材作為原生 USD 文件打開。這使得您可以在現有工具中輕松使用 USD。
- 轉換器: 這些是獨立的程序或腳本,旨在將不同格式的 3D 文件轉換為 USD 格式或從 USD 格式轉換為 3D 文件。它們為批量處理和自動化提供了靈活性,可確保您的資產可以輕松轉換,而無需人工干預。
- USD 文件格式插件 :通過這種類型的 USD 插件,您可以保留原始源格式的數據,同時在打開舞臺時動態讀取數據并將其轉換為 USD。這意味著,您可以使用原生格式處理資產,同時仍能從 USD 的強大功能中受益,同時保持數據完整性和工作流程效率。
概念數據映射以及提取、轉換、加載(ETL)是開發數據交換解決方案的關鍵流程,有助于確保無縫傳輸和集成 3D 資產和數據。
概念數據映射涉及定義一個系統或格式的數據與另一個系統或格式中的數據對應的方式 。在使用不同的 DCC 應用或文件類型時,這一點尤為重要,因為每個應用或文件類型都可能有自己獨特的數據結構和表示形式。
ETL 是一個更全面的過程,用于將數據從一個系統遷移到另一個系統并進行集成。它由以下主要步驟組成:
- 提取: 從源系統或文件格式中提取數據。數據可以是 3D 模型、紋理、動畫或任何其他相關內容。
- 轉換 :轉換提取的數據以滿足目標運行時需求。這可能包括轉換單位、重新格式化數據結構,或過濾掉無關緊要或私有數據。
- 加載: 將轉換后的數據加載到目標運行時。 這有時稱為 ingestion ,可確保數據可隨時用于基于 USD 的工作流和應用。
概念數據映射和 ETL 流程對于確保內容可以有效準確地傳輸到 USD 生態系統,并在整個交換過程中保持其質量和功能至關重要。 OpenUSD Exchange SDK 有助于加速數據交換解決方案的開發,并有助于創作高質量的 OpenUSD 數據。
在將數據導入 OpenUSD 后,下一步是了解如何聚合和構建數據,以更大限度地提高效率。
了解如何通過免費的 Learn OpenUSD 自定進度課程 開發數據交換工作流 。
資產結構原則和內容聚合
結構良好的資產可實現有效的內容聚合和資產可重用性,這正是 OpenUSD 真正擅長的地方。在復雜的項目中,正確的素材結構和內容聚合是高效組織和合并 3D 素材和場景的關鍵方法。
開發素材結構需要將 3D 內容分解為更小、可管理的組件,以便于引用和重復使用。這樣,您就可以創建一個層次化且井然有序的結構,簡化資產的管理和維護。這種方法允許您在需要時僅加載必要的組件,從而提高可復用性和性能。
借助精心設計的資產結構,您可以增強協作,因為不同的工作流可以在不同的層中獨立創作數據,然后將數據組合成單個資產。這種非破壞性編輯方法可確保一個團隊所做的更改不會覆蓋另一個團隊的工作。
構建完較小的組件后,請使用內容聚合功能將其合并為一個連貫一致的場景。合成操作符 (例如 references 和 payloads) 支持此過程。

這些技術有助于使 OpenUSD 成為管理大型 3D 項目的強大工具,促進高效協作、資產重復使用和工作流效率,使其成為任何現代 3D 生產工作流不可或缺的一部分。
通過免費的 Learn OpenUSD 自定進度課程,學習 資產結構化原則和內容聚合 。
合成操作符?
合成操作符是 OpenUSD 的基礎運算符,可將場景描述的較小單元組合成較大的單元。這可在 OpenUSD 工作流中實現穩健的資產結構和內容聚合。
此功能是 OpenUSD 的超能力之一,使其有別于其他 3D 數據格式和框架。

合成操作符是以非破壞性方式組合 USD 數據單位的必要工具。OpenUSD 中提供的合成操作符包括子層、引用、有效載荷、變體集、繼承、專門化以及最近添加的重新定位。
從以下合成操作符開始,了解如何在自己的工作流程中利用它們:
- 子層 :支持多個協作者或進程在給定的 USD 環境中運行。子層中創作的數據以“include”方式添加到 USD 上下文中。
- 引用:最適合內容聚合,可用于將一個 USD 上下文移植到另一個 USD 上下文的層次結構中。通過引用資產,您可以為每個組件維護單一的事實來源,從而確保一致性并減少冗余。這在重復使用相同資產的大型項目中特別有用。
- 變體集 :用于存儲組件的多個變體,在不復制數據的情況下增強適應性。此功能使您能夠在單個高效結構中創建素材的不同版本,例如不同的材質或配置。用例包括指定模型的不同紋理、材質或配置,例如描述具有不同涂料顏色或不同輪緣風格的汽車。

學習和實施合成操作符將為您的 USD 工作流提供即時價值。然而,由于其廣泛的靈活性和多樣化的應用,掌握可能需要數年時間。為了有效使用 OpenUSD,我們強烈建議您投入大量時間進行實驗,并深入了解合成弧類型。
通過免費的 Learn OpenUSD 自定進度培訓,學習 創建 composition arcs 。
開始使用?
OpenUSD 為高效的 3D 資產管理和內容聚合提供了一整套功能,使其成為大型項目不可或缺的框架。通過掌握數據交換、資產結構化和合成操作符,您可以顯著改善 3D 工作流中的協作、性能和可復用性。
通過學習 Learn OpenUSD 學習路徑上的課程,在基礎知識的基礎上進行構建。
開始在 Omniverse Kit SDK 上使用 OpenUSD 進行開發,并使用生成式 AI 模型通過 USD NIM 微服務 進行 OpenUSD 開發。
有關 OpenUSD 的更多資源,請訪問 Alliance for OpenUSD ( AOUSD ) 論壇 并訪問 AOUSD 網站。
?