这些示例演示了编写 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 文档