USD Viewer 开源项目教程
1. 项目介绍
USD Viewer 是一个基于网页的 USD 文件查看器。它使用了 Autodesk 的 WASM USD 绑定和一个由 hybridherbst 改进的 Three.js Hydra 渲染代理。USD Viewer 允许用户在网页上加载和查看 USDZ 文件,是一种交互式查看 USD 场景的工具。
2. 项目快速启动
环境搭建
-
安装 Emscripten 工具链。
- 对于 MacOS,下载并安装最新的 SDK 工具。运行以下命令:
./emsdk install 3.1.55 ./emsdk activate 3.1.55 source ./emsdk_env.sh
- 对于 Windows,执行类似的安装和激活步骤。
- 对于 MacOS,下载并安装最新的 SDK 工具。运行以下命令:
-
设置 CMake。按照 CMake 的命令行使用说明进行安装。
克隆与构建
-
克隆 USD Viewer 项目仓库:
git clone --recursive https://github.com/needle-tools/usd-viewer.git
-
进入 USD Viewer 目录,运行以下命令安装依赖:
npm install
-
构建 USD。首先进入 USD 源代码仓库目录,然后使用以下命令构建:
python3 ./build_scripts/build_usd.py --build-target wasm ../build_dir
构建完成后,会在
../build_dir/bin
目录生成相关文件。 -
运行 USD Viewer:
npm run start
在浏览器中打开
http://localhost:<port>
(注意:0.0.0.0 不会工作,因为它没有 SharedArrayBuffer 权限)。
3. 应用案例和最佳实践
加载 USDZ 文件
USD Viewer 支持加载 USDZ 文件、文件夹和多个文件。可以通过以下方式加载:
- 直接拖拽 USDZ 文件到网页上。
- 使用项目提供的 Kitchen Set 示例或 Asset Explorer 资源。
注意事项
- USD Viewer 会尝试自动识别根文件,但这个机制并不完美。
- 只有根文件支持 Up 轴。
- 变体可以加载,但不能切换。
4. 典型生态项目
USD Viewer 是 USD (Universal Scene Description) 生态系统中的一个项目。以下是一些相关的生态项目:
- Autodesk USD:USD 的官方实现,用于场景描述和资产管理。
- USD for Web:Autodesk 提供的 USD Web 演示。
- Needle USD-Viewer:本项目,基于 Autodesk 的 USD Web 实现。
通过这些项目,开发者和艺术家可以在网页上查看和交互 USD 内容,为 USD 生态系统的推广和应用提供了更多可能性。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考