前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布

ARKit

作者头像
iOSDevLog
发布2018-08-22 14:09:36
2.2K0
发布2018-08-22 14:09:36
举报
文章被收录于专栏:iOSDevLogiOSDevLog

集成iOS设备相机和动作功能,在您的应用或游戏中产生增强现实体验。

SDK

  • iOS 11.0+

概观

一个增强现实(AR)描述了用户体验,从设备的摄像头的方式,使这些元素似乎居住在现实世界中添加2D或3D元素到实时取景。ARKit结合了设备运动跟踪,摄像机场景捕捉,高级场景处理和显示便利性,简化了构建AR体验的任务。您可以使用这些技术使用iOS设备的后置摄像头或前置摄像头创建多种AR体验。

使用后置摄像头增强现实感

最常见的AR体验类型显示来自iOS设备的后置摄像头的视图,并通过其他可视内容进行扩充,为用户提供了一种查看周围世界并与之交互的新方式。

ARWorld Tracking Configuration提供这种体验:ARKit映射和跟踪用户所居住的真实世界空间,并将其与坐标空间相匹配,以便您放置虚拟内容。世界跟踪还提供使AR体验更具沉浸感的功能,例如识别用户环境中的对象和图像以及响应真实世界的光照条件。

注意

您可以在用户的​​真实环境中显示3D对象,而无需构建自定义AR体验。在iOS 12中,当您在应用程序中使用USDZ文件时,系统会为3D对象提供AR视图,或者在Web内容中使用带有USDZ文件的Safari或WebKit。QLPreview Controller

使用前置摄像头增强现实感

在iPhone X上,ARFace Tracking Configuration使用前置TrueDepth相机提供有关用户脸部姿势和表情的实时信息,供您在渲染虚拟内容时使用。例如,您可以在摄像机视图中显示用户的面部并提供逼真的虚拟遮罩。您还可以省略摄像机视图并使用ARKit面部表情数据为虚拟角色设置动画,如iMessage的Animoji应用程序中所示。

主题

第一步

验证设备支持和用户权限

确保您的应用可以使用ARKit并尊重用户隐私。

class ARSession

一个共享对象,用于管理增强现实体验所需的设备摄像头和运动处理。

class ARConfiguration

AR会话配置的抽象基类。

显示

class ARSCNView

用于显示增强使用3D SceneKit内容的摄像机视图的AR体验的视图。

class ARSKView

用于显示增强使用2D SpriteKit内容的摄像机视图的AR体验的视图。

使用 metal 显示AR体验

通过渲染摄像机图像并使用位置跟踪信息来显示叠加内容,从而构建自定义AR视图。

世界追踪

创建AR体验,允许用户使用设备的后置摄像头探索周围世界中的虚拟内容。

建立您的第一个AR体验

创建运行AR会话的应用程序,并使用平面检测使用SceneKit放置3D内容。

了解ARKit中的世界跟踪

发现支持概念,功能和最佳实践,以构建出色的AR体验。

class ARWorldTrackingConfiguration

使用后置摄像头的配置,跟踪设备的方向和位置,并检测真实世界的表面,以及已知的图像或对象。

class ARPlaneAnchor

有关在世界跟踪AR会话中检测到的真实世界平面的位置和方向的信息。

class AREnvironmentProbeAnchor

在世界跟踪AR会话中为特定空间区域提供环境照明信息的对象。

用户体验

按照以下示例和人机界面指南 > 增强现实,构建引人注目的直观AR体验。

管理会话生命周期和跟踪质量

通过提供清晰的反馈,从中断中恢复以及恢复以前的会话,使您的AR体验更加强大。

在增强现实中处理3D交互和UI控件

遵循AR体验中的视觉反馈,手势交互和逼真渲染的最佳实践。

快速拍摄:为增强现实创造游戏

了解Apple如何为WWDC18构建精选演示,并获得使用ARKit,SceneKit和Swift制作自己的多人游戏的技巧。

AR世界分享和坚持

创建多用户AR体验

使用MultipeerConnectivity框架在附近设备之间传输ARKit世界地图数据,为AR体验创建共享基础。

创建持久的AR体验

保存并加载ARKit世界地图数据,以允许用户在相同的真实环境中返回之前的AR体验。

class ARWorldMap

来自世界跟踪AR会话的空间映射状态和锚点集。

图像检测和跟踪

在用户环境中使用已知的2D图像来增强世界跟踪AR会话。

识别AR体验中的图像

检测用户环境中的已知2D图像,并使用其位置放置AR内容。

class ARReferenceImage

在世界跟踪AR会话期间在现实世界环境中识别的图像。

class ARImageAnchor

有关在世界跟踪AR会话中检测到的图像的位置和方向的信息。

物体检测

使用用户环境中的已知3D对象来增强世界跟踪AR会话。

扫描和检测3D对象

记录现实世界对象的空间特征,然后使用结果在用户环境中查找这些对象并触发AR内容。

class ARReferenceObject

在世界跟踪AR会话期间在真实世界环境中识别的3D对象。

class ARObjectAnchor

有关在世界跟踪AR会话中检测到的真实3D对象的位置和方向的信息。

class ARObjectScanningConfiguration

一种配置,使用后置摄像头收集高保真空间数据,用于扫描3D对象以便以后检测。

命中测试和真实世界的位置

class ARHitTestResult

通过检查AR会话的设备摄像机视图中的点找到有关真实世界表面的信息。

class ARAnchor

可用于在AR场景中放置对象的真实世界位置和方向。

protocol ARAnchorCopying

支持自定义ARAnchor子类。

protocol ARTrackable

场景中的真实世界对象,ARKit跟踪位置和方向的变化。

相机和场景细节

class ARFrame

具有位置跟踪信息的视频图像作为AR会话的一部分被捕获。

class ARCamera

有关AR会话中捕获的视频帧的摄像机位置和成像特征的信息。

class ARLightEstimate

与AR会话中捕获的视频帧相关联的估计场景照明信息。

面部追踪

使用iPhone X上的TrueDepth相机创建响应用户脸部和面部表情的AR体验。

创建基于脸部的AR体验

使用面部跟踪AR会话提供的信息来放置3D内容并为其添加动画。

class ARFaceTrackingConfiguration

使用TrueDepth相机跟踪用户脸部的移动和表情的配置。

class ARFaceAnchor

有关在面部跟踪AR会话中检测到的面部的姿势,拓扑和表情的信息。

class ARDirectionalLightEstimate

在面部跟踪AR会话中与捕获的视频帧相关联的估计的环境照明信息。

专业配置

class AROrientationTrackingConfiguration

使用后置摄像头并仅跟踪设备方向的配置。

class ARImageTrackingConfiguration

使用后置摄像头检测和跟踪已知图像的配置。

相关技术

使用音频创建沉浸式AR体验

使用声音效果和环境声音层创建引人入胜的AR体验。

使用ARKit实时使用Vision

管理Vision资源以有效执行Core ML图像分类器,并使用SpriteKit在AR中显示图像分类器输出。

原文:https://developer.apple.com/documentation/arkit/

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.08.12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概观
    • 使用后置摄像头增强现实感
      • 使用前置摄像头增强现实感
      • 主题
        • 第一步
          • 显示
            • 世界追踪
              • 用户体验
                • AR世界分享和坚持
                  • 图像检测和跟踪
                    • 物体检测
                      • 命中测试和真实世界的位置
                        • 相机和场景细节
                          • 面部追踪
                            • 专业配置
                              • 相关技术
                              相关产品与服务
                              图数据库 KonisGraph
                              图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
                              领券
                              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档