The Artist‘s AR Toolkit

Easter79
• 阅读 1254

作者: Chafferer,iOS 开发者,目前就职于手百 iOS 基础研发组。

Sessions: https://developer.apple.com/videos/play/wwdc2020/10601/

前言

Reality Converter 和 Reality Composer 可以更加容易地为你的 iOS 或者 iPadOS app 创建增强现实的资源,可以将 .obj .gltf.usd 等常见的 3D 文件格式拖放到 Reality Converter 应用程序中,Reality Converter 会将这些资源转换成 USDZ(USD 文件的“零压缩” zip 文件),以便进行编辑和自定义。开发者可以使用新纹理自定义材质属性,编辑元数据等来修改生成的文件。借助内置的 IBL 选项,可以在各种照明和环境条件下预览生成的 3D 对象。本 section 将详细说明如何用各种 3D 资源构建和测试你的的 AR 场景,并且与你的艺术家工具流集成。

Reality Converter beta 3 下载链接[1]

Overview

  • 从 DCC 导出什么内容

  • 将导出的内容导入 Reality Converter 并生成 USDZ 文件

  • 使用 Reality Composer 中的资源设置一些复杂的行为创建丰富的体验

  • 在设备上查看新创造的 AR 项目

Artist workflow overview

The Artist‘s AR Toolkit

设计师的整个工作流程就是一条直线:选择的 DCC 到 Reality Converter 然后使用 Reality Composer 处理,最后发送到设备上进行观看或者是分享。

Reality Convert

这个过程是整个流程中重要的一步,可以将 FBX OBJ USD GLTF这些几何类型的文件以及 PNG JPEG 格式的图片(纹理类型文件)组合输入到 Reality Convert 中以生成有效的 USDZ 文件(Reality Composer 只能处理 USDZ 文件,苹果已经为开发者提供了必要的工具来生成和检查 USDZ 文件的有效性)。

The Artist‘s AR Toolkit

  • 使用 Reality Converter 生成一些内容(以 USD 文件为例)

The Artist‘s AR Toolkit

找到创建的 USD 文件,直接将这个文件拖放到 Reality Converter 中,Converter 会自动加载 USD 文件(如下图所示

The Artist‘s AR Toolkit

你可以在 3D 视图中旋转、平移以及缩放,

The Artist‘s AR Toolkit

在左边的工具栏中会展示当前的模型选项卡(Models 按钮),如果你拖入的 USD 文件很多时,此工具栏中的模型选项卡会越来越满。你可以点击 Frame 来恢复到标准视角。

右边的菜单栏提供了你大部分操作所需要的工具

The Artist‘s AR Toolkit

环境选项卡(Environment)里面包含来预先加载的 IBL 文件:光照环境,可以让你的图像看起来更加自然

The Artist‘s AR Toolkit

可以简单地在它们之间切换找到符合你需求地那些光照效果,在底部还提供了曝光调节工具,你可以做出相应的调整。

材料选项卡(Materials)用来连接所有材料和纹理(图片)

The Artist‘s AR Toolkit

有两个标注的材料,但是只有其中的一个材料被分配给了 DCC,Converter 为你提供了默认材料作为后备素材,如果你下载来什么或者创建了什么但是忘记分配材料,Convert 会利用这些后备材料,并且在你导入内容的时候自动进行分配。你也可以直接拖拽本地的图片来添加:比如基色、法线贴图环境光遮蔽等等。

属性选项卡 (Properties)可以用来添加一些版权信息设置基本单位等等

The Artist‘s AR Toolkit

  • 导入其他的资源(以 Maya 内的动画资源作为 FBX 文件导出为例)

Converter 可以同时接受移动动画和蒙板动画,动画是通过直接在几何图形上的关键帧实现的,所以是不需要骨骼绑定的。Reality Converter 不关心你的图片输入,它关心的是材料的名称以及材料是如何进行分配的,所以在 Maya 中添加的图片纹理,只是我们自己在 DCC 中使用而已,这也就是说你不需要在你的视图中创建图片纹理。一切准备就绪后就可以导出成 FBX 格式的文件。这样你就可以在你的电脑中看到一个静态的资源文件,OBJ 是常见的静态资源文件的格式,几乎每个 DCC 都需要导出  OBJ 格式的文件,这些文件往往是由几何图形、材料以及图片纹理组成的。

GLTF 是 Reality Converter 能处理的最后一种几何图形格式的文件,越来越多的 DCC 开始选择其中的一种作为导出选项,KeyShot 就是一款这样的应用。你现在可以通过 GLTFUSDZ 轻松将你的数据移动到实时格式。

现在将这些文件导入进 Reality Converter,效果如下

The Artist‘s AR Toolkit

使用 DCC 是一种复杂而且专业的技能组合,如果你不想学 DCC 或者不想创作自己的资源,可以直接直接使用在线的资源。现在一些网站(Sketchfab)甚至都开始提供 USDZ 格式的文件下载,这些文件非常适合在 Reality Converter 中使用。

  • 创建一些丰富的体验

将现有的一些材料全都拖入到 Reality Converter 中,我们可以看到的场景如下所示

The Artist‘s AR Toolkit

我们需要是用一个 USDZ 动画,可以在顶部菜单栏中的 Scenes 中选中当前的场景:

The Artist‘s AR Toolkit

现在,我们需要选中一些目标:比如出租车

选中云朵,通过右键 -> 层级选择,我们可以四处移动物体也可以改变物体的大小

The Artist‘s AR Toolkit

更重要的是,我们可以对它们进行行为设置,这样出租车就可以从 A 点移动到 B 点然后消失,并进行无限循环:

我们可以设置运动的距离,展示或者隐藏等属性来达到上述效果。

我们也可以设置一个环绕效果的动画:环绕一个小几何体运行,需要指定一个环绕对象以及一个环绕参考对象,我们设置一辆车绕一个小球状的物体环绕 90 度转弯,并不是一个完整的圆形轨迹,这样就能实现一辆车到了道路尽头转弯的效果。

Reality Composer

The Artist‘s AR Toolkit

我们可以将 Reality Converter 中创建的场景移植到 Reality Composer 中进行实际的效果查看:在 Mac OS 中我们可以点击 “在 iOS 中编辑”,然后吧整个项目投送到我们的 iPad/iOS 设备中,在 iPad/iOS 设备中编辑完后再投送到 Mac OS 中进行查看(将 iPad 上编辑的文件同步到 Mac OS 中)

The Artist‘s AR Toolkit

在 iOS 设备上运行的好处是,我们可以把整个场景投放到我们真实的世界中,进行实时编辑,点击 AR Quick Look,选定要将场景投放的地方,把当前编辑的场景投放出来。假设我们对某一处不满意,只需要暂停下来,然后进行一些修改直到满意为止。

一旦满意后,你可以将它们保存并且导出。

在导出之前,我们再为你的项目添加一个醒目的页面:使用 AR Quick Look 的时候,在同步和锁定平面的时候会有一个加载场景的时间,这时候你回看到内容里的一个场景,我们需要制作一个好看的场景。在 Reality Composer 中,最快的方法是复制所有的内容(删除你不想被别人看到的内容),然后将这个场景导出(File -> Export)的时候选择 Reality File。

总结

The Artist‘s AR Toolkit

  • 可以将 OBJ GLTF USD FBX 格式的图片通过 Reality Converter 整合成 USDZ 文件

  • 将你在 Reality Converter 上创建的场景投到 Reality Composer 中,在 iOS/iPad 设备上进行查看

  • Reality Composer 也支持编辑,你可以实时进行修改,然后再同步到 Mac OS 中

  • 使用 AR Quick Look 欣赏你的作品

推荐阅读

RealityKit 的新变化:让构建的场景更逼真、趣味

探索 ARKit 4

关注我们

我们是「老司机技术周报」,每周会发布一份关于 iOS 的周报,也会定期分享一些和 iOS 相关的技术。欢迎关注。

The Artist‘s AR Toolkit

关注有礼,关注【老司机技术周报】,回复「2020」,领取学习大礼包。

支持作者

这篇文章的内容来自于 《WWDC20 内参》。在这里给大家推荐一下这个专栏,专栏目前已经创作了 108 篇文章,只需要 29.9 元。点击【阅读原文】,就可以购买继续阅读 ~

WWDC 内参 系列是由老司机周报、知识小集合以及 SwiftGG 几个技术组织发起的。已经做了几年了,口碑一直不错。 主要是针对每年的 WWDC 的内容,做一次精选,并号召一群一线互联网的 iOS 开发者,结合自己的实际开发经验、苹果文档和视频内容做二次创作。

参考资料

[1]

Reality Converter beta 3 下载链接: https://developer.apple.com/services-account/download?path=/Applications/Reality\_Converter\_beta\_3/Reality\_Converter\_beta\_3.dmg

本文分享自微信公众号 - 老司机技术周报(LSJCoding)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Easter79 Easter79
3年前
SwiftUI 中的 App 要领
作者:倾寒,iOS开发者,目前就职于阿里巴巴,手淘iOS架构组Session:https://developer.apple.com/videos/play/wwdc2020/10037/概述这个主题主要讲述使用SwiftUI构建APP的核心概念。在SwiftUI可以使用Views简洁强大的
Stella981 Stella981
3年前
Shop Online with AR Quick Look
作者:Chafferer,iOS开发者,目前就职于手百iOS基础研发组。Sessions:https://developer.apple.com/videos/play/wwdc2020/10604/前言从iOS12开始,苹果引入了ARQuickLook,这是3D内容的内置全系统的
Stella981 Stella981
3年前
JS 苹果手机日期显示NaN问题
问题描述newDate("2019122910:30:00")在IOS下显示为NaN原因分析带的日期IOS下存在兼容问题解决方法字符串替换letdateStr"2019122910:30:00";datedateStr.repl
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
Easter79
Easter79
Lv1
今生可爱与温柔,每一样都不能少。
文章
2.8k
粉丝
5
获赞
1.2k