OpenUSD:高效可扩展的跨应用场景描述与流传输系统

Universal Scene Description

分支4Tags52
文件最后提交记录最后更新时间
8 天前
8 天前
13 天前
13 天前
1 个月前
8 天前
8 天前
6 年前
8 天前
1 个月前
1 个月前
2 个月前
5 年前
9 年前
7 个月前
9 年前
1 个月前
1 年前
1 年前
1 年前
1 个月前

通用场景描述

通用场景描述(USD)是一套高效、可扩展的系统,用于创作、读取和流式传输带时间采样的场景描述,以便在图形应用程序之间进行数据交换。

更多详情,请访问网站 此处

构建状态

状态
dev BuildUSD
release BuildUSD

其他文档

获取帮助

需要帮助理解 USD 中的某些概念?请参阅 USD 帮助指南 或访问我们的 论坛

如果在使用本软件时遇到未记录的问题,请 提交错误报告。 如果需要报告软件的安全问题,请查阅 安全政策

支持的平台

USD 主要在 Linux 平台(CentOS 7)上开发,但也可在 macOS 和 Windows 上进行构建、测试并获得支持。

还可以构建可嵌入 iOS 和 visionOS 应用程序的 USD 库。

此外,USD 可构建为在 WebAssembly 虚拟机中运行,以用于网络或其他运行时环境(如 Node.js)。

有关明确测试过的版本,请参见 VERSIONS.md

依赖项

必需项:

版本信息请参见第三方库和应用程序版本

以下组件需要额外的依赖项。这些组件可在构建时禁用。有关更多详细信息,请参见高级构建配置

图像与 USD 图像

必需项:

可选项:

Python 绑定

必需项:

usdview

必需项:

获取与构建代码

构建 USD 最简单的方法是运行提供的 build_usd.py 脚本。此脚本将下载所需的依赖项,并将它们与 USD 一起构建并安装到指定目录中。

按照以下说明以默认行为运行脚本,这将构建 USD 核心库、图像和 USD 图像组件。如需更多选项和文档,请使用 --help 参数运行脚本。

有关直接运行 cmake 的示例和其他文档,请参见高级构建配置

1. 安装必备组件(所需版本请参见依赖项

  • 必需项:
    • C++ 编译器:
      • gcc
      • Xcode
      • Microsoft Visual Studio
    • CMake
  • 可选项(可通过向 build_usd.py 传递 --no-python 参数来忽略)

2. 下载 USD 源代码

您可以从 GitHub 下载源代码档案,或使用 git 克隆仓库。

> git clone https://github.com/PixarAnimationStudios/OpenUSD
Cloning into 'OpenUSD'...

3. 运行脚本

运行 build_usd.py 脚本以构建并安装 USD。请注意,构建脚本采用源代码外构建的结构设计——将构建产物安装到克隆仓库所在的目录是未经测试的。

Linux:

例如,以下命令将下载、构建并安装 USD 的依赖项,然后将 USD 构建并安装到 /path/to/my_usd_install_dir 目录中。

> python OpenUSD/build_scripts/build_usd.py /path/to/my_usd_install_dir
macOS:

在终端中,运行 xcode-select 以确保已安装命令行开发工具。然后运行脚本。

例如,以下命令将下载、构建并安装 USD 的依赖项,然后将 USD 构建并安装到 /path/to/my_usd_install_dir 中。

> python OpenUSD/build_scripts/build_usd.py /path/to/my_usd_install_dir
iOS 和 visionOS:

在 macOS 系统上构建时,您可以为 iOS 相关平台进行交叉编译。

交叉编译构建仅限于构建可嵌入为目标平台构建的应用程序中的库。嵌入 USD 时,使用单体构建会很有帮助(请参阅 高级构建配置)。

这些构建不支持 Python 绑定或命令行工具。

例如,以下命令将下载、构建并安装 USD 的依赖项,然后为 iOS 构建 USD 并将其安装到 /path/to/my_usd_install_dir

> python OpenUSD/build_scripts/build_usd.py --build-target iOS --build-monolithic /path/to/my_usd_install_dir

或者对于 visionOS:

> python OpenUSD/build_scripts/build_usd.py --build-target visionOS --build-monolithic /path/to/my_usd_install_dir
框架构建(实验性)

针对 Apple 平台的构建可选择使用 --build-apple-framework 标志构建为框架。

注意: 此功能尚处于实验阶段,其功能可能在未来的 OpenUSD 版本中发生变化。

  • 对于 iOS 和 visionOS 构建目标,框架构建默认启用。对于 macOS,可选择启用。
  • 框架构建需要单体构建。
  • 目前不支持构建通用 macOS 框架。请分别生成各架构,然后使用 lipo 将它们合并。

要将框架添加到您的应用程序中,请将 OpenUSD.framework 添加到您的 Xcode 项目。建议将其设置为“嵌入并签名”(Embed and Sign)。

要设置头文件,请配置 Xcode 的 SYSTEM_HEADER_SEARCH_PATHS 以添加头文件路径。例如,如果框架位于项目根目录中,则路径为 $(SRCROOT)/OpenUSD.framework/Headers

OpenUSD 还支持构建包含多个目标的组合 XCFramework。此命令接受一个可选的目标构建列表,若未指定,则会构建所有受支持的平台。

> python OpenUSD/build_scripts/apple_utils.py xcframework /path/to/my_usd_install_dir
Windows:

在 Windows 系统上,可以编译 x64 或 ARM64 版本。 注意:目前不兼容 ARM64EC。 注意 2:由于缺少 PySide,usdview 目前在 ARM64 上不受支持。

启动适用于您 Visual Studio 版本的“x64 Native Tools Command Prompt”(或相应的“ARM64 Native Tools Command Prompt”),并在打开的 shell 中运行脚本。确保使用适当版本的命令提示符(例如,在 x64 上,使用 x64 版本,而非 x86 版本)。

有关更多详细信息,请参见 https://docs.microsoft.com/en-us/cpp/build/how-to-enable-a-64-bit-visual-cpp-toolset-on-the-command-line。

例如,以下命令将下载、构建并安装 USD 的依赖项,然后将 USD 构建并安装到 C:\path\to\my_usd_install_dir

C:\> python OpenUSD\build_scripts\build_usd.py "C:\path\to\my_usd_install_dir"
WebAssembly:

可在 Linux、macOS 或 Windows 系统上使用 Emscripten 编译器工具链生成 WebAssembly (Wasm) 构建。构建前,请按照下载和安装工具链的说明进行操作。

WebAssembly 构建将生成以单体模式构建的静态库。此目标不构建命令行工具。

以下命令将下载依赖项并生成 32 位 Wasm 构建。

> python OpenUSD/build_scripts/build_usd.py --build-target wasm /path/to/my_usd_wasm_build_dir

或者针对 64 位 Wasm 构建:

> python OpenUSD/build_scripts/build_usd.py --build-target wasm64 /path/to/my_usd_wasm64_build_dir

4. 试用

设置脚本运行结束时指定的环境变量,并使用示例资源启动 usdview

> usdview OpenUSD/extras/usd/tutorials/convertingLayerFormats/Sphere.usda

贡献

如果您希望为 USD 贡献力量(我们非常感谢您的帮助!),请参阅文档中的贡献页面以获取更多信息。

项目介绍

通用场景描述【此简介由AI生成】

定制我的领域
2997.46 K1.45 K访问 GitHub