這些範例演示了編寫 OpenUSD 轉換器的一些關鍵概念。這些範例使用 OpenUSD 和 OpenUSD Exchange SDK(文件、github)來示範如何編寫一致且正確的 USD:
Asset Validator
createStage
createCameras
createLights
createMaterials
createMesh
createReferences
createSkeleton
createTransforms
setDisplayNames
該專案需要“make”和“g++”。
打開終端機。
若要取得“make”,請輸入sudo apt install make
(Ubuntu/Debian) 或yum install make
(CentOS/RHEL)。
對於“g++”,輸入sudo apt install g++
(Ubuntu/Debian),或yum install gcc-c++
(CentOS/RHEL)。
使用提供的建置腳本下載所有其他依賴項(例如 USD)、建立 Makefile 並編譯程式碼。
./repo.sh 構建
使用run.sh
腳本(例如./run.sh createStage
)在預先設定的環境中執行每個程式。
提示:如果您希望自己管理環境,請將
<samplesRoot>/_build/linux64-x86_64/release
新增至您的LD_LIBRARY_PATH
。
對於命令列參數幫助,請使用--help
./run.sh createStage --help
使用python.sh
腳本(例如./python.sh source/createStage/createStage.py
)在預先設定的環境中執行每個程式。
對於命令列參數幫助,請使用--help
./python.sh 來源/createStage/createStage.py --help
此專案需要 Microsoft Visual Studio 2019 或更高版本。下載並安裝有 C++ 的 Visual Studio。
使用提供的建置腳本下載所有依賴項(例如 USD)、建立專案並編譯程式碼。
.repo.bat 構建
使用run.bat
腳本(例如.run.bat createStage
)在預先設定的環境中執行每個程式。
對於命令列參數幫助,請使用--help
.run.bat createStage --help
使用python.bat
腳本(例如.python.bat sourcecreateStagecreateStage.py
)在預先設定的環境中執行每個程式。
對於命令列參數幫助,請使用--help
.python.bat 來源createStagecreateStage.py --help
要在 VS IDE 中構建,請開啟 Visual Studio 中_compiler
資料夾中找到的解決方案。 然後可以從那裡調整、調試、重建範例 C++ 程式碼等。
注意:如果使用者將 OpenUSD Exchange 範例安裝到
%LOCALAPPDATA%
資料夾中,則在進行變更時 Visual Studio 將無法正確“產生”,因為取得來源變更時會發生問題。 執行以下操作之一來解決該問題:
每次原始程式碼更改時
Rebuild
項目而不是Build
將 OpenUSD Exchange Samples 資料夾複製到
%LOCALAPPDATA%
以外的另一個資料夾中與 %LOCALAPPDATA% 外部的資料夾建立連接並從那裡開啟解決方案:
mklink /JC:usd-exchange-samples %LOCALAPPDATA%cloned-reposusd-exchange-samples
範例儲存庫使用 Repo 工具框架 ( repo_man
) 來配置 premake、packman、建置和執行時期相依性、測試、格式化和其他工具。 Packman 用作 OpenUSD、Omniverse 資產驗證器、OpenUSD Exchange SDK 和其他專案等軟體套件的依賴項管理器。範例使用 OpenUSD Exchange SDK 的 repo_man、premake 和 packman 工具作為模板,用於包含和連結 OpenUSD、OpenUSD Exchange SDK 和其他相依性。 這些可以作為客戶應用程式可能需要的建置和運行時配置的範例。 以下是有趣的文件列表:
premake5.lua - 範例的建置設定檔
prebuild.toml - 由儲存庫建置工具使用,以指定應複製執行時間依賴項的位置(超出repo install_usdex
已安裝的內容)
_build/target-deps/usd-exchange/release/dev/tools/premake/usdex_build.lua
- OpenUSD Exchange SDK 的預先建置設定範本文件,用於包含 USD、OpenUSD Exchange SDK 本身和其他程式庫。
在獲取依賴項之前此文件不可用
有關選擇和安裝 OpenUSD Exchange SDK 建置風格、功能或版本的詳細信息,請參閱 install_usdex 工具文件。
請參閱 OpenUSD Exchange SDK 入門文檔,以了解如何在應用程式中使用 OpenUSD Exchange SDK 和 OpenUSD 的演練。
列出的範例著重於以下關鍵概念:
開放美元
美元相機
美元顯示名稱
美元燈
美元材料
美元網格
美元 Prim 名稱
美元 Primvars
美元階段
美元Xforms
這些範例旨在按順序運行,並將建置最初在createStage
範例中建立的 USD 階段。 它們也可以獨立運行,並且根據階段是否存在來開啟或建立階段。 若要使用一個命令按順序運行所有範例,請在建置後在命令列中鍵入:
Linux: ./repo.sh test -f testRunAll -e keep Windows: .repo.bat test -f testRunAll -e keep
這將在所有範例按順序運行後輸出 C++ 和 Python 生成階段的位置。
如果範例中的腳本由於自簽名憑證問題而失敗,可能的解決方法是執行以下操作:
安裝 python-certifi-win32 ,它允許 Windows 憑證儲存用於 TLS/SSL 請求:
工具packmanpython.bat -m pip install python-certifi-win32 --trusted-host pypi.org --trusted-host files.pythonhosted.org
首先搜尋現有的 GitHub 問題和 OpenUSD Exchange SDK 討論,看看是否有人報告了類似的情況。
如果沒有,請建立一個新的 GitHub 問題或論壇主題來解釋您的錯誤或功能請求。
對於錯誤,請提供重現問題的明確步驟,包括所需的範例故障資料。
對於功能,請提供使用者故事和角色詳細資訊(即此功能對誰有幫助以及如何幫助他們)。
無論是為現有問題添加詳細資訊還是建立新問題,請讓我們知道哪些公司受到影響。
範例的許可證位於 LICENSE.md 中。
範例所使用的依賴項的第三方許可證聲明位於 OpenUSD Exchange SDK 許可證聲明中。
OpenUSD 文件 - 建立您的第一個美元階段
OpenUSD API 文件
OpenUSD 使用者文檔
NVIDIA OpenUSD 資源與學習
OpenUSD 程式碼範例
NVIDIA OpenUSD 文檔
NVIDIA OpenUSD Exchange SDK 文檔