Integrate iOS device camera and motion features to produce augmented reality experiences in your app or game. 集成iOS设备相机和动作功能,以在您的应用或游戏中制作增强现实体验。
Overview
Augmented reality (AR) describes user experiences that add 2D or 3D elements to the live view from a device's camera in a way that makes those elements appear to inhabit the real world. ARKit combines device motion tracking, camera scene capture, advanced scene processing, and display conveniences to simplify the task of building an AR experience.
概述
增强现实(AR)可以将2D或3D元素添加到设备摄像头的实时视图中,从而使这些元素看起来像真实世界中一样,给用户一种身临其境的体验。ARKit结合了设备运动跟踪,相机场景捕捉,高级场景处理和显示,便利,简化了构建AR体验的任务。
Important
ARKit requires an iOS device with an A9 or later processor.
To make your app available only on devices supporting ARKit, use thearkitkey in theUIRequiredDeviceCapabilitiessection of your app's Info.plist. If augmented reality is a secondary feature of your app, use theisSupportedproperty to determine whether the current device supports the session configuration you want to use.
重要
ARKit需要带有A9或更高版本处理器的iOS设备。
要使您的应用仅在支持ARKit的设备上可用,请在应用的Info.plist的UIRequiredDeviceCapabilities部分使用arkit密钥。 如果增强现实是您应用的辅助功能,请使用isSupported属性来确定当前设备是否支持您要使用的会话配置。
Note
All AR configurations use one of the device's built-in cameras. Your app's Info.plist must include user-facing text for theNSCameraUsageDescriptionkey so that the user can grant your app permission to access the camera. (If you create a new ARKit app using the Xcode template, a description is provided for you.)
注意
所有AR配置都使用设备的内置摄像头之一。 您应用的Info.plist必须包含NSCameraUsageDescription的面向用户的文本,以便用户可以授予您的应用访问摄像机的权限。 (如果您使用Xcode模板创建新的ARKit应用程序,则会为您提供说明。)
First Steps
About Augmented Reality and ARKit
Discover supporting concepts, features, and best practices for building great AR experiences.
ARSession
A shared object that manages the device camera and motion processing needed for augmented reality experiences.
ARConfiguration
The abstract base class for AR session configurations.
第一步
关于增强现实和ARKit
发现构建支持概念,功能和最佳实践和最好的AR体验。
ARSession
管理增强现实体验所需的设备摄像头和运动处理的共享对象。
ARConfiguration
AR Session配置的抽象基类
World Tracking
Create AR experiences that allow a user to explore virtual content in the world around them with a device's back-facing camera.
Building Your First AR Experience
Create an app that runs an AR session and uses plane detection to place 3D content using SceneKit.
Handling 3D Interaction and UI Controls in Augmented Reality
Follow best practices for visual feedback, gesture interactions, and realistic rendering in AR experiences.
ARWorldTrackingConfiguration
A configuration that uses the back-facing camera, tracks a device's orientation and position, and detects real-world flat surfaces.
AROrientationTrackingConfiguration
A configuration that uses the back-facing camera and tracks only a device's orientation.
ARPlaneAnchor
Information about the position and orientation of a real-world flat surface detected in a world-tracking AR session.
世界追踪
创建AR体验,允许用户使用设备的背面照相机探索周围世界的虚拟内容。
建立你的第一个AR体验
创建一个APP运行AR Session并使用平面检测以便放置SceneKit创建的3D内容。
在增强现实中处理3D交互和UI控件
遵循AR体验中的视觉反馈,手势交互和逼真渲染的最佳实践。
ARWorldTrackingConfiguration
使用背面照相机的配置,跟踪设备的方向和位置,并检测真实世界的平面。
AROrientationTrackingConfiguration
使用后置摄像头并仅跟踪设备方向的配置。
ARPlaneAnchor
关于在世界跟踪AR会话中检测到的真实世界平面的位置和方向的信息。
Face Tracking
Use the TrueDepth camera on iPhone X to create AR experiences that respond to the user's face and facial expressions.
Creating Face-Based AR Experiences
Use the information provided by a face tracking AR session to place and animate 3D content.
ARFaceTrackingConfiguration
A configuration that tracks the movement and expressions of the user’s face with the TrueDepth camera.
ARFaceAnchor
Information about the pose, topology, and expression of a face detected in a face-tracking AR session.
面部追踪
使用iPhone X上的TrueDepth相机创建响应用户脸部和脸部表情的AR体验。
创建基于脸部的AR体验
使用人脸跟踪AR Session提供的信息放置和动画3D内容。
ARFaceTrackingConfiguration
使用TrueDepth相机跟踪用户脸部的移动和表情的配置。
ARFaceAnchor
有关在面部跟踪AR会话中检测到的人脸姿态,拓扑和表情的信息。
Standard Views
ARSCNView
A view for displaying AR experiences that augment the camera view with 3D SceneKit content.
ARSKView
A view for displaying AR experiences that augment the camera view with 2D SpriteKit content.
标准视图
ARSCNView
显示使用3D SceneKit内容增强相机视图的AR体验的视图。
ARSKView
显示使用2D SpriteKit内容增强相机视图的AR体验的视图
Custom Views
Displaying an AR Experience with Metal
Build a custom AR view by rendering camera images and using position-tracking information to display overlay content.
自定义视图
Displaying an AR Experience with Metal
通过渲染相机图像并使用位置跟踪信息来显示覆盖内容来构建自定义AR视图
Image Detection
Recognizing Images in an AR Experience
Detect known 2D images in the user’s environment, and use their positions to place AR content.
ARReferenceImage
An image to be recognized in the real-world environment during a world-tracking AR session.
ARImageAnchor
Information about the position and orientation of an image detected in a world-tracking AR session.
图像检测
在AR体验中识别图像
检测用户环境中的已知2D图像,并使用它们的位置放置AR内容。
ARReferenceImage
在世界追踪AR Session期间在真实世界环境中识别的图像。
ARImageAnchor
在世界跟踪AR Session中检测到的图像有关的位置和方向的信息。
Real-World Objects and Positions
ARHitTestResult
Information about a real-world surface found by examining a point in the device camera view of an AR session.
ARAnchor
A real-world position and orientation that can be used for placing objects in an AR scene.
ARTrackable
A real-world object in a scene for which ARKit tracks changes to position and orientation.
真实世界的对象和位置
ARHitTestResult
通过检查AR会话的设备摄像头视图中的点找到有关真实世界表面的信息。
ARAnchor
真实世界的位置和方向,可用于将对象放置在AR场景中。
ARTrackable
ARKit跟踪位置和方向变化的场景中的真实世界对象。
Camera and Scene Details
ARFrame
A video image, with position-tracking information, captured as part of an AR session.
ARCamera
Information about the camera position and imaging characteristics for a captured video frame in an AR session.
ARLightEstimate
Estimated scene lighting information associated with a captured video frame in an AR session.
ARDirectionalLightEstimate
Estimated environmental lighting information associated with a captured video frame in a face-tracking AR session.
相机和场景细节
ARFrame
具有位置跟踪信息的视频图像作为AR会话的一部分被捕获。。
ARCamera
有关AR会话中捕获的视频帧的摄像头位置和成像特征的信息。。
ARLightEstimate
估计场景照明信息与AR会话中捕获的视频帧相关联。
ARDirectionalLightEstimate
估计的环境照明信息与脸部追踪AR Session中捕获的视频帧相关联。
Advanced Topics
Using Vision in Real Time with ARKit
Manage Vision resources for efficient execution of a Core ML image classifier, and use SpriteKit to display image classifier output in AR.
高级主题
在ARKit中实时使用Vision
管理Vision资源以有效执行Core ML图像分类器,并使用SpriteKit在AR中显示图像分类器输出。