您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

3.4 KiB

AR Foundation Samples

Example projects that use AR Foundation 2.2 and demonstrate its functionality with sample assets and components.

This set of samples relies on four Unity packages:

  • ARSubsystems
  • ARCore XR Plugin
  • ARKit XR Plugin
  • ARFoundation

ARSubsystems defines an interface, and the platform-specific implementations are in the ARCore and ARKit packages. ARFoundation turns the AR data provided by ARSubsystems into Unity GameObjects and MonoBehavours.

The mater branch is compatible with Unity 2019.1 and later. For 2018.4, see the 1.5-preview branch. ARFoundation 1.5 is functionality equivalent to 2.2. The only difference is the version of Unity on which it depends.

⚠️ ARKit 3 Support

TL;DR: If you want to checkout the latest and greatest features in ARKit 3, use this master branch, Xcode 11 beta, and a device running iOS 13 beta. Otherwise, see the 2.1 branch, which only lacks support for the new ARKit 3 features.

The master branch includes support for ARKit 3, which is still in beta and requires Xcode 11 beta and iOS 13 beta. If you try to build the master branch with Xcode 10, you will get these linker errors:

Undefined symbol: OBJC_CLASS$_ARCollaborationData
Undefined symbol: OBJC_CLASS$_ARSkeletonDefinition
Undefined symbol: OBJC_CLASS$_ARBodyAnchor
Undefined symbol: OBJC_CLASS$_ARBodyTrackingConfiguration
Undefined symbol: OBJC_CLASS$_ARMatteGenerator

If you run these samples on a pre-iOS 13 device, your app will crash on startup with this message:

dyld: Symbol not found: _OBJC_CLASS_$_ARMatteGenerator

The 2.1 branch is compatible with Xcode 9 and 10 and only lacks the new ARKit 3 features.

ARFoundation 2.2 provides interfaces for ARKit 3 features, but only Unity's ARKit XR Plugin 2.2 package contains support for these features and requires Xcode 11 beta and iOS 13 beta. Unity's ARKit XR Plugin 2.2 is not backwards compatible with previous versions of Xcode or iOS. Unity's ARKit XR Plugin 2.1 will work with the latest ARFoundation (it just doesn't implement the ARKit 3 features).

While Xcode 11 & iOS 13 are in beta, we will continue to maintain both the 2.2 and 2.1 versions of the packages.

The same is also true for Unity's ARKit Face Tracking package 1.1: it requires Xcode 11 beta and iOS 13 beta.

This table shows the latest version of Unity's ARKit XR Plugin and its Xcode and iOS compatibility:

Unity ARKit XR Plugin Unity ARKit Face Tracking Xcode Version iOS Version
2.2 1.1 11 beta 13 beta
2.1 1.0 9 or 10 11 or 12

This distinciton is temporary. Once iOS 13 is no longer in beta, the ARKit package is expected to work with all versions of Xcode 9+ and iOS 11+.

Instructions for installing AR Foundation

  1. Download the latest version of Unity 2019.1 or later.

  2. Open Unity, and load the project at the root of the arfoundation-samples repository.

  3. Open your choice of sample scene.

  4. See the AR Foundation Documentation for usage instructions and more information.