バージョン 5.1 の新機能
ARKit 6
ARKit 6 は ARKit の最新バージョンであり、すべてのサポート対象デバイスの iOS 16 に含まれています。変更点や新機能の概要については、Apple の ARKit 6 に関するドキュメント を参照してください。
Xcode 14
バージョン 5.1.0-pre.1 以降のプラグインを使用した iOS アプリケーションは、Xcode 14 でビルドする必要があります。ダウンロードとインストールの手順については、Apple の Xcode 14 に関するドキュメント を参照してください。
4K 動画
ARKit 6 で導入された新しい 4K カメラ設定に、既存の AR Foundation API を使用してアクセスできます。
4K 動画にアクセスするには:
- Xcode 14 をインストールする
- 互換性のあるデバイス (iPhone 11 以上または iPad Pro 第 5 世代以上) に iOS 16 をインストールする
- 4K カメラ設定をリクエストするシーンを設定する
- iOS 用に通常通り Unity プロジェクトをビルドする
- ビルドした Xcode プロジェクトを Xcode 14 で開き、iOS 16 デバイスでアプリケーションをビルドして実行する
Note
4K 動画は、iOS 15 以下が実行されているデバイスでは利用できません。
4K カメラ設定のリクエスト
以下のサンプルコードは、ARCameraManager から 4K カメラ設定をリクエストする方法を示しています。
using System.Collections;
using Unity.Collections;
using UnityEngine;
using UnityEngine.XR.ARFoundation;
[RequireComponent(typeof(ARCameraManager))]
public class CameraConfigurator : MonoBehaviour
{
IEnumerator Start()
{
// 設定が利用可能になるまで待機します
yield return new WaitForEndOfFrame();
// 利用可能なカメラ設定を取得します
var cameraManager = GetComponent<ARCameraManager>();
using var configs = cameraManager.GetConfigurations(Allocator.Temp);
// 利用可能な最初の 4K カメラ設定に切り替えます
var fourKResolution = new Vector2(3840, 2160);
foreach (var c in configs)
{
if (c.resolution == fourKResolution)
{
Debug.Log($"Switching to 4k camera configuration:\n{c}");
cameraManager.currentConfiguration = c;
break;
}
}
}
}
新しい 2D スケルトンジョイント
2D スケルトンに導入された新しいイヤージョイントに、既存の AR Foundation API を使用してアクセスできます。サンプルコードとシーン設定については、HumanBodyTracking2D サンプルシーンを参照してください。
ARPlaneExtent
ARKit 6 では、ARPlaneExtent という新しいクラスが導入されました。これにより、iOS 16 以降では ARKit が平面の回転をネイティブに処理する方法が変更されました。Apple ARKit XR Plugin では、後方互換性とすべてのデバイスでの一貫した体験を維持するために、自動的に新しい rotationOnYAxis が適用されます。最終的な結果に変わりはなく、特別なアクションも不要です。
平面の初回検出後に独自のアンカーを平面のサーフェスに追加することで、より安定的に AR コンテンツを平面に固定できます。
* Apple および ARKit は、アメリカ合衆国およびその他の国や地域で登録されている Apple Inc. の商標です。