该存储库是简单美元项目的集合。每个项目都会展示一个功能或一组美元功能。
该存储库分为六类
功能突出显示用于美元工作的单个类或一组函数。
概念采用特征中解释的特征并将其扩展到现实世界的示例。
技巧是使用美元特征的简单、孤立的想法。
插件展示了如何自定义 USD 以适合您的管道。
工具是为使用美元执行特定任务而构建的各种脚本。
参考资料是有用的页面,可用于查找有关 USD 的更多信息以及如何在项目中与其交互。
此存储库中的每个项目都将尽可能展示如何在 Python、C++ 和 USDA 中工作。
如果一个概念文件夹试图展示 USD 功能,但需要大量代码,那么顶层 README.md 文件可以总结重要的部分。它还可以参考其他资源以了解更多内容。
最后,源代码文件可能包含对所显示内容的解释。每行都标有XXX
。
除非 C++ 项目有特定指令,否则每个项目都使用以下命令编译和执行:
cd {some_concept_cpp_folder}/build
USD_INSTALL_ROOT=/wherever/you/installed/USD/to cmake ..
make
./run_it
USD_INSTALL_ROOT
在 Linux 上通常默认为/usr/local/USD
,但您的位置可能会有所不同。有关详细信息,请参阅 USD 的构建文档。
Python 模块始终可以使用python name_of_module.py
运行
以下是此存储库中每个项目的建议查看顺序的链接。
向 USD 文件添加注释
SetKind 到 UsdPrim
专业构图弧
使用 Prim AssetInfo
定义可定制的用户属性
编辑目标
值解析缓存
使用 UsdGeomImageable 和 UsdGeomBBoxCache 计算边界框
皮克斯的专门例子
在 UsdPrim 对象上使用“目的”
UsdResolveInfo - 查找意见的来源
启用调试消息并编写您自己的
分析美元阶段
如何使用超值剪辑
使用 Sdf 设置时变属性
SdfChangeBlock - 高效的美元创作
SdfBatchNamespaceEdit 和 SdfNamespaceEdit - 高效的 USD 创作
UsdStageCache - 缓存美元阶段
TfNotice - 当阶段更改时使用回调运行函数
TfNotice - 发送您自己的自定义回调
有效的模型层次结构
了解变体集
覆盖变体集
如何唯一化实例化的 UsdPrim
USD关系转发
在生产场景中使用 VariantSet
“专业化”组合弧的实际例子
“专门化”组合弧作为后备机制
引用当前SdfLayer中的Prim
如何找到“孤儿”轮班
带有材质的网格
资产组合弧 - 子层、引用和有效负载如何协同工作
使用 C++ STL 打印和修改 prims
带 boost 的自定义遍历
遍历实例化原语
变体自动选择 - 使用 VariantSet 修改其他 VariantSet
将 VariantSet 中的意见复制到另一个 Prim
查找属性的来源
查找 Prim 的绑定材料(包括集合 API)
2 次导出 - 导出美元阶段速度加快 100 倍
压平 USD 层堆栈
使用较弱的层来修改较强的层
多有效负载 - 是的,您可以拥有多个有效负载
通过 VariantSet 获取 Prims
usdview_auto_reloader - 自动更新 usdview 中的图层
usdview_root_loader - 递归加载/卸载 Prim 有效负载
usdview_ Purpose_swap - 使用单个按钮在代理和渲染目的之间进行更改
usdview_copy_camera - 在 usdview 中创建一个 prim 来表示当前视图
VariantSet 后备选择
VariantSet 选择导出策略
添加自定义元数据
自定义美元架构
自定义 ArResolver 插件
usd_searcher - 用于搜索美元文件的命令行工具
从头开始导出 UsdSkel
范围提示和边界框
将 Python 文档链接到 USD 的文档
了解usdview
美元支持的插件母版表
哪里可以找到更多资源
该存储库还有 Anki 甲板,您可以点击此处下载
请参阅此 wiki 页面以获取将来将添加的计划主题列表。
该存储库是一个持续的 WIP。如果您希望看到有关内容的内容,请将其作为问题提出,以便我/其他人可以拿起它并进行处理。另外,如果您有什么想要贡献的内容,请创建 PR。欢迎投稿!
但请注意:该存储库实际上可能并未显示以美元进行操作的最佳方式。这只是(我的)个人发现的集合。此外,随着皮克斯推出新的美元版本和学习资源,这些信息可能会过时。与您在此处看到的任何内容相比,始终更喜欢主要指南和文档。
测试用: