GLB 转 USDZ
将 GLB 转换为可在 iPhone 和 iPad 的 AR Quick Look 中打开的 USDZ。免费,在浏览器中完成,无需 Mac。
将 GLB 文件拖放到这里
GLB 转 USDZ:让模型在 iPhone 上用 AR 查看
iPhone 和 iPad 自带的 AR Quick Look(AR 快速查看)只打开 USDZ 文件。在 Safari、信息、邮件或“文件”App 里点一下 USDZ,模型就会以 AR 形式出现在你面前的桌面上,不需要安装任何 App。网页和 Android 通用的 GLB 在这里打不开。想让 iPhone 用户看到同一个模型,就要把 GLB 转成 USDZ。
很多人以为这一步必须在 Mac 上用 Reality Converter 或 Xcode 完成。这个转换器在浏览器里就能做:拖入 GLB,在预览中检查,下载可以在 Quick Look 中打开的 USDZ。Windows 电脑也可以用,模型不会上传。
哪些内容会转换
glTF 和 USD 都使用基于物理的材质,外观能较好地保留。主要的损失是动画。
- 网格和层级
- 保留。
- PBR 材质
- 转换为 USD 的预览表面材质(UsdPreviewSurface):基础色、金属度、粗糙度、法线、环境光遮蔽、自发光和不透明度,以及对应的纹理贴图。
- 纹理
- 嵌入 USDZ,输出仍是单个文件。纹理会重新编码,超过 2048 像素的会缩小。
- 动画
- 不导出。USDZ 是静态模型,按文件中存储的静止姿态保存,带骨骼的角色通常是 T 姿势。
- glTF 高级材质
- 透射(玻璃)、光泽(sheen)、彩虹色(iridescence)等 glTF 扩展效果在输出中没有对应项,会退回基础材质。
- 压缩过的输入
- Draco 和 Meshopt 压缩的 GLB 可以读取,输出为未压缩的数据。把 KTX2 纹理列为必需扩展的 GLB 无法读取。
GLB 转 USDZ 的步骤
1. 把 .glb 拖到转换器上。带有单独 .bin 和纹理文件的 glTF 也可以,把所有文件一起拖入。
2. 检查预览。这里看到的效果与 Quick Look 中的显示接近。
3. 点击转换,下载 .usdz。两种格式都以 Y 轴向上,模型朝向不变,不需要修正向上轴。
4. 实机测试:用隔空投送或信息把文件发到 iPhone 或 iPad 上,点开即可在 Quick Look 中查看,并可切换到 AR 视图。
把 USDZ 放到网页上
在 iOS 的 Safari 中,带 rel="ar" 的 USDZ 链接会直接进入 AR Quick Look,而不是下载文件。链接内必须包含一张图片,作为点击区域:
<a rel="ar" href="/models/chair.usdz"><img src="/images/chair.jpg" alt="椅子"></a>
如果页面已经用 <model-viewer> 展示 GLB,把转换后的文件填到 ios-src 属性里,iPhone 和 iPad 上的 AR 按钮就会使用它。
服务器需要以 MIME 类型 model/vnd.usdz+zip 返回文件。有些服务器不认识 .usdz 扩展名,会当作普通下载发送,Quick Look 就打不开。另外,rel="ar" 是 Safari 的功能,在微信等 App 的内置浏览器里可能无法直接进入 AR,遇到这种情况请用 Safari 打开页面。
AR 里显示不对时
Quick Look 按真实尺寸摆放模型,1 个单位就是 1 米,与 glTF 的约定相同。大多数意外都与此有关。
反过来要给 Android 和网页使用,请用USDZ 转 GLB。
- 模型像一栋楼那么大
- GLB 以厘米为单位,常见于从 FBX 转来的模型。50 厘米的椅子存成 50 个单位,在 AR 里就有 50 米高。在 Blender 或源软件中缩放后重新导出 GLB,再进行转换。
- 模型非常小
- GLB 以毫米或随意的小比例建模。用同样的方法反向调整。
- 纹理丢失
- 先看预览:预览中就没有纹理,说明 GLB 引用了没有一起拖入的文件,或使用了无法读取的 KTX2 纹理。用 PNG 或 JPEG 纹理重新导出 GLB。
- 模型不会动
- 动画不会导出,USDZ 按静止姿态保存,带骨骼的角色通常是 T 姿势。
- 玻璃变成了实心
- 透射效果不会保留。需要透明部件时,改用带不透明度的材质。
常见问题
GLB 怎么转 USDZ?
把 GLB 拖到转换器上,检查预览,然后点击转换并下载 USDZ。不需要 Mac、Xcode 或 Reality Converter,任何现代浏览器都可以。
没有 Mac,Windows 上能把 GLB 转成 USDZ 吗?
能。转换在浏览器中完成,与操作系统无关。Windows 电脑上转好后,把文件发到 iPhone 上测试即可。
转出来的 USDZ 能在 iPhone 的 AR 快速查看里打开吗?
能。输出文件按 Quick Look 的要求生成。发送到 iPhone 或 iPad 后点开,或在网页中用 rel="ar" 链接到它。
GLB 转 USDZ 会保留动画吗?
不会。这里不把动画导出到 USDZ,模型按文件中存储的静止姿态保存,带骨骼的角色通常是 T 姿势。材质和纹理会保留。
为什么模型在 AR 里特别大?
AR Quick Look 把 1 个单位当作 1 米。如果 GLB 以厘米建模,显示出来就大了 100 倍。转换器不做缩放,请在源文件中修正比例后重新转换。
转换时模型会被上传吗?
不会。GLB 的读取和 USDZ 的写出都在浏览器中完成,文件不会离开你的设备。
USDZ 能和 model-viewer 一起用吗?
能。model-viewer 的 src 指向 GLB,ios-src 指向 USDZ,iPhone 用户点同一个按钮就会进入 Quick Look 的 AR。
免费吗?
免费。不需要账号,没有水印,转换数量不限。