ARCore の新機能と主な変更点。
ARCore v1.48.0 の新機能
Unity 6 と AR Foundation 6 のサポートが完全にリリースされました
Unity の AR Foundation 向け ARCore Extensions で AR Foundation 6 がサポートされるようになりました。互換性のあるバージョンの ARCore Extensions for AR Foundation を入手するには、次のインストール方法を使用します。
Add package from git url...
を介して:https://github.com/google-ar/arcore-unity-extensions.git#arf6
を使用します。Add package from tarball...
経由: リリース ページでarf6
で示されるリリースを使用します。
プロジェクトを AR Foundation 5 から AR Foundation 6 にアップグレードするには、次のガイドをご覧ください。
互換性を損なう変更と動作の変更
- SDK で iOS バージョン 13.0 未満のデプロイ ターゲットがサポートされなくなった
ARCore v1.47.0 の新機能
Unity 6 と AR Foundation 6 のベータ版サポート
Unity の AR Foundation 向け ARCore Extensions で、AR Foundation 6 のベータ版サポートが追加され、Unity 6 がサポートされるようになりました。互換性のあるバージョンの ARCore Extensions for AR Foundation を入手するには、次のインストール方法を使用します。
Add package from git url...
を介して:https://github.com/google-ar/arcore-unity-extensions.git#arf6
を使用します。Add package from tarball...
経由: リリース ページでarf6
で示されるリリースを使用します。
プロジェクトを AR Foundation 5 から AR Foundation 6 にアップグレードするには、次のガイドをご覧ください。
バグの修正
- Unity 6 で Cloud Anchor サンプルのプレーンが透明にならない問題を修正しました
その他の変更点
- ARCore Extensions GitHub リポジトリの
main
ブランチが、arf5
ブランチを追跡するように切り替えられました。
ARCore v1.46.0 の新機能
ARCore SDK の targetSdkVersion
の変更
ARCore の targetSdkVersion
が Android API レベル 35 に更新されました。アプリで targetSdkVersion
を指定していない場合、マニフェストの統合により、アプリの targetSdkVersion
は 35 になります。
Unity の場合、Unity プロジェクトの [Project Settings] > [Player] > [Android] > [Other Settings] で対象 API レベルを指定すると、ARCore の targetSdkVersion
値がオーバーライドされます。
ARCore v1.45.0 の新機能
Flash Mode API
ARCore でデバイスのトーチモードを有効にできるようになりました。これにより、暗い環境での認識能力が向上します。
Config.FlashMode
: デバイスのフラッシュ ユニットを有効または無効にする構成オプション。- フラッシュ機能の検出方法とトーチモードを有効にする方法について詳しくは、デベロッパー ガイドをご覧ください。
ArFlashMode
: デバイスのフラッシュ ユニットを有効または無効にする構成オプション。- フラッシュ機能の検出方法とトーチモードを有効にする方法について詳しくは、デベロッパー ガイドをご覧ください。
Unity の AR Foundation 向け ARCore Extensions が AR Foundation 5 をサポート
AR Foundation の ARCore Extensions が AR Foundation 5 を正式にサポートするようになりました。AR Foundation 5(Unity バージョン 2022 と 2023 で検証済みのバージョン)を使用する場合は、次のインストール方法で、AR Foundation 用の ARCore Extensions の互換性のあるバージョンを入手します。
Add package from git url...
を介して:https://github.com/google-ar/arcore-unity-extensions.git#arf5
を使用します。Add package from tarball...
経由: リリース ページのarf5
で示されているリリースを使用します。
AR Foundation バージョン 4 のままのプロジェクトでは、次のインストール方法を使用できます。
Add package from git url...
を介して:https://github.com/google-ar/arcore-unity-extensions.git#arf4
を使用します。Add package from tarball...
経由: リリース ページのarf4
で示されているリリースを使用します。
プロジェクトを AR Foundation 4 から AR Foundation 5 にアップグレードするには、移行ガイドをご覧ください。
ベータ版サポートの ARCORE_USE_ARF_5
などのカスタム スクリプト記号は使用されなくなりました。
ARCore v1.44.0 の新機能
このリリースには新機能はありません。
ARCore v1.43.0 の新機能
Geospatial Creator の Places API の移行
Geospatial Creator の検索機能で、Google の New Places API が使用されるようになりました。検索機能を使用するには、Google Cloud コンソールで「Places API(新版)」を有効にする必要があります。
ARCore v1.42.0 の新機能
Unity 用 Geospatial Creator でタイルにスナップする
ARGeospatialCreatorAnchor
エディタ インスペクタ パネルに [タイルにスナップ] ボタンが追加されました。このボタンは、地形アンカーまたは屋上アンカーの編集専用の高度値を、アンカーの現在の緯度と経度にある 3D タイル ジオメトリの上部に設定します。このプロパティは実行時の動作には影響しません。これにより、エディタ内のアンカーの位置を調整して、実行時の位置と一致させることができます。
ARCore v1.41.0 の新機能
Geospatial Creator API
Unity 用 Geospatial Creator で、エディタ モードでの Geospatial Creator オブジェクトの作成と操作がサポートされるようになりました。新たに利用可能になったクラスと API については、Geospatial Creator API ガイドをご覧ください。
AR Foundation バージョン 5.x のサポート(ベータ版)
Unity の AR Foundation 向け ARCore Extensions で、AR Foundation バージョン 5.x がサポートされるようになりました。既存のプロジェクトを AR Foundation に移行するには、移行ガイドをご覧ください。
ARCore v1.40.0 の新機能
iOS のシーン セマンティクス
Scene Semantics API が、ARCore SDK for iOS と、iOS プラットフォームをターゲットとする Unity の AR Foundation 向け ARCore Extensions で利用可能になりました。Scene Semantics API を使用すると、デベロッパーはユーザーを取り巻くシーンをリアルタイムで把握し、屋外コンポーネントの 11 クラスにピクセルをラベル付けできます。詳細については、シーン セマンティクスの概要をご覧ください。
Unity 用 Geospatial Creator でスポットを検索する
Unity 用 Geospatial Creator で、テキスト検索によるフォトリアルな 3D タイルビューの配置がサポートされるようになりました。詳しくは、Geospatial Creator でスポットを検索するをご覧ください。
ARCore v1.39.0 の新機能
このリリースには新機能はありません。
ARCore v1.38.0 の新機能
このリリースには新機能はありません。
ARCore v1.37.0 の新機能
シーン セマンティクス
Scene Semantics は、周囲のシーンをより詳細に把握し、ユーザーの周囲の状況を簡単に理解できるようにします。Scene Semantics は、カメラ画像フィードに対して ML モデルを実行し、屋外コンセプトの 11 個のラベルのいずれかに対応する各ピクセルを備えたセマンティック画像を提供します。
詳細については、シーン セマンティクスの概要と semantics_java サンプルアプリをご覧ください。
ARCore v1.40.0 の新機能をご覧ください。
街並みのジオメトリ
Streetscape Geometry は、Geospatial API が有効になっている場合に、ユーザーの周囲の建物や地形のジオメトリを提供する新しい ARCore Geospatial API です。
街並みのジオメトリのデベロッパー ガイド(Kotlin/Java)をご覧ください。また、geospatial_java サンプルアプリが更新され、街並みのジオメトリが追加されました。
詳しくは、街並みのジオメトリのデベロッパー ガイド(C)をご覧ください。
詳しくは、街並みのジオメトリのデベロッパー ガイド(Unity)をご覧ください。
詳しくは、街並みのジオメトリのデベロッパー ガイド(iOS)をご覧ください。また、GeospatialExample アプリが更新され、街並みのジオメトリが追加されました。
GARStreetscapeGeometry
:GARStreetscapeGeometry.mesh
は 3D メッシュを提供します。GARStreetscapeGeometry.meshTransform
は、セッションのワールド空間を基準としたジオメトリの起点変換を提供します。GARStreetscapeGeometry.trackingState
はトラッキング状態を維持します。GARStreetscapeGeometry.type
は、地形か建物ジオメトリかを示します。GARStreetscapeGeometry.quality
はジオメトリの品質を提供します。GARStreetscapeGeometry.identifier
は、ジオメトリの一意の識別子を提供します。GARSession.createAnchorOnStreetscapeGeometry:transform:error:
は、指定された位置と向きにアンカーを作成します。GARSession.raycastStreetscapeGeometry:direction:error:
は、シーンに読み込まれた街並みのジオメトリに対してレイキャストを実行します。
屋上アンカー
屋上アンカーは、コンテンツを屋上に固定するのに役立つ新しい地理空間アンカー タイプです。
地理空間アンカー(Java)をご覧ください。また、geospatial_java サンプルアプリが更新され、屋上アンカーが追加されました。
詳細については、地理空間アンカー(C)をご覧ください。
詳細については、地理空間アンカーをご覧ください。また、ジオ空間サンプルが更新され、屋上アンカーが追加されました。
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()
は、指定した緯度、経度、屋上からの高度、向きで、シーン内のゲーム オブジェクトのアンカーを提供します。ResolveAnchorOnRooftopPromise
ResolveAnchorOnRooftopResult
詳細については、地理空間アンカー(iOS)をご覧ください。また、GeospatialExample アプリが更新され、屋上アンカーが追加されました。
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:
は、指定された位置、屋上からの標高(メートル単位)、地球を基準とした向きに屋上アンカーを作成します。GARCreateAnchorOnRooftopFuture
は、屋上アンカーの解決の非同期ステータスを保持します。GARRooftopAnchorState
は、屋上アンカーの解決の状態を表します。
Geospatial Depth
VPS がカバーされているエリアで ARCore セッションで Depth API モードと Streetscape Geometry モードの両方が有効になっている場合、生成される深度画像は Streetscape Geometry を使用して改善されます。生成された各深度画像には、65.535 メートルの範囲で街並みのジオメトリが統合されています。Depth API を呼び出す際に変更を加える必要はありません。
詳細については、Geospatial Depth(Java)をご覧ください。
詳細については、ジオ空間の深度(C)をご覧ください。
詳細については、ジオ空間の深度(C)をご覧ください。
現在、シーン セマンティクスは iOS ではご利用いただけません。
Vulkan レンダリングのサポート
ARCore で、AHardwareBuffer
を介してカメラ画像を公開することで、Vulkan レンダリングがサポートされるようになりました。このハードウェア バッファは、VkImage
にバインドすることで使用できます。
詳しくは、Vulkan を使用して ARCore アプリをレンダリングすると hello_ar_vulkan_c サンプルアプリをご覧ください。
現在、AR Foundation を使用した Unity では Vulkan レンダリングを使用できません。
電子式手ぶれ補正機能(EIS)
電子式手ぶれ補正を使用するように ARCore を構成すると、カメラのフレームがスムーズになり、よりスムーズなユーザー エクスペリエンスを実現できます。
詳細については、電子式手ぶれ補正の有効化と hello_eis_kotlin サンプルアプリをご覧ください。
Config.ImageStabilizationMode
Frame.transformCoordinates3d()
Session.isImageStabilizationModeSupported()
OPENGL_NORMALIZED_DEVICE_COORDINATES
以外の 2D 座標でFrame.transformCoordinates3d()
を呼び出すと、IllegalArgumentException
がスローされるのではなくクラッシュが発生するという既知の問題があります。この問題は次のリリースで解決される予定です。
ArImageStabilizationMode
ArFrame_transformCoordinates3d()
ArSession_isImageStabilizationModeSupported()
AR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATES
以外の 2D 座標でArFrame_transformCoordinates3d()
を呼び出すと、AR_ERROR_INVALID_ARGUMENT
を返す代わりにアプリが中止されるという既知の問題があります。この問題は次のリリースで解決される予定です。
現在、AR Foundation を使用している Unity では EIS を使用できません。
現時点では、iOS では EIS をご利用いただけません。
ARCore 非同期 API
このリリースでは、Future と Promise のパラダイムに沿って、非同期オペレーションを扱う際の操作性を向上させる新しい ARCore 非同期 API が導入されています。
- 地形アンカーの解決:
Earth.resolveAnchorOnTerrainAsync()
を使用してResolveAnchorOnTerrainFuture
を取得します。古いシンボルEarth.resolveAnchorOnTerrain()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud Anchor の解決:
Session.resolveCloudAnchorAsync()
を使用してResolveCloudAnchorFuture
を取得します。古いシンボルSession.resolveCloudAnchor()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud アンカーをホストする:
Session.hostCloudAnchorAsync()
を使用してHostCloudAnchorFuture
を取得します。古い記号Session.hostCloudAnchor()
とSession.hostCloudAnchorWithTtl()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - APK の可用性を確認する:
ArCoreApk.checkAvailabilityAsync()
を使用してコールバックを登録します。古い記号ArCoreApk.checkAvailability()
は非推奨になっていません。
- 地形アンカーの解決:
ArEarth_resolveAnchorOnTerrainAsync()
を使用してArResolveAnchorOnTerrainFuture
を取得するか、ArResolveAnchorOnTerrainCallback
を使用します。古いシンボルArEarth_resolveAndAcquireNewAnchorOnTerrain()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud Anchor の解決:
ArSession_resolveCloudAnchorAsync()
を使用してArResolveCloudAnchorFuture
を取得するか、ArResolveCloudAnchorCallback
を使用します。古いシンボルArSession_resolveAndAcquireNewCloudAnchor()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud アンカーをホストする:
ArSession_hostCloudAnchorAsync()
を使用してArHostCloudAnchorFuture
を取得するか、ArHostCloudAnchorCallback
を使用します。古い記号ArSession_hostAndAcquireNewCloudAnchor()
とArSession_hostAndAcquireNewCloudAnchorWithTtl()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - APK の可用性を確認する:
ArCoreApk_checkAvailabilityAsync()
を使用してコールバックを登録します。古い記号ArCoreApk_checkAvailability()
は非推奨になっていません。
- 地形アンカーの解決:
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()
を使用してResolveAnchorOnTerrainPromise
を取得します。古いシンボルARAnchorManagerExtensions.ResolveAnchorOnTerrain()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud Anchor の解決:
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()
を使用してResolveCloudAnchorPromise
を取得します。古いシンボルARAnchorManagerExtensions.ResolveCloudAnchorId()
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud アンカーをホストする:
ARAnchorManagerExtensions.HostCloudAnchorAsync()
を使用してHostCloudAnchorPromise
を取得します。古いARAnchorManagerExtensions.HostCloudAnchor()
シンボルは非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。
- 地形アンカーの解決:
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:
を使用してGARCreateAnchorOnTerrainFuture
を取得します。古いシンボルGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud Anchor の解決:
GARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:
を使用してGARResolveCloudAnchorFuture
を取得します。古いシンボルGARSession.resolveCloudAnchorWithIdentifier:error:
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。 - Cloud アンカーをホストする:
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:
を使用してGARHostCloudAnchorFuture
を取得します。古い記号GARSession.hostCloudAnchor:error:
とGARSession.hostCloudAnchor:TTLDays:error:
は非推奨になりました。今後のバージョンの ARCore で削除される可能性があります。
ARCore v1.36.0 の新機能
iOS での Swift Package Manager のサポート
ARCore SDK for iOS が Swift Package Manager を正式にサポートするようになりました。Swift Package Manager を使用して ARCore と統合する方法については、iOS アプリで AR を有効にするをご覧ください。
ARCore v1.35.0 の新機能
地理空間ポーズの精度で、向きをヨーに置き換え
すべてのジオ空間ポーズで、向きの精度(ヨー回転)が公開されるようになりました。これは、進行方向の精度に代わるものです。
- Java/Kotlin:
GeospatialPose.getHeading()
をGeospatialPose.getEastUpSouthQuaternion()
に、GeospatialPose.getHeadingAccuracy()
をGeospatialPose.getOrientationYawAccuracy()
に置き換えます。 - C:
ArGeospatialPose_getHeading()
をArGeospatialPose_getEastUpSouthQuaternion()
に、ArGeospatialPose_getHeadingAccuracy()
をArGeospatialPose_getOrientationYawAccuracy()
に置き換えます。 - iOS:
GARGeospatialTransform.heading
をGARGeospatialTransform.eastUpSouthQTarget
に、GARGeospatialTransform.headingAccuracy
をGARGeospatialTransform.orientationYawAccuracy
に置き換えます。 - Unity:
GeospatialPose.Heading
をGeospatialPose.EunRotation
に、GeospatialPose.HeadingAccuracy
をGeospatialPose.OrientationYawAccuracy
に置き換えました。
その他の変更と更新
その他の変更、バグの修正、パフォーマンスの改善については、リリースノートをご覧ください。
- ARCore SDK for Android リリースノート
- ARCore for Android NDK リリースノート
- ARCore SDK for iOS のリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.34.0 の新機能
デバイスの現在地で地理空間機能が利用可能かどうかを確認する
Geospatial API で、指定した水平位置での Visual Positioning System(VPS)の可用性を実行時に確認できるようになりました。この API は、アクティブな AR セッションがなくても使用できます。たとえば、VPS が利用可能な場合にのみ [AR を開始] ボタンを表示できます。
- Java/Kotlin:
Session.checkVpsAvailabilityAsync()
- C:
ArSession_checkVpsAvailabilityAsync()
- iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
- Unity(AR Foundation):
AREarthManager.CheckVpsAvailability()
地理空間のポーズ オリエンテーション
地理空間ポーズで、3D 空間での向きを公開できるようになりました。
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion()
- C:
ArEarth_getGeospatialPose()
- iOS:
GARGeospatialTransform.eastUpSouthQTarget
- Unity:
GeospatialPose.EunRotation()
地理空間ポーズの変換
地理空間ポーズをワールド空間(AR)ポーズと相互に変換できるようになりました。
AR ポーズからジオ空間ポーズを取得するには:
- Java/Kotlin:
Earth.getGeospatialPose()
- C:
ArEarth_getGeospatialPose()
- iOS:
GARSession.geospatialTransformFromTransform:error:
- Unity:
AREarthManager.Convert(Pose)
地理空間ポーズから AR ポーズを取得するには:
- Java/Kotlin:
Earth.getPose()
- C:
ArEarth_getPose()
- iOS:
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error:
- Unity:
AREarthManager.Convert(GeospatialPose)
これらの関数から取得した地理空間ポーズの向き値はゼロに設定されています。代わりに、次のようにします。
- Android(Java/Kotlin/C): ポーズの EUS クォータニオン
- iOS: ポーズの
eastUpSouthQTarget
- Unity: ポーズの
EunRotation
その他の変更と更新
その他の変更、バグの修正、パフォーマンスの改善については、リリースノートをご覧ください。
- ARCore SDK for Android リリースノート
- ARCore for Android NDK リリースノート
- ARCore SDK for iOS のリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.33.0 の新機能
新しい Cloud Anchors エンドポイント
- Cloud Anchors を使用するには、古い ARCore Cloud Anchor API ではなく、ARCore API を有効にする必要があります。ARCore Cloud Anchor API は非推奨になりました。古いアプリ バージョンをサポートするには、移行中に両方を有効にできます。ARCore SDK 1.32.0 以前でビルドされたアプリは古い API をターゲットとし、ARCore SDK 1.33.0 以降でビルドされたアプリは新しい API をターゲットとします。次の点にご注意ください。
- 新しい API では、
arcorecloudanchor.googleapis.com
ではなくドメイン名arcore.googleapis.com
が使用されます。 - API によって制限されている API キーを使用している場合は、ARCore API を許可する必要があります。
- バックエンドから ARCore Cloud Anchor Management API にリクエストを送信する場合は、ARCore API を有効にした後、ドメイン名を
arcore.googleapis.com
に変更する必要があります。 - 旧 API/エンドポイントは 2023 年 8 月まで引き続きサポートされます。
- 詳細については、ARCore 1.33 Cloud Anchor エンドポイントの変更をご覧ください。
- 新しい API では、
地形アンカー
- Geospatial Terrain anchor API は、水平位置の地形を基準として、指定された水平位置と高度にアンカーを作成します。
その他の変更と更新
その他の変更、バグの修正、パフォーマンスの改善については、リリースノートをご覧ください。
- ARCore SDK for Android リリースノート
- ARCore for Android NDK リリースノート
- ARCore SDK for iOS のリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.32.0 の新機能
このリリースには新機能はありません。
Android と Android 向け Unity(AR Foundation)
- ARCore の
targetSdkVersion
が Android API レベル 32 に更新されました。アプリでtargetSdkVersion
を指定しない場合、マニフェストの統合により、アプリのtargetSdkVersion
は 32 になります。- Android SDK: プロジェクトの
build.gradle
またはAndroidManifest.xml
にtargetSdkVersion
を指定すると、ARCore のtargetSdkVersion
値がオーバーライドされます。 - AR Foundation for Android: Unity プロジェクトの [Project Settings] > [Player] > [Android] > [Other Settings] でTarget API Level を指定すると、ARCore の
targetSdkVersion
値がオーバーライドされます。
- Android SDK: プロジェクトの
その他の変更と更新
その他の変更、バグの修正、パフォーマンスの改善については、リリースノートをご覧ください。
- ARCore SDK for Android リリースノート
- ARCore for Android NDK リリースノート
- ARCore SDK for iOS のリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.31.0 の新機能
ARCore Geospatial API
新しい ARCore Geospatial API は、Google Earth の 3D モデルのデータと Google マップのストリートビュー画像データを利用して、没入感のあるグローバル スケールの位置情報ベースの拡張現実をアプリで実現します。
プラットフォーム固有のデベロッパー向けドキュメントと、新しい Geospatial API の使い方については、ARCore Geospatial API の概要をご覧ください。
長距離の深度
ARCore Depth API が、長距離の深度センサーを組み込むように最適化され、表現可能な深度測定の範囲が拡大されました。深度画像の 16 ビットすべてが使用され、最大範囲は 65, 535 ミリメートルです。以前は、13 ビットのみ入力され、上限は 8, 191 mm でした。
プラットフォーム固有のデベロッパー向けドキュメントと Depth API の変更については、Depth の変更をご覧ください。
プラットフォーム固有の注意事項
Android
新しい ARCore Geospatial API
Java
Earth
は、地球基準座標でのローカライズ機能を提供します。Earth.createAnchor()
は、地球を基準として指定した位置と向きに新しいAnchor
を作成します。
Earth.Earthstate
は、TrackingState
など、Earth
の現在の状態を表します。GeospatialPose
は、地球を基準とした特定の位置、高度、コンパスの向きを記述します。
C
ArEarth
は、地球を基準とする座標でのローカライズ機能を提供します。ArEarth_acquireNewAnchor()
は、地球を基準として指定した位置と向きに新しいAnchor
を作成します。ArEarthState
は、ArTrackingState
など、ArEarth
の現在の状態を表します。
ArGeospatialPose
は、地球を基準とした特定の位置、高度、コンパスの向きを記述します。
ARCore Depth API を更新しました
Java
- Depth API 関数の呼び出しが変更されました。
Frame.acquireDepthImage
はFrame.acquireDepthImage16Bits
にマッピング。Frame.acquireRawDepthImage
はFrame.acquireRawDepthImage16Bits
にマッピング。- 両方の呼び出しの出力画像形式が
android.graphics.ImageFormat#DEPTH16
からandroid.hardware.HardwareBuffer#D_16
に変更されました。 - 深度は引き続き 16 ビットの整数でミリメートル単位で表されますが、16 ビットすべてが深度の表現に使用されるため、最大表現範囲が 8, 191 mm から 65, 535 mm に拡大されます。
- Depth API 関数の呼び出し
Frame.acquireDepthImage
とFrame.acquireRawDepthImage
は非推奨になりました。代わりにFrame.acquireDepthImage16Bits
とFrame.acquireRawDepthImage16Bits
を使用してください。
- Depth API 関数の呼び出しが変更されました。
C
- Depth API 関数の呼び出しが変更されました。
ArFrame_acquireDepthImage
はArFrame_acquireDepthImage16Bits
にマッピング。ArFrame_acquireRawDepthImage
からArFrame_acquireRawDepthImage16Bits
- どちらの呼び出しの出力画像形式も
AR_IMAGE_FORMAT_DEPTH16
からAR_IMAGE_FORMAT_D_16
に変更されました。 - 深度は引き続き 16 ビットの整数でミリメートル単位で表されますが、16 ビットすべてが深度の表現に使用されるため、最大表現範囲が 8, 191 mm から 65, 535 mm に拡大されます。
- Depth API 関数の呼び出し
ArFrame_acquireDepthImage
とArFrame_acquireRawDepthImage
は非推奨になりました。代わりにArFrame_acquireDepthImage16Bits
とArFrame_acquireRawDepthImage16Bits
を使用してください。
- Depth API 関数の呼び出しが変更されました。
Unity(AR Foundation)
新しい ARCore Geospatial API:
AREarthManager
は、地球を基準とする座標でのローカライズ機能を提供します。EarthTrackingState
は、最新のフレームの Earth のトラッキング状態を取得します。EarthState
: Earth のエラー条件を維持します。
GeospatialPose
は、地球を基準とした特定の位置、高度、コンパスの向きを記述します。ARGeospatialAnchor
は、地球を基準とした位置と向きで指定された、シーン内のゲーム オブジェクトのアンカーを提供します。
iOS
新しい ARCore Geospatial API:
GAREarth
地球を基準としたローカライズを提供します。GAREarthState.earthState
は、エラーの状態と条件を管理します。GAREarthState.trackingState
は、地理空間データに必要なトラッキング状態を維持します。
GARGeospatialTransform
位置、向き、高度、精度推定値を含むグローバル変換を表します。GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:
地球を基準として、指定された位置と向きに地理空間アンカーを作成します。
その他の変更点
その他の変更、バグの修正、パフォーマンスの改善については、リリースノートをご覧ください。
- ARCore SDK for Android リリースノート
- ARCore for Android NDK リリースノート
- ARCore SDK for iOS のリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.30.0 の新機能
このリリースには新機能はありません。
Android
@NonNull
と@Nullable
で API 戻り値にアノテーションを付けました。- サンプルのビルドに使用されるビルドツールのバージョンを更新しました。Gradle は 7.0.2 に、Android Gradle プラグインは 7.0.4 に更新しました。既存の ARCore アプリでは、これらのツールのアップグレードは不要です。新機能、既知の問題、非互換性については、Android Gradle プラグインに関する Android のドキュメントをご覧ください。
Unity(AR Foundation)
新しい
arcore-unity-extensions-without-edm4u.tgz
リリースを追加しました。このリリース バリアントには、Unity 用 External Dependency Manager などの外部依存関係がバンドルされておらず、EDM へのアップグレードが可能です。このライトリリースを使用すると、Firebase ライブラリを使用している場合の互換性の問題を解決できる場合があります。使用を開始するには、AR Foundation 用の ARCore Extensions のインストール手順をご覧ください。2021.2 以降をより適切にサポートするために、ExternalDependencyManager を v1.2.168 にアップグレードしました。詳細については、EDM の変更ログをご覧ください。
セッション構成に変更がなくても ARCore セッションがフレームごとに構成され、FPS が低下する問題を修正しました。
iOS
- さまざまなバグの修正とパフォーマンスの改善を行いました。
ARCore v1.29.0 の新機能
このリリースには新機能はありません。
Android
- hello_ar_java、hello_ar_kotlin:
SCREENSPACE_WITH_APPROXIMATE_DISTANCE
を使用して配置されたオブジェクトの色を変更し、インスタント配置を使用して配置されたオブジェクトをより明確に区別できるようにしました。 - persistent_cloud_anchor_java: サンプルに不足しているビルド依存関係を追加しました。プロジェクトが正しく設定されているにもかかわらず、アンカーをホストすると状態が
CloudAnchorState ERROR_NOT_AUTHORIZED
になるバグを修正しました。
Unity(AR Foundation)
- ARCore Extensions パッケージが ARKit XR プラグインに依存するようになりました。これにより、インストールされた AR Foundation のバージョンが ARKit XR プラグインのバージョンと互換性を持つようになります。これにより、Unity 2019.x に ARCore Extensions をインストールして ARKit XR プラグインを有効にしたときにコンパイル エラーが修正されます。
- ARCore Extensions のプロジェクト設定が、[Project Settings] > [XR] > [ARCore Extensions] から [Project Settings] > [XR Plug-in Management] > [ARCore Extensions] に移動しました。
ARCoreExtensionsConfig
、ARCoreExtensionsCameraConfigFilter
、ARCoreRecordingConfig
が [作成 > XR > ARCore Extensions] メニューから [作成 > XR] メニューに移動されました。
iOS
- さまざまなバグの修正とパフォーマンスの改善を行いました。
全リリースノート
- ARCore SDK for Android の完全なリリースノート
- ARCore for Android NDK の完全なリリースノート
- ARCore SDK for iOS の完全なリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.28.0 の新機能
- 2022 年 11 月以降、AR 対応アプリは NDK 画像や画像メタデータを取得できなくなります。影響を受ける SDK バージョンは、呼び出される特定の関数によって異なります。詳細については、非推奨のお知らせをご覧ください。
- C:
ArImage_getNdkImage()
とArImage_getNdkCameraMetadata()
の呼び出しは、AImage
オブジェクトとACameraMetadata
オブジェクトに対して常にnullptr
を返します。 - Java:
Frame#acquireCameraImage()
によって返されるImage
オブジェクトのサイズは0
x0
ピクセルです。Frame#getImageMetadata()
の呼び出しは常にIllegalArgumentException
をスローします。 - Unity(AR Foundation): AR Foundation 2.1(Unity 2019 LTS)を使用している場合、
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
の呼び出しは常にfalse
を返します。AR Foundation 4.x 以降のバージョンは影響を受けず、XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
の呼び出しは正常に動作します。 - ARCore SDK for Unity(非推奨):
Frame.CameraImage.AcquireCameraImageBytes()
の呼び出しは、0
x0
ピクセルのサイズになります。Frame.CameraMetadata.GetAllCameraMetadataTags()
を呼び出すと、空のList<CameraMetadataTag>
が返されます。
- C:
- Java:
ArImage#getCropRect()
がフルサイズの切り抜き長方形を返すようになりました。つまり、Image 内のすべてのピクセルが有効になります。詳細については、android.media.Image#getCropRect()
をご覧ください。
ARCore v1.27.0 の新機能
このリリースには新機能はありません。さまざまなバグの修正とパフォーマンスの改善については、次のリリースノートをご覧ください。
- ARCore SDK for Android の完全なリリースノート
- ARCore for Android NDK の完全なリリースノート
- ARCore SDK for iOS の完全なリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
このリリースには、さまざまなバグの修正に加えて、次の変更が含まれています。
Kotlin のサンプルアプリ
Kotlin を使用する際のベスト プラクティスを示すために hello_ar_kotlin を追加しました。
詳しくは、Android のクイックスタートをご覧ください。
ml_kotlin を追加し、画像分類モデルを ARCore で使用する方法を示しました。
詳細については、ARCore を ML モデルの入力として使用するをご覧ください。
ARCore v1.26.0 の新機能
このリリースでは、次の重要な変更が加えられています。
- 録画と再生のデータセットで URI がサポートされるようになりました。
その他の変更と更新
その他のバグの修正や互換性を破る変更については、次のリリースノートをご覧ください。
- ARCore SDK for Android の完全なリリースノート
- ARCore for Android NDK の完全なリリースノート
- ARCore SDK for iOS の完全なリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.25.0 の新機能
このリリースには新機能はありません。さまざまなバグの修正とパフォーマンスの改善については、次のリリースノートをご覧ください。
- ARCore SDK for Android の完全なリリースノート
- ARCore for Android NDK の完全なリリースノート
- ARCore SDK for iOS の完全なリリースノート
- ARCore SDK for Unity の完全なリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.24.0 の新機能
このリリースでは、次の重要な変更が加えられています。
- 画像空間フィルタリングなしで深度画像を提供する新しい Raw Depth API
- Recording & Playback API へのカスタム データトラックの録音機能
- デプス ヒットテストを実行する機能
元の深度
Raw Depth API は、Full Depth API データよりも精度の高いカメラ画像の深度データを提供しますが、すべてのピクセルをカバーするとは限りません。元の深度画像と、対応する信頼度画像は、さらに処理することもできます。これにより、アプリは個々のユースケースに十分な精度を持つ深度データのみを使用できます。
デベロッパー ガイド:
カスタム トラックの録音
Recording & Playback API の新しいカスタムデータ トラック機能を使用すると、録画中に ARCore フレームにカスタムデータを追加し、再生中にその同じデータをフレームから取得できます。
デベロッパー ガイド:
深度ヒットテスト
以前は、ヒットテストは検出された平面でのみ実施でき、場所は大きな平らなサーフェスに限定されていました。深度ヒットテストでは、スムーズな深度情報と元の深度情報の両方を利用して、平面でない場合やテクスチャが少ないサーフェスでも、より正確なヒット結果を提供します。
デベロッパー ガイド:
その他の変更と更新
その他のバグの修正や互換性を破る変更については、次のリリースノートをご覧ください。
- ARCore SDK for Android の完全なリリースノート
- ARCore for Android NDK の完全なリリースノート
- ARCore SDK for iOS の完全なリリースノート
- ARCore SDK for Unity の完全なリリースノート
- AR Foundation 向け ARCore Extensions リリースノート
ARCore v1.23.0 の新機能
デュアルカメラのサポートは保留中です
デュアルカメラのサポートは、今後数週間以内にリリースされる予定です。詳しくは、対応デバイスのページをご覧ください。
新しいデバッグツール
ブロードキャスト インテントを送信することで、デベロッパーは次の機能を有効にできます。
Android デバッグログへの ARCore API 呼び出しのロギング
ARCore のパフォーマンス オーバーレイ
Cloud Anchors のホストと解決
ARCore SDK 1.11.0 以前を使用してビルドされた AR 対応アプリは、Cloud Anchor をホストまたは解決できなくなりました。
C:
ArSession_hostAndAcquireNewCloudAnchor
とArSession_resolveAndAcquireNewCloudAnchor
によって返される Cloud Anchors のステータスは常にAR_CLOUD_ANCHOR_STATE_ERROR_INTERNAL
です。Java:
Session.hostCloudAnchor(Anchor)
とSession.resolveCloudAnchor(String)
から返される Cloud Anchors のステータスは常にAnchor.CloudAnchorState.ERROR_INTERNAL
になります。Unity:
XPSession.CreateCloudAnchor(Anchor)
とXPSession.ResolveCloudAnchor(string)
によって返される Cloud Anchors のステータスは常にCloudServiceResponse.ErrorInternal
になります。
ARCore SDK 1.12.0 以降でビルドされたアプリは影響を受けません。ARCore Cloud Anchor API の使用には、非推奨ポリシーが適用されます。
その他の変更と更新
その他のバグの修正や破壊的変更については、次のリリースノートをご覧ください。
ARCore v1.22.0 の新機能
今回のリリースでは、AR Foundation の ARCore Extensions に新しい Recording and Playback API と Camera Config Filter API が追加されました。詳細については、ARCore Extensions の完全なリリースノートをご覧ください。
その他の変更と更新
その他のバグの修正や破壊的変更については、次のリリースノートをご覧ください。
ARCore v1.21.0 の新機能
このリリースでは、Android、Android NDK、Unity 用の新しい Recording API と Playback API が追加されました。
録画と再生
Recording API と Playback API を使用すると、特定の環境内で動画と AR データを 1 回録画し、そのコンテンツを使用して、テスト目的でライブカメラ セッションに置き換えることができます。ARCore は、録画されたセッションを MP4 ファイルに保存します。このファイルには、複数の動画トラックやその他のさまざまなデータがデバイスに保存されます。その後、ライブカメラ セッションの代わりにこのデータを使用するようにアプリを設定できます。これにより、そのコンテンツを無限に再生して、現場に戻ることなくさまざまな AR 効果を試すことができます。
詳細:
Java:
C:
Unity:
ARCore v1.20.0 の新機能
このリリースでは、次の重要な変更が加えられています。
永続的な Cloud Anchors のサポートが追加されました。
Android と Android NDK のイメージ メタデータ機能を更新しました。
Unity 2018.4 以降で AR Foundation の ARCore Extensions または Unity 用 ARCore SDK(1.19 以降)をサポートするには、Gradle バージョン 5.6.4 以降が必要であるという新しいガイダンス。
永続的な Cloud Anchors の新しいサポート
ARCore v1.20 より前のバージョンでは、Cloud Anchor を解決できるのは、最初にホストされた後 24 時間のみに限定されていました。永続的な Cloud Anchor を使用すると、有効期間(TTL)が 1 ~ 365 日の Cloud Anchor を作成できるようになりました。Cloud Anchor Management API を使用して、アンカーがすでにホストされている後にアンカーの存続時間を延長することもできます。
永続的な Cloud Anchors の使用は、新しい Cloud Anchors の非推奨ポリシーの対象となります。
C: デベロッパー ガイド、
ArSession_hostAndAcquireNewCloudAnchorWithTtl
、ArSession_estimateFeatureMapQualityForHosting
。Java: デベロッパー ガイド、
hostCloudAnchorWithTtl
、estimateFeatureMapQualityForHosting
。iOS: デベロッパー ガイド、
hostCloudAnchor:TTLDays:error:
、estimateFeatureMapQualityForHosting:
。AR Foundation の ARCore Extensions: Android デベロッパー ガイド、iOS デベロッパー ガイド、
ARAnchorManager.HostCloudAnchor(ARAnchor, int)
、ARAnchorManager.SetAuthToken(string)
、ARAnchorManager.EstimateFeatureMapQualityForHosting(Pose)
。Android をターゲットとする Unity: デベロッパー ガイド、
XPSession.CreateCloudAnchor(Anchor, int)
、XPSession.EstimateFeatureMapQualityForHosting(Pose)
。iOS をターゲットとする Unity: デベロッパー ガイド、
XPSession.SetAuthToken(string)
、XPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int)
。
その他の変更と更新
その他のバグの修正や破壊的変更については、次のリリースノートをご覧ください。
ARCore v1.19.0 の新機能
このリリースでは、次の重要な変更が加えられています。
- Android、Android NDK、Unity 向けの新しい Instant Placement API。
- Unity で Android 11 向けにビルドするための新しいガイダンス。
インスタント プレースメント
Instant Placement API を使用すると、ARCore がサーフェス ジオメトリを検出するのを待たずに、ユーザーが AR オブジェクトを画面に配置できます。ユーザーが環境内を移動すると、オブジェクトの配置がリアルタイムで調整されます。ARCore が AR オブジェクトが配置されている領域で正しいポーズを検出すると、白いオブジェクトが自動的に更新され、ポーズが正確になり不透明になります。
次のクリップは、実際のテーブルの上に仮想の Android フィギュアを置いたものです。最初に配置したときは白色で、かなり小さい形状です。ARCore がシーンの寸法の計算を調整すると、フィギュアはより正確な位置にジャンプします。このため、オブジェクトの「サイズ」が異なるように見えることがあります。
詳細:
Android:
Android NDK:
Unity:
ARCore v1.18.0 の新機能
このリリースでは、次の重要な変更が加えられています。
- Android、Android NDK、Unity 向けの新しい Depth API。
- 拡張フェイス アセットを作成して Android Studio にインポートするための新しいガイダンス。
- Depth API は、
AR Foundation
とARCore XR Plugin
の両方で4.1.0-preview.2
でサポートされます。
Depth API
深度対応デバイスでは、Depth API は ARCore 対応デバイスの RGB カメラ、または利用可能な場合はアクティブな深度センサーを使用して深度マップを作成します。深度マップから得られるピクセル単位の深度を使用して、仮想オブジェクトを現実世界のオブジェクトの前または後ろに正確に表示し、臨場感のあるリアルなユーザー エクスペリエンスを実現します。
たとえば、次の画像は、ドアの横にトランクが置かれた実際の空間に仮想 Android フィギュアを配置したものです。Depth API は、幹の端の後ろにある人物を適切にオクルージョンします。
詳細:
Android:
Android NDK:
Unity:
ARCore v1.17.0 の新機能
ARCore SDK for Android の注目点
複数のカメラ フレームをバッファリングできる新しいメソッドを追加しました。マルチスレッド レンダリングなどの他の手法とともに、フレームレートの変動を減らすために使用できます。
欠落していたデプス センサーの使用とターゲット FPS ゲッターを追加しました。
Android SDK for Android の完全なリリースノートもご覧ください。
ARCore SDK for Unity の注目点
- Unity バージョン 2018.2 以降でマルチスレッド レンダリングのサポートを追加しました。これにより、ほとんどの場合パフォーマンスが向上し、フレームレートの変動を抑えることができます。これは Unity プロジェクトの設定で、[Project Settings] > [Player] > [Android] > [Other Settings] > [Multithreaded Rendering] にあります。詳しくは、デベロッパー ガイドをご覧ください。
- 特定の ARCore セッションのエラー状態を示す
SessionStatus.ErrorCameraNotAvailable
とSessionStatus.ErrorIllegalState
を追加しました。
ARCore SDK for Unity の完全なリリースノートもご覧ください。
ARCore SDK for iOS の注目点
Cloud Anchors SDK のバイナリサイズが大幅に削減されました。
拡張フェイスでビットコードがサポートされるようになりました。
ARCore SDK for iOS の完全なリリースノートもご覧ください。
ARCore v1.16.0 の新機能
ARCore SDK for Android と Sceneform SDK for Android の注目点
このリリースでは、次の重要な変更が加えられています。
- ほとんどのデバイスで、デバイスのデフォルトの GPU テクスチャ解像度よりも低い GPU テクスチャ解像度でサポートされている追加のカメラ構成が返されるようになりました。詳しくは、ARCore 対応デバイスをご覧ください。これらの拡張された GPU 解像度は、
getSupportedCameraConfigs(CameraConfigFilter)
API で使用できます。
関連項目:
AR Foundation 向け ARCore Extensions の注目点
このリリースでは、次の重要な変更が加えられています。
AR Foundation の
XRCameraConfiguration
は、目的の条件に基づいて適切なカメラ構成を選択できるメソッドで拡張されています。これらのメソッドには、GetTextureDimensions()、GetFPSRange()、GetDepthSensorUsages() などがあります。詳細な手順をご覧ください。ARCore Extensions の最小推奨バージョンが Unity 2019.3.0f6 になりました。AR Foundation 3.1.0-preview.6 には、Unity バージョン 2019.3 以降が必要です。
Unity のクロスプラットフォーム AR API では、アンカー、クラウド アンカー、クラウド アンカー ID という用語が使用されるようになりました。ARCore Extensions のドキュメントは、この変更を反映して更新されています。
関連項目:
ARCore SDK for Unity の注目点
このリリースでは、次の重要な変更が加えられました。
- ほとんどのデバイスで、デバイスのデフォルトの GPU テクスチャ解像度よりも低い GPU テクスチャ解像度でサポートされている追加のカメラ構成が返されるようになりました。(詳しくは、ARCore 対応デバイスをご覧ください)。これらの拡張 GPU 解像度は、ARCoreCameraConfigFilter API で利用できます。
関連項目:
ARCore SDK for Unity の完全なリリースノート
ARCore v1.15.0 の新機能
AR Foundation 向け ARCore Extensions の注目点
このリリースでは、次の重要な変更が加えられています。
Android と iOS の両方で共有 AR エクスペリエンスを作成する方法を示した CloudAnchors のサンプルを追加しました。Android または iOS の手順をご覧ください。
ARCore Extensions で使用するための推奨最小バージョンが Unity 2019.2.17f1 になりました。
ARCore SDK for Unity の注目点
このリリースには、次の既知の問題があります。
Android 9 と USB 3 ケーブルを使用している場合、インスタント プレビューで Unity がフリーズすることがあります。解決するには、Android 10 にアップデートするか、USB 2 ケーブルを使用してください。
Unity のゲームビューの解像度が高すぎると、デバイスにインスタント プレビューが表示されないことがあります。解決するには、エディタで Unity のゲームビューの解像度を下げます。
ARCore SDK for Unity の完全なリリースノート
その他の変更
その他のバグの修正や破壊的変更については、次のリリースノートをご覧ください。
ARCore v1.14.0 の新機能
このリリースでは、次の重要な変更が加えられています。
アプリがデバイス上の別のアプリにカメラを一時的に失ったとき、トラッキング失敗の理由がより具体的になりました。
Android:
TrackingFailureReason
はNONE
ではなくCAMERA_UNAVAILABLE
です。Android NDK:
ArTrackingFailureReasons
はAR_TRACKING_FAILURE_REASON_NONE
ではなくAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLE
です。Unity:
Session.LostTrackingReason
はNone
ではなくLostTrackingReason.CameraUnavailable
です。
Google は、Google プライバシー ポリシーと Google API 利用規約に基づき、ARCore Extensions パッケージの使用からデータを収集して処理します。この機能はオプトアウトできます。
ARCore v1.13.0 の新機能
このリリースでは、次の重要な変更が加えられています。
Unity の AR Foundation 用 ARCore Extensions を使用して Cloud Anchors を備えた iOS アプリをビルドするためのサポート。
Sceneform での環境 HDR 照明の推定のサポート。
その他のバグの修正や破壊的変更については、次のリリースノートをご覧ください。
ARCore v1.12.0 の新機能
このリリースでは、次の変更が追加されました。
iOS に拡張フェイス機能を追加しました。詳細については、こちらの概要、クイックスタート、デベロッパー ガイドをご覧ください。
Unity の AR Foundation 用 ARCore Extensions を使用して Cloud Anchors を備えた Android アプリを構築するためのサポート。
Cloud Anchors の変更:
- ARCore SDK 1.12 以降の使用に関するプライバシー要件の改定に準拠するには、通知画面に「このセッションでは、Google がカメラからの画像データを処理します」というテキストと、詳細を確認するためのリンクを追加して、Cloud Anchor の使用をアプリで明示的に開示する必要があります。これは、Cloud Anchor のサンプルアプリで利用可能な推奨されるユーザー通知フローを実装することで実現できます。
詳しくは、ユーザーのプライバシーに関する要件をご覧ください。
Cloud Anchor の詳細については、以下をご覧ください。
Android:
Android NDK:
iOS:
Unity:
ARCore Extensions:
ARCore v1.11.0 の新機能
このリリースでは、次の変更が追加されました。
ARCore サービスは Google Play 開発者サービス(AR)に名称が変更されました。Google Play デバイスでは、Google Play 開発者サービスの一部として配布されるようになりました。
ARCore のカメラ設定は、対応デバイスで 60 fps をターゲットに設定し、デバイスに深度センサーがある場合はその使用を優先します。新しいカメラ構成フィルタを使用すると、カメラのキャプチャ フレームレートを 30 fps に制限したり、ARCore がデプス センサーを使用しないようにしたり、両方のオプションに基づいてフィルタしたりできます。
カメラ構成の詳細については、以下をご覧ください。
Android:
Android NDK:
Unity:
ARCore v1.10.0 の新機能
今回のリリースでは、Android、Android NDK、Unity の Lighting Estimation API に新しい Environmental HDR 照明推定機能が追加されました。
これらの API は、機械学習を使用して入力カメラ画像を分析し、環境光を推定します。この照明推定データを使用して、メインの指向性ライト、シャドウ、環境光、鏡面反射ハイライト、仮想オブジェクトの反射など、非常にリアルな照明をレンダリングできます。これにより、よりリアルな仮想コンテンツが実現します。
詳細:
Android:
Android NDK:
Unity:
ARCore v1.9.0 の新機能
ARCore SDK for Android の新機能
今回のリリースでは、次の新しい API と機能を追加しました。
シーン ビューアは、ウェブサイトから AR を体験できる没入型ビューアです。これにより、Android モバイル デバイスのユーザーは、ウェブでホストされている 3D モデルを自分の環境に簡単に配置、表示、操作できます。
拡張画像の新機能:
ARCore で移動する拡張画像が追跡されるようになりました。移動する画像の例としては、走行中のバスの広告や、ユーザーが手に持って動かしている平らな物体上の画像などが挙げられます。
画像が検出されると、ARCore は、画像がカメラのビューから一時的に移動しても、画像の位置と向きを継続的に追跡できます。
AugmentedImage#getTrackingMethod()
(Java)またはArAugmentedImage_getTrackingMethod()
(NDK)を使用して、拡張画像が現在カメラによってトラッキングされているか(FULL_TRACKING
)、最後に検出された位置に基づいてトラッキングされているか(LAST_KNOWN_POSE
)を判断します。
Cloud Anchors のドキュメントに、アンカーのホストと解決方法の詳細な説明が追加されました。
ARCore SDK for Unity の新機能
拡張画像の新機能:
ARCore で移動する拡張画像が追跡されるようになりました。移動する画像の例としては、走行中のバスの広告や、ユーザーが持ち運ぶ平らな物体に表示される画像などがあります。
画像が検出されると、ARCore は、画像がカメラのビューから一時的に移動しても、画像の位置と向きを継続的に追跡できます。
新しい
AugmentedImage.GetTrackingMethod()
API を使用すると、アプリで拡張画像が現在カメラによってトラッキングされているかどうか(FullTracking
)、または直近の位置情報に基づいてトラッキングされているかどうか(LastKnownPose
)を判断できます。
Cloud Anchors のドキュメントに、アンカーのホストと解決方法の詳細な説明が追加されました。
ARCore SDK for iOS の新機能
サポート対象のデバイス:
第 5 世代 iPad mini
第 3 世代 iPad Air
Cloud Anchors のドキュメントに、アンカーのホストと解決方法の詳細な説明が追加されました。