Highlight
Apple 用 Reality Converter、Reality Composer 和 AR Quick Look 串起从 DCC 导出、USDZ 转换、行为编排到真机预览的 AR 内容制作流程,让艺术家可以把 FBX、OBJ、USD、GLTF 资产交付为可分享的 AR 体验。
核心内容
做 AR 内容时,程序员遇到的问题通常在代码里。艺术家遇到的问题更早:模型在 Houdini、Blender 或 KeyShot 里做好了,交给 App 前却要过格式、材质、单位、层级和预览这几关。一个资产如果单位错了,到了 AR 场景里可能放大 100 倍。一个层级如果被合并了,后面就无法只让某一朵云移动。
这场 session 把这条路拆成一条直线。先从 DCC(Digital Content Creation,数字内容创作工具)导出 FBX、OBJ、USD 或 GLTF。再用 Reality Converter 检查材质、纹理、单位和版权信息,并输出 Reality Composer 能接受的 USDZ。接着在 Reality Composer 里把 USDZ 组合成场景,用行为卡片控制动画、移动、显示、隐藏和切换场景。最后把项目交给 iPad 实地调整,或导出给 AR Quick Look 查看和分享。
这个流程解决的是团队协作断点,而非单个 API 调用。艺术家可以继续使用熟悉的 DCC;开发者拿到的是 Apple 生态可识别的 USDZ 或 Reality 文件;产品、设计和测试人员可以在 iPad 上直接看比例、速度和空间关系,不必等 Xcode 集成完成。
详细内容
1. 从 DCC 到 Reality Converter
(00:47)演讲开头先给出完整路线:DCC → Reality Converter → Reality Composer → 设备。Reality Converter 支持导入 FBX、OBJ、USD 和 GLTF 几何格式,纹理支持 PNG 和 JPEG,输出目标是有效的 USDZ。
关键点:
- 几何输入只包含演讲列出的 FBX、OBJ、USD、GLTF,覆盖 Houdini、Blender、KeyShot 等常见工具链。
- 纹理输入只写 PNG 和 JPEG,因为演讲明确把它们列为 Reality Converter 支持的纹理类型。
- base units(基础单位)是关键步骤。Houdini 示例使用米,后面的资产使用厘米,单位错了会在 Composer 中出现 100 倍的比例偏差。
- USDZ 是进入 Reality Composer 的前置条件,因为演讲明确说明 Reality Composer 只接受 USDZ 文件。
(03:46)Reality Converter 的工作界面围绕检查资产展开。左侧 Models tab 管理导入的模型。右侧 Environments tab 用 image-based lighting(基于图像的光照)检查不同光照下的效果。Materials tab 用来挂接 base color、normal map、ambient occlusion 等纹理。Properties tab 用来填写版权和设置 base units(基础单位)。
关键点:
Models tab用来确认多个资产都进入了同一个转换流程。Environments tab的 grid 可以检查模型尺寸,避免把厘米资产当成米资产导出。Materials tab让艺术家在转换阶段修正贴图连接,而不是等到 App 里才发现材质丢失。Properties tab的 base units 会影响后续 Reality Composer 中各个资产的相对比例。
(09:21)演讲还演示了一个更快的导入方式:直接把包含几何和关联纹理的文件夹拖进 Reality Converter,工具会自动挂接纹理。多个资产准备好后,可以用 File > Export All 一次导出。
关键点:
- 按文件夹导入来自演讲中的 “faster way”,适合批量处理一组场景资产。
Export All避免逐个导出,适合美术每天反复迭代资产的工作流。- 每个导出结果都是独立 USDZ,后面可以分别拖进 Reality Composer 组合场景。
2. 在 Reality Composer 编排行为
(11:36)USDZ 导入 Reality Composer 后,第一件事是检查比例。演讲者把 schoolhouse、clock tower 和 taxi 放在一起,确认它们没有出现 100 倍的大小差异。静态资产只需要看外观;带动画的 taxi 需要创建行为,告诉 Composer 何时播放 USDZ 动画。
关键点:
Trigger: On Scene Start表示场景开始时触发行为。Action: USDZ Animation使用资产自带的 USDZ 动画。Target: taxi是被控制的模型。演讲中因为 taxi 已被选中,行为会自动套用到它。Loop: endlessly把默认的一次播放改成循环,适合环境动画。
(13:38)Houdini 云朵示例保留了 USDZ 层级,所以 Reality Composer 可以通过 Hierarchy Select(层级选择)选中单独的云朵实体。这样,行为可以套到某个子对象,而不是整个云团。
关键点:
- 云朵资产保留 USD 层级,对应演讲前面强调的实例层级没有被合并成一整块几何体。
Hierarchy Select是 Reality Composer 中进入 USD 场景层级的入口。- 选中某个子实体后,行为只影响这个对象,适合云、车辆、装饰物这类成组资产。
(15:08)更复杂的交通动画由多张行为卡片串起来。演讲中的 taxi 先显示、移动、隐藏、回到起点,再循环,避免直接移动后瞬间跳回。Show 和 Hide 卡片还能设置方向、时长、距离和 easing(缓动)。
关键点:
Show taxi让车辆从画面外进入,避免凭空出现。Move To end point负责主运动,演讲中强调卡片按从左到右的顺序执行。Hide taxi在终点淡出并向后移动,掩盖回到起点的动作。Move To start point是重置位置的步骤,因为前一步已经隐藏,所以用户看不到跳变。Repeat把一段短动画变成持续的环境交通。
(18:23)警车转弯示例用 Orbit 卡片解决“直线移动无法走弧线”的问题。Orbit 需要 affected object(受影响对象)和 center object(中心对象)。演讲者把一个小胶囊形几何体藏在建筑里,作为警车转弯的圆心,并把 orbit 设为 0.25 圈。
关键点:
Move To corner把车送到转弯入口。Orbit用隐藏几何体当圆心,让车辆沿弧线转弯。amount: 0.25对应四分之一圈,正好表现街角转向。Move To next street接住转弯后的直线行驶。Hide police_car沿用 taxi 的消失技巧,让循环更自然。
3. 真机编辑、启动页和导出
(20:49)AR 内容必须放到真实空间里看。Reality Composer 的 iOS Handoff 允许在 Mac 上选择 Edit on iOS,把项目传到 iPad,在桌面上实地查看尺寸、速度和动线,再把修改传回 Mac。
关键点:
Edit on iOS把 Mac 端项目交给 iPad,方便在真实环境中调试。place scene in AR用桌面等真实平面检查比例和运动速度。edit behavior timing是演讲中的具体修改:把某辆 taxi 的显示时间从 2 秒改成 5 秒。Done后,Mac 端行为参数会同步为 iPad 上调整过的值。
(23:16)AR Quick Look 加载内容时会有同步和锚定时间。演讲者用第二个 scene 做 splash page(启动页):复制完整场景,删掉不希望加载时出现的对象,只保留静态画面,然后用 Change Scene 在真正开始时跳到带动画的主场景。
关键点:
- 复制主场景再粘贴到新 scene 时,只带来几何,不带原来的行为,因此适合做静态启动页。
- 可以删掉 taxi 或 clouds,让加载画面更干净。
Change Scene在场景真正开始时立刻跳到完整版本。- 目标 scene 指向有交通和云朵动画的最终场景。
(25:10)Reality Composer 在 2020 年新增 USDZ Export 选项,需要在 Preferences 中启用。演讲给出了导出选择:网站或 News 文章使用 USDZ;Xcode 项目或 AR Quick Look 使用 Reality export。演讲者为了在 AR Quick Look 中查看,选择导出 Reality 文件,再通过 AirDrop 发送到 iPad。
关键点:
USDZ export面向网页和 News 文章中的嵌入式 3D/AR 内容。Reality export面向 Xcode 项目和 AR Quick Look。AirDrop是演讲中的交付方式,把导出的 Reality 文件送到设备。open automatically in AR Quick Look完成最终验证:文件保存后会在 AR Quick Look 中加载到桌面上。
核心启发
-
做一个内部 AR 资产验收清单
- 做什么:给美术交付流程增加“格式、贴图、单位、层级、版权、导出格式”检查页。
- 为什么值得做:session 中每一步出错都会传导到后面,尤其是 base units 和 USD 层级。
- 怎么开始:以 Reality Converter 的 Models、Materials、Properties 三个区域为字段,要求每个资产导出前截图或记录设置。
-
做一个可复用的环境动画模板
- 做什么:把 taxi 的 Show → Move To → Hide → Reset 循环做成团队模板,用在车辆、人群、云、装饰物上。
- 为什么值得做:演讲展示了同一组行为卡片如何从一辆 taxi 扩展到一组云朵。
- 怎么开始:在 Reality Composer 中先搭一个最小场景,保存带触发器、Show、Hide、Move To 和 timing 设置的示例项目。
-
做一个“真机调参”环节
- 做什么:每次 AR 场景评审都安排 iPad Handoff,在真实桌面上调尺寸、运动速度和显示时间。
- 为什么值得做:演讲中 taxi 的 2 秒到 5 秒调整,只有放到真实空间里才容易判断。
- 怎么开始:让 Mac 端项目通过
Edit on iOS发到 iPad,现场修改行为时长,再把结果传回 Mac 保存。
-
给 AR Quick Look 内容加启动页
- 做什么:为大型 AR 场景准备一个静态 splash scene,让加载和锚定阶段看起来更完整。
- 为什么值得做:AR Quick Look 加载时用户会看到内容预览,空白或杂乱画面会影响第一印象。
- 怎么开始:复制主场景,删除移动对象和不必要元素,加
On Scene Start→Change Scene跳到最终场景。
-
按投放渠道拆分导出策略
- 做什么:为网页、News、Xcode 项目和 AR Quick Look 维护不同导出产物。
- 为什么值得做:session 明确区分 USDZ export 和 Reality export 的适用场景。
- 怎么开始:在发布脚本或交付表里加入
web/news: USDZ、Xcode/AR Quick Look: Reality两类目标,避免临近发布时重新导出。
关联 Session
- Shop online with AR Quick Look — 继续看 AR Quick Look 如何进入电商网页和购买流程。
- Explore ARKit 4 — 理解 ARKit 4 的位置锚定、深度和场景几何能力。
- What’s new in RealityKit — 了解 RealityKit 在渲染、动画、物理和音频上的 AR 运行时能力。
- What’s new in USD — 补上 USD 与 USDZ 在 AR 内容交换中的格式背景。
评论
GitHub Issues · utterances