تغييرات جديدة وملحوظة في ARCore
الميزات الجديدة في الإصدار 1.42.0 من ARCore
المحاذاة إلى البلاطة في أداة إنشاء الخرائط الجيوفضائية من أجل Unity
تمت إضافة زر "محاذاة إلى تجانب" إلى لوحة
أداة فحص المحرّر في ARGeospatialCreatorAnchor
. يضبط هذا الزر قيمة الارتفاع للمحرّر فقط للتضاريس أو السطح في الجزء العلوي من هندسة البلاط الثلاثي الأبعاد في خط العرض وخط الطول الحالي للمرساة. تجدر الإشارة إلى أنّ هذه الخاصية لا تؤثر في
السلوك أثناء وقت التشغيل. يساعد ذلك في ضبط موضع علامة الارتساء في المحرر
ليطابق موضعه وقت التشغيل.
الميزات الجديدة في الإصدار 1.41.0 من ARCore
واجهة برمجة التطبيقات الجغرافية المكانية لصنّاع المحتوى
توفّر الآن أداة إنشاء المحتوى الجغرافي المكاني لـ Unity إمكانية إنشاء كائنات جيوفضائية لصنّاع المحتوى ومعالجتها في وضع "المحرِّر". يمكنك الاطّلاع على شرح للفئات وواجهات برمجة التطبيقات التي أصبحت متوفّرة حديثًا في دليل واجهة برمجة تطبيقات صنّاع المحتوى الجغرافي المكاني.
دعم الإصدار 5.x من AR Foundation (إصدار تجريبي)
تتوافق الآن إضافات ARCore for Unity's AR Foundation مع الإصدارات 5.x. لنقل مشروع حالي إلى AR Foundation، يُرجى الاطّلاع على دليل نقل البيانات.
الميزات الجديدة في الإصدار 1.40.0 من ARCore
دلالات المشاهد على iOS
أصبحت Scene Semantics API متوفّرة الآن في حزمة ARCore SDK لنظام التشغيل iOS وكذلك في "إضافات ARCore" لمؤسسة AR Foundation في Unity التي تستهدف نظام iOS. تتيح واجهة برمجة تطبيقات Scene Semantics API للمطورين فهم المشهد المحيط بالمستخدم في الوقت الفعلي، مع تصنيف وحدات البكسل في 11 فئة من المكوّنات الخارجية. راجع مقدمة إلى دلالات المشهد للحصول على مزيد من المعلومات.
iOS
Unity (AR Foundation)
البحث عن نقاط الاهتمام في لعبة Unity من خلال أداة إنشاء خرائط جغرافية مكانية
يتيح الآن منشئ المحتوى الجغرافي المكاني لـ Unity إمكانية بحث نصي لتحديد موضع عرض مربّعات الصور الفوتوغرافية الثلاثية الأبعاد. راجِع البحث عن نقاط الاهتمام في أداة إنشاء المواقع الجغرافية المكانية للحصول على مزيد من المعلومات.
الميزات الجديدة في الإصدار 1.39.0 من ARCore
لا يتضمّن هذا الإصدار ميزات جديدة.
الميزات الجديدة في الإصدار 1.38.0 من ARCore
لا يتضمّن هذا الإصدار ميزات جديدة.
الميزات الجديدة في الإصدار 1.37.0 من ARCore
دلالات المشاهد
توفر دلالات المشهد تفاصيل أكثر ثراءً حول المشهد المحيط، مما يسهل فهم العالم من حول المستخدم. تشغّل Scene Semantics نموذج تعلُّم الآلة على خلاصة صور الكاميرا وتقدّم صورة دلالية مع كل وحدة بكسل تتوافق مع أحد تصنيفات المفاهيم الخارجية البالغ عددها 11.
للحصول على مزيد من المعلومات، يمكنك الاطّلاع على مقدمة في دلالات المشاهد ونموذج تطبيق semantics_java.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
الاطّلاع على الميزات الجديدة في الإصدار 1.40.0 من ARCore
هندسة صور الشوارع
"التجوّل الافتراضي" هي واجهة برمجة تطبيقات جديدة لـ ARCore Geospatial توفّر هندسة المباني والتضاريس في منطقة حول المستخدم عندما تكون واجهة برمجة التطبيقات Geospatial API مفعَّلة.
Android (Kotlin/Java)
يُرجى الاطّلاع على دليل المطوّر حول الهندسة البرمجية في لعبة "التجوّل الافتراضي" (Kotlin/Java). بالإضافة إلى ذلك، تم تحديث نموذج تطبيق geospatial_java ليشمل Streetscape Geometry.
Android NDK (C)
راجع دليل مطوّر البرامج الهندسية لـ Streetscape Geometry (C) لمزيد من المعلومات.
Unity (AR Foundation)
يُرجى الاطّلاع على دليل المطوّر حول تكنولوجيا Streetscape Geometry (Unity) للحصول على مزيد من المعلومات.
iOS
راجع دليل مطوّر البرامج الهندسية لـ Streetscape Geometry (iOS) لمزيد من المعلومات. بالإضافة إلى ذلك، تم تحديث تطبيق GeospatialExample ليشمل تقنية Streetscape Geometry.
GARStreetscapeGeometry
:- توفّر
GARStreetscapeGeometry.mesh
شبكات ثلاثية الأبعاد. - توفِّر
GARStreetscapeGeometry.meshTransform
تحويل الأصل للشكل الهندسي بالنسبة إلى مساحة عالم الجلسة. - يحافظ
GARStreetscapeGeometry.trackingState
على حالة التتبّع. - تشير العلامة
GARStreetscapeGeometry.type
إلى ما إذا كانت هي تضاريس أو هندسة مبنى. - توفّر
GARStreetscapeGeometry.quality
جودة الأشكال الهندسية. - توفّر
GARStreetscapeGeometry.identifier
المعرّف الفريد للشكل الهندسي. - تنشئ
GARSession.createAnchorOnStreetscapeGeometry:transform:error:
علامة ارتساء في الموقع والاتجاه المحدّدَين. - يُجري
GARSession.raycastStreetscapeGeometry:direction:error:
تسجيل شعاع ضدّ هندسة صور الشارع الذي تم تحميله في المشهد.
مثبّتات الأسطح
"إعلانات الإرساء على السطح" هي نوع جديد من أنواع الإرساء الجغرافية المكانية التي تساعدك في تثبيت المحتوى على السطح.
Android (Kotlin/Java)
راجع علامات الارتساء الجيوفضائية (Java). بالإضافة إلى ذلك، تم تعديل نموذج تطبيق geospatial_java لتضمين علامات ارتساء Rooftop.
Android NDK (C)
راجِع علامات الارتساء الجغرافية المكانية (C) لمزيد من المعلومات.
Unity (AR Foundation)
راجِع علامات الارتساء الجغرافية المكانية للحصول على مزيد من المعلومات. بالإضافة إلى ذلك، تم تحديث العينة الجيوفضائية لتشمل مراسي الأسطح.
- توفّر
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()
علامة ارتساء لعناصر اللعبة في المشهد على خط العرض وخط الطول والارتفاع فوق السطح والاتجاه المحدّد. ResolveAnchorOnRooftopPromise
ResolveAnchorOnRooftopResult
iOS
راجع علامات الارتساء الجغرافية المكانية (iOS) للحصول على مزيد من المعلومات. بالإضافة إلى ذلك، تم تحديث تطبيق GeospatialExample ليشمل علامات ارتساء السطح.
- ينشئ
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:
مراسي السطح في الموقع المحدد، والارتفاع فوق السطح بالأمتار والاتجاه بالنسبة إلى الأرض. - يحمل
GARCreateAnchorOnRooftopFuture
الحالة غير المتزامنة لحل مشكلة إعلان ارتساء السطح. - يصف
GARRooftopAnchorState
حالة حل مشكلة مراسي السطح.
العمق الجيوفضائي
عند تفعيل الوضعَين Depth API و"التجوّل الافتراضي" Geometry في جلسة ARCore في المناطق التي تتوفّر فيها تغطية VPS، يتم تحسين صور العمق التي يتم إنشاؤها باستخدام Streetscape Geometry. تم دمج "هندسة المناظر الطبيعية" في كل صورة بعمق يتم إنشاؤها على نطاق يبلغ 65.535 متر. لا حاجة إلى إجراء أي تغييرات عند طلب البيانات من Depth API للاطّلاع على هذه الميزة.
Android (Kotlin/Java)
راجع العمق الجغرافي المكاني (Java) للحصول على مزيد من المعلومات.
Android NDK (C)
يمكنك الاطّلاع على مقالة العمق الجغرافي المكاني (C) لمزيد من المعلومات.
Unity (AR Foundation)
يمكنك الاطّلاع على مقالة العمق الجغرافي المكاني (C) لمزيد من المعلومات.
iOS
ميزة "علم دلالات المشهد" غير متوفّرة حاليًا لنظام التشغيل iOS.
إتاحة عرض Vulkan
يوفّر ARCore الآن إمكانية عرض Vulkan من خلال عرض صورة الكاميرا من خلال AHardwareBuffer
. يمكنك استخدام المخزن المؤقت للأجهزة هذا عن طريق ربطه بـ VkImage
.
للحصول على مزيد من المعلومات، يمكنك الاطّلاع على عرض تطبيق ARCore باستخدام Vulkan وhello_ar_vulkan_c نموذج التطبيق.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
لا يتوفّر عرض Vulkan حاليًا لوحدة Unity باستخدام AR Foundation.
التثبيت الإلكتروني للصورة (EIS)
يمكنك ضبط تطبيق ARCore لاستخدام ميزة "التثبيت الإلكتروني للصورة" الذي يعمل على تسهيل استخدام إطارات الكاميرا لتوفير تجربة استخدام أكثر سلاسة.
لمزيد من المعلومات، يمكنك الاطّلاع على تفعيل ميزة التثبيت الإلكتروني للصورة وhello_eis_kotlin نموذج التطبيق.
Android (Kotlin/Java)
Config.ImageStabilizationMode
Frame.transformCoordinates3d()
Session.isImageStabilizationModeSupported()
- هناك مشكلة معروفة، حيث سيؤدي طلب الرقم
Frame.transformCoordinates3d()
باستخدام إحداثيات ثنائية الأبعاد غيرOPENGL_NORMALIZED_DEVICE_COORDINATES
إلى حدوث حادث سير بدلاً من إطلاقIllegalArgumentException
. وسيتم حل هذه المشكلة في الإصدار التالي.
Android NDK (C)
ArImageStabilizationMode
ArFrame_transformCoordinates3d()
ArSession_isImageStabilizationModeSupported()
- هناك مشكلة معروفة، حيث سيؤدي طلب
ArFrame_transformCoordinates3d()
باستخدام إحداثيات ثنائية الأبعاد غيرAR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATES
إلى إلغاء تطبيقك بدلاً من عرضAR_ERROR_INVALID_ARGUMENT
. وسيتم حل هذه المشكلة في الإصدار التالي.
Unity (AR Foundation)
أداة EIS غير متاحة حاليًا لفريق Unity باستخدام AR Foundation.
iOS
لا تتوفّر ميزة EIS حاليًا لنظام التشغيل iOS.
واجهات برمجة تطبيقات ARCore غير المتزامنة
يقدّم هذا الإصدار واجهات برمجة تطبيقات جديدة غير متزامنة لخدمة ARCore لتحسين بيئة العمل عند التعامل مع العمليات غير المتزامنة، وذلك وفقًا لنموذج المستقبل ونموذج Promise.
Android (Kotlin/Java)
- التعامل بشكل نهائي مع علامات ارتساء التضاريس: استخدِم
Earth.resolveAnchorOnTerrainAsync()
للحصول على علامةResolveAnchorOnTerrainFuture
. تم إيقاف الرمز القديمEarth.resolveAnchorOnTerrain()
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - حلّ مشكلة مراسي Cloud: استخدِم
Session.resolveCloudAnchorAsync()
للحصول علىResolveCloudAnchorFuture
. تم إيقاف الرمز القديمSession.resolveCloudAnchor()
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - استضافة مراسي Cloud: استخدِم
Session.hostCloudAnchorAsync()
للحصول علىHostCloudAnchorFuture
. تم إيقاف الرمزين القديمينSession.hostCloudAnchor()
وSession.hostCloudAnchorWithTtl()
نهائيًا وقد تتم إزالتهما في إصدار لاحق من ARCore. - التحقّق من مدى توفّر حِزم APK: يمكنك استخدام
ArCoreApk.checkAvailabilityAsync()
لتسجيل معاودة الاتصال. لم يتم إيقاف الرمز القديمArCoreApk.checkAvailability()
.
Android NDK (C)
- التعامل بشكل نهائي مع علامات ارتساء التضاريس: يمكنك استخدام
ArEarth_resolveAnchorOnTerrainAsync()
للحصول على رمزArResolveAnchorOnTerrainFuture
أو استخدامArResolveAnchorOnTerrainCallback
. تم إيقاف الرمز القديمArEarth_resolveAndAcquireNewAnchorOnTerrain()
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - حلّ مشاكل الإعلانات الثابتة في السحابة الإلكترونية: يمكنك استخدام
ArSession_resolveCloudAnchorAsync()
للحصول علىArResolveCloudAnchorFuture
أو استخدامArResolveCloudAnchorCallback
. تم إيقاف الرمز القديمArSession_resolveAndAcquireNewCloudAnchor()
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - استضافة الإعلانات الثابتة في السحابة الإلكترونية: يمكنك استخدام
ArSession_hostCloudAnchorAsync()
للحصول علىArHostCloudAnchorFuture
أو استخدامArHostCloudAnchorCallback
. تم إيقاف الرمزين القديمينArSession_hostAndAcquireNewCloudAnchor()
وArSession_hostAndAcquireNewCloudAnchorWithTtl()
نهائيًا وقد تتم إزالتهما في إصدار لاحق من ARCore. - التحقّق من مدى توفّر حِزم APK: يمكنك استخدام
ArCoreApk_checkAvailabilityAsync()
لتسجيل معاودة الاتصال. لم يتم إيقاف الرمز القديمArCoreApk_checkAvailability()
.
Unity (AR Foundation)
- التعامل بشكل نهائي مع علامات ارتساء التضاريس: استخدِم
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()
للحصول على علامةResolveAnchorOnTerrainPromise
. تم إيقاف الرمز القديمARAnchorManagerExtensions.ResolveAnchorOnTerrain()
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - حلّ مشكلة مراسي Cloud: استخدِم
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()
للحصول علىResolveCloudAnchorPromise
. تم إيقاف الرمز القديمARAnchorManagerExtensions.ResolveCloudAnchorId()
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - استضافة مراسي Cloud: استخدِم
ARAnchorManagerExtensions.HostCloudAnchorAsync()
للحصول علىHostCloudAnchorPromise
. تم إيقاف رموزARAnchorManagerExtensions.HostCloudAnchor()
القديمة نهائيًا وقد تتم إزالتها في إصدار لاحق من ARCore.
iOS
- التعامل بشكل نهائي مع علامات ارتساء التضاريس: استخدِم
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:
للحصول على علامةGARCreateAnchorOnTerrainFuture
. تم إيقاف الرمز القديمGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - حلّ مشكلة مراسي Cloud: استخدِم
GARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:
للحصول علىGARResolveCloudAnchorFuture
. تم إيقاف الرمز القديمGARSession.resolveCloudAnchorWithIdentifier:error:
نهائيًا وقد تتم إزالته في إصدار لاحق من ARCore. - استضافة مراسي Cloud: استخدِم
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:
للحصول علىGARHostCloudAnchorFuture
. تم إيقاف الرمزين القديمينGARSession.hostCloudAnchor:error:
وGARSession.hostCloudAnchor:TTLDays:error:
نهائيًا وقد تتم إزالتهما في إصدار لاحق من ARCore.
الميزات الجديدة في الإصدار 1.36.0 من ARCore
دعم مدير الحزم Swift على iOS
أصبحت الآن حزمة ARCore SDK لنظام التشغيل iOS متوافقة رسميًا مع تطبيق Swift Package Manager. راجِع تفعيل الواقع المعزّز في تطبيق iOS للحصول على تعليمات حول كيفية الدمج مع ARCore باستخدام Swift Package Manager.
الميزات الجديدة في الإصدار 1.35.0 من ARCore
دقة الوضع الجيوفضائي تحل محل العنوان بالانحراف
تعرض جميع الأوضاع الجيوفضائية الآن دقة اتجاهها لدوران الانحراف، وبذلك تحل محل دقة العنوان.
- Java/Kotlin: استبدِل
GeospatialPose.getHeading()
بـGeospatialPose.getEastUpSouthQuaternion()
وGeospatialPose.getHeadingAccuracy()
بـGeospatialPose.getOrientationYawAccuracy()
. - ج: استبدِل
ArGeospatialPose_getHeading()
بـArGeospatialPose_getEastUpSouthQuaternion()
وArGeospatialPose_getHeadingAccuracy()
بـArGeospatialPose_getOrientationYawAccuracy()
. - iOS: استبدِل
GARGeospatialTransform.heading
بـGARGeospatialTransform.eastUpSouthQTarget
وGARGeospatialTransform.headingAccuracy
بـGARGeospatialTransform.orientationYawAccuracy
. - الانسجام: استبدِل
GeospatialPose.Heading
بـGeospatialPose.EunRotation
وGeospatialPose.HeadingAccuracy
بـGeospatialPose.OrientationYawAccuracy
.
تغييرات وتعديلات إضافية
يمكنك الاطّلاع على ملاحظات الإصدار لمعرفة التغييرات الأخرى وإصلاحات الأخطاء وتحسينات الأداء:
- ملاحظات إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات إصدار ARCore لنظام Android NDK
- ملاحظات إصدار ARCore SDK لنظام التشغيل iOS
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.34.0 من ARCore
التحقّق من توفُّر الإمكانات الجيوفضائية في الموقع الجغرافي الحالي للجهاز
يمكن لواجهة برمجة التطبيقات الجيوفضائية الآن التحقق من توفر نظام تحديد المواقع المرئي (VPS) في موضع أفقي محدد في وقت التشغيل. يمكن استخدام واجهة برمجة التطبيقات هذه بدون جلسة الواقع المعزّز نشطة، على سبيل المثال، لعرض زر "دخول الواقع المعزّز" فقط في حال توفُّر VPS.
- Java/Kotlin:
Session.checkVpsAvailabilityAsync()
- ج:
ArSession_checkVpsAvailabilityAsync()
- نظام التشغيل iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
- Unity (AR Foundation):
AREarthManager.CheckVpsAvailability()
الاتجاه الجيوفضائي
تعرض الأوضاع الجيوفضائية الآن اتجاهها في مساحة ثلاثية الأبعاد.
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion()
- ج:
ArEarth_getGeospatialPose()
- نظام التشغيل iOS:
GARGeospatialTransform.eastUpSouthQTarget
- الانسجام:
GeospatialPose.EunRotation()
الإحالات الناجحة لوضعية الموقع الجغرافي
يمكن الآن تحويل الأوضاع الجيوفضائية إلى أوضاع الفضاء العالمي (AR) ومنها.
للحصول على الوضع الجيوفضائي من وضع الواقع المعزّز:
- Java/Kotlin:
Earth.getGeospatialPose()
- ج:
ArEarth_getGeospatialPose()
- نظام التشغيل iOS:
GARSession.geospatialTransformFromTransform:error:
- الانسجام:
AREarthManager.Convert(Pose)
للحصول على وضع الواقع المعزّز من وضع جيوفضائي:
- Java/Kotlin:
Earth.getPose()
- ج:
ArEarth_getPose()
- نظام التشغيل iOS:
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error:
- الانسجام:
AREarthManager.Convert(GeospatialPose)
يكون للأوضاع الجيوفضائية التي تم الحصول عليها من هذه الدوال قيمة عنوان مضبوطة على صفر. بدلاً من ذلك، يمكنك استخدام ما يلي:
- Android (Java/Kotlin/C): الوضع الربعي للاتحاد الأوروبي (EUS)
- iOS: الوضع
eastUpSouthQTarget
- Unity: الوضع
EunRotation
تغييرات وتعديلات إضافية
يمكنك الاطّلاع على ملاحظات الإصدار لمعرفة التغييرات الأخرى وإصلاحات الأخطاء وتحسينات الأداء:
- ملاحظات إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات إصدار ARCore لنظام Android NDK
- ملاحظات إصدار ARCore SDK لنظام التشغيل iOS
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.33.0 من ARCore
نقطة نهاية Cloud Anchors الجديدة
- لاستخدام Cloud Anchors، عليك الآن تفعيل ARCore API بدلاً من واجهة ARCore Cloud Anchor API القديمة التي تم إيقافها نهائيًا. ولإتاحة استخدام الإصدارات القديمة من التطبيق، يمكنك تفعيل كلا الخيارين أثناء الانتقال إلى الإصدار الجديد. تستهدف التطبيقات التي تم إنشاؤها باستخدام الإصدار 1.32.0 من حزمة ARCore SDK والإصدارات الأقدم واجهة برمجة التطبيقات القديمة، في حين تستهدف التطبيقات التي تم إنشاؤها باستخدام ARCore SDK 1.33.0 والإصدارات الأحدث واجهة برمجة التطبيقات الجديدة. يُرجى الانتباه إلى ما يلي:
- تستخدم واجهة برمجة التطبيقات الجديدة اسم النطاق
arcore.googleapis.com
بدلاً منarcorecloudanchor.googleapis.com
. - إذا كنت تستخدم مفتاح واجهة برمجة تطبيقات تحظره واجهة برمجة التطبيقات، عليك السماح بواجهة برمجة التطبيقات ARCore.
- إذا أرسلت طلبات إلى واجهة برمجة التطبيقات ARCore Cloud Anchor Management API من الخلفية، عليك أيضًا تغيير اسم النطاق إلى
arcore.googleapis.com
بعد تفعيل ARCore API. - وستبقى واجهة برمجة التطبيقات/نقطة النهاية القديمة متاحة حتى آب (أغسطس) 2023.
- يُرجى الاطّلاع على تغييرات نقطة نهاية ARCore 1.33 Cloud Anchor لمعرفة المزيد من التفاصيل.
- تستخدم واجهة برمجة التطبيقات الجديدة اسم النطاق
إعلانات ثابتة للتضاريس
- تنشئ واجهة برمجة التطبيقات (API) للإرساء للتضاريس الجغرافية المكانية علامة ارتساء في موضع أفقي وارتفاع محددين نسبةً إلى تضاريس الموضع الأفقي.
تغييرات وتعديلات إضافية
يمكنك الاطّلاع على ملاحظات الإصدار لمعرفة التغييرات الأخرى وإصلاحات الأخطاء وتحسينات الأداء:
- ملاحظات إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات إصدار ARCore لنظام Android NDK
- ملاحظات إصدار ARCore SDK لنظام التشغيل iOS
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.32.0 من ARCore
لا يتضمّن هذا الإصدار ميزات جديدة.
Android وUnity (AR Foundation) لنظام التشغيل Android
- تم تحديث
targetSdkVersion
ARCore إلى المستوى 32 من واجهة برمجة تطبيقات Android. إذا لم يحدِّد تطبيقكtargetSdkVersion
، سيصبحtargetSdkVersion
في تطبيقك 32 بسبب دمج البيان.- حزمة تطوير البرامج (SDK) لنظام التشغيل Android: سيؤدي تحديد
targetSdkVersion
فيbuild.gradle
أوAndroidManifest.xml
لمشروعك إلى إلغاء قيمة ARCoretargetSdkVersion
. - مؤسسة AR Foundation for Android: يؤدي تحديد مستوى واجهة برمجة التطبيقات المستهدَف في إعدادات المشروع > المشغّل > Android > إعدادات أخرى إلى إلغاء قيمة ARCore
targetSdkVersion
.
- حزمة تطوير البرامج (SDK) لنظام التشغيل Android: سيؤدي تحديد
تغييرات وتعديلات إضافية
يمكنك الاطّلاع على ملاحظات الإصدار لمعرفة التغييرات الأخرى وإصلاحات الأخطاء وتحسينات الأداء:
- ملاحظات إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات إصدار ARCore لنظام Android NDK
- ملاحظات إصدار ARCore SDK لنظام التشغيل iOS
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.31.0 من ARCore
واجهة برمجة تطبيقات ARCore Geospatial
تستخدم واجهة برمجة التطبيقات ARCore Geospatial الجديدة البيانات الواردة من التصاميم الثلاثية الأبعاد على Google Earth وبيانات صور "التجوّل الافتراضي" من "خرائط Google" لتمكين تطبيقك من الحصول على تجارب الواقع المعزّز الشاملة على مستوى العالم واستنادًا إلى الموقع الجغرافي.
يمكنك الاطّلاع على مقدمة عن ARCore Geospatial API للحصول على مستندات المطوّرين الخاصة بالنظام الأساسي ولبدء استخدام واجهة برمجة التطبيقات Geospatial الجديدة.
عمق بعيد المدى
تم تحسين واجهة برمجة التطبيقات ARCore Depth API الآن لتضمين استشعار بعمق أطول المدى، ما يزيد من نطاق الملاحظات العميقة التي يمكن تمثيلها بعمق. يتم استخدام صورة العمق جميعها البالغ عددها 16 بت، بحد أقصى نطاق يصل إلى 65535 ملم. في السابق، كانت تتم تعبئة 13 بت فقط، بحد أقصى 8191 ملم.
راجِع التغييرات في العمق للاطّلاع على مستندات المطوّرين الخاصة بالنظام الأساسي وفهم التغييرات التي طرأت على واجهة برمجة التطبيقات Depth API.
ملاحظات خاصة بالنظام الأساسي
Android
واجهات برمجة تطبيقات ARCore الجغرافية المكانية
Java
- توفّر أداة
Earth
إمكانية أقلمة المحتوى في الإحداثيات ذات الصلة بكرة الأرض.- ينشئ
Earth.createAnchor()
Anchor
جديدًا في الموقع والاتجاه المحدّدَين بالنسبة إلى الأرض.
- ينشئ
- يصف القسم
Earth.Earthstate
حالةEarth
الحالية، بما في ذلكTrackingState
. - يصف القسم
GeospatialPose
موقعًا جغرافيًا معيّنًا وارتفاعًا واتجاه بوصلة بالنسبة إلى الأرض.
- توفّر أداة
C
- توفِّر
ArEarth
إمكانية أقلمة المحتوى في الإحداثيات المتعلّقة بالأرض.- ينشئ
ArEarth_acquireNewAnchor()
Anchor
جديدًا في الموقع والاتجاه المحدّدَين بالنسبة إلى الأرض. - يصف القسم
ArEarthState
حالةArEarth
الحالية، بما في ذلكArTrackingState
.
- ينشئ
- يصف القسم
ArGeospatialPose
موقعًا جغرافيًا معيّنًا وارتفاعًا واتجاه بوصلة بالنسبة إلى الأرض.
- توفِّر
واجهات برمجة تطبيقات ARCore Depth المعدّلة
Java
- تم تغيير طلبات البيانات من دالة Depth API:
Frame.acquireDepthImage
لـFrame.acquireDepthImage16Bits
.Frame.acquireRawDepthImage
لـFrame.acquireRawDepthImage16Bits
.- تم تغيير تنسيقات الصور الناتج عن كلتا المكالمتَين من
android.graphics.ImageFormat#DEPTH16
إلىandroid.hardware.HardwareBuffer#D_16
. - لا يزال العمق يمثل عددًا صحيحًا مكونًا من 16 بت بوحدات المليمتر، ولكن يتم الآن استخدام جميع وحدات البت البالغ عددها 16 بت لتمثيل العمق، ما يسمح بالحد الأقصى للنطاق القابل للتعبير عنه من 8191 ملم إلى 65535 ملم.
- تم إيقاف استدعاء الدالة 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 بت لتمثيل العمق، ما يسمح بالحد الأقصى للنطاق القابل للتعبير عنه من 8191 ملم إلى 65535 ملم.
- تم إيقاف استدعاء الدالة Depth API
ArFrame_acquireDepthImage
وArFrame_acquireRawDepthImage
. يُرجى استخدامArFrame_acquireDepthImage16Bits
وArFrame_acquireRawDepthImage16Bits
بدلاً منها.
- تم تغيير طلبات البيانات من دالة Depth API:
Unity (AR Foundation)
واجهات برمجة تطبيقات ARCore الجغرافية المكانية:
- توفِّر
AREarthManager
إمكانية أقلمة المحتوى في الإحداثيات المتعلّقة بالأرض.EarthTrackingState
يعرف حالة تتبع الأرض لأحدث إطار.- يحتفظ
EarthState
بحالات الخطأ في Earth.
- يصف القسم
GeospatialPose
موقعًا جغرافيًا معيّنًا ومسقط رأسي وعنوان بوصلة بالنسبة إلى الأرض. - يوفّر
ARGeospatialAnchor
رابطًا لكائنات اللعبة في المشهد، ويتم تحديدها في موقع واتجاه بالنسبة إلى الأرض.
iOS
واجهات برمجة تطبيقات ARCore الجغرافية المكانية:
GAREarth
توفِّر هذه الصفحة أقلمة محتوى Earth.- تدير
GAREarthState.earthState
حالات الخطأ والشروط. - تحافظ
GAREarthState.trackingState
على حالة التتبّع، وهي مطلوبة للبيانات الجيوفضائية.
- تدير
GARGeospatialTransform
تمثيل للتحول العالمي بما في ذلك الموقع الجغرافي والعنوان والارتفاع وتقديرات الدقة.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:
إنشاء مراسي جيوفضائي في الموقع والاتجاه المحدّدَين بالنسبة إلى الأرض.
التغييرات الأخرى
يمكنك الاطّلاع على ملاحظات الإصدار لمعرفة التغييرات الأخرى وإصلاحات الأخطاء وتحسينات الأداء:
- ملاحظات إصدار حزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات إصدار ARCore لنظام Android NDK
- ملاحظات إصدار ARCore SDK لنظام التشغيل iOS
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.30.0 من ARCore
لا يتضمّن هذا الإصدار ميزات جديدة.
Android
- القيم المعروضة في واجهة برمجة التطبيقات التي تتضمّن تعليقات توضيحية باستخدام
@NonNull
و@Nullable
- حدّثنا إصدارات أداة التصميم المستخدمة في النماذج: Gradle إلى 7.0.2، والمكوّن الإضافي Android Gradle إلى 7.0.4. لا يلزم ترقية هذه الأدوات لتطبيقات ARCore الحالية. للتعرّف على الميزات الجديدة والمشاكل المعروفة ومعلومات عدم التوافق، يمكنك الاطّلاع على مستندات Android حول المكوّن الإضافي لنظام Gradle المتوافق مع Android.
Unity (AR Foundation)
تمت إضافة إصدار جديد من
arcore-unity-extensions-without-edm4u.tgz
. لا يجمع صيغة الإصدار هذه التبعيات الخارجية، مثل External Impency Manager for Unity، ويسمح بالترقية إلى EDM. قد يؤدي استخدام هذا الإصدار البسيط إلى حل حالات عدم التوافق عند استخدام مكتبات Firebase. يُرجى الاطّلاع على تعليمات تثبيت إضافات ARCore for AR Foundation للبدء.تمت ترقية ExternalCredentialManager إلى الإصدار 1.2.168 لإتاحة الإصدار 2021.2 والإصدارات اللاحقة منه، يمكنك الاطّلاع على التفاصيل في سجلّ تغييرات EDM.
تم إصلاح المشكلة التي كانت تؤدي فيها جلسة ARCore إلى ضبط كل إطار، حتى لو لم يكن هناك أي تغيير في إعدادات الجلسة يؤدي إلى انخفاض عدد اللقطات في الثانية.
iOS
- إصلاح أخطاء متنوعة وتحسينات على الأداء
الميزات الجديدة في الإصدار 1.29.0 من ARCore
لا يتضمّن هذا الإصدار ميزات جديدة.
Android
- hello_ar_java وhello_ar_kotlin: تم تغيير لون العنصر عند وضعه باستخدام
SCREENSPACE_WITH_APPROXIMATE_DISTANCE
للتمييز بشكل أفضل بين العناصر التي تم وضعها باستخدام الموضع الفوري. - persistent_cloud_anchor_java: تمت إضافة تبعية إصدار غير موجود إلى النموذج. إصلاح الخطأ الذي تكون فيه استضافة أي علامة ارتساء بالحالة
CloudAnchorState ERROR_NOT_AUTHORIZED
حتى إذا تم إعداد المشروع بشكلٍ صحيح
Unity (AR Foundation)
- تعتمد حزمة إضافات ARCore الآن على المكوّن الإضافي ARKit XR لضمان توافق إصدار AR Foundation المثبَّت مع إصدار المكوّن الإضافي ARKit XR. يؤدي ذلك إلى إصلاح خطأ التجميع عند تثبيت إضافات ARCore على Unity 2019.x وتفعيل المكوّن الإضافي ARKit XR.
- تم نقل إعدادات مشروع إضافات ARCore من إعدادات المشروع > XR > إضافات ARCore إلى إعدادات المشروع > إدارة المكوّنات الإضافية XR > إضافات ARCore.
- تم نقل
ARCoreExtensionsConfig
وARCoreExtensionsCameraConfigFilter
وARCoreRecordingConfig
من إنشاء > XR > إضافات ARCore إلى القائمة إنشاء > XR.
iOS
- إصلاح أخطاء متنوعة وتحسينات على الأداء
إكمال ملاحظات الإصدار
- ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات الإصدار الكاملة لبرنامج ARCore لنظام Android NDK
- ملاحظات الإصدار الكاملة لنظام التشغيل iOS من ARCore
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.28.0 من ARCore
- اعتبارًا من تشرين الثاني (نوفمبر) 2022، لن يعود بإمكان التطبيقات التي تستخدم الواقع المعزّز الحصول على صور NDK أو بيانات وصفية لها. تعتمد إصدارات حزمة تطوير البرامج (SDK) المتأثّرة على الوظيفة المحدّدة التي يتم طلبها. يمكنك الاطّلاع على الإشعار عن الإيقاف النهائي للحصول على مزيد من المعلومات.
- C: في حال الاستدعاء إلى
ArImage_getNdkImage()
وArImage_getNdkCameraMetadata()
، ستعرض دائمًا القيمةnullptr
للكائنAImage
وACameraMetadata
. - Java: سيكون حجم الكائن
Image
الذي يعرضهFrame#acquireCameraImage()
بحجم0
x0
بكسل. سيتم دائمًا عرض الرقمIllegalArgumentException
في المكالمات التي يتم إجراؤها إلىFrame#getImageMetadata()
. - Unity (AR Foundation): عند استخدام AR Foundation 2.1 (Unity 2019 LTS)، ستعرض الطلبات إلى
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
دائمًاfalse
. لن تتأثر الإصدارات 4.x والإصدارات الأحدث من AR Foundation، وسيتم إجراء المكالمات إلىXRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
بشكل طبيعي. - ARCore SDK for Unity (متوقّفة نهائيًا): سيكون حجم الاستدعاءات إلى
Frame.CameraImage.AcquireCameraImageBytes()
بحجم0
×0
بكسل. في حال إجراء مكالمات إلىFrame.CameraMetadata.GetAllCameraMetadataTags()
، سيتم عرض قيمةList<CameraMetadataTag>
فارغة.
- C: في حال الاستدعاء إلى
- Java: تعرض
ArImage#getCropRect()
الآن مستطيل اقتصاص بالحجم الكامل، أي أن جميع وحدات البكسل في الصورة صالحة. يمكنك الانتقال إلىandroid.media.Image#getCropRect()
للحصول على معلومات إضافية.
الميزات الجديدة في الإصدار 1.27.0 من ARCore
لا يتضمّن هذا الإصدار ميزات جديدة. راجع ملاحظات الإصدار التالية للحصول على إصلاحات متنوعة للأخطاء وتحسينات في الأداء
- ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات الإصدار الكاملة لبرنامج ARCore لنظام Android NDK
- ملاحظات الإصدار الكاملة لنظام التشغيل iOS من ARCore
- ملاحظات إصدار إضافات ARCore for AR Foundation
بالإضافة إلى إصلاحات الأخطاء المختلفة، تضمّن هذا الإصدار ما يلي:
نماذج التطبيقات في Kotlin
تمت إضافة hello_ar_kotlin لعرض أفضل الممارسات عند استخدام Kotlin.
راجع QuickStart لنظام التشغيل Android للحصول على مزيد من المعلومات.
تمت إضافة ml_kotlin لتوضيح كيفية استخدام نموذج تصنيف الصور مع ARCore.
لمزيد من المعلومات، اطّلِع على مقالة استخدام ARCore كإدخال لنماذج تعلُّم الآلة.
الميزات الجديدة في الإصدار 1.26.0 من ARCore
يضيف هذا الإصدار التغييرات البارزة التالية:
- تتوفّر معرّفات الموارد المنتظمة (URI) الآن لمجموعات البيانات في التسجيل والتشغيل.
تغييرات وتعديلات إضافية
يمكنك الاطّلاع على ملاحظات الإصدار التالية لمعرفة المزيد من إصلاحات الأخطاء والتغييرات الأخرى التي قد تؤدي إلى تعطُّل.
- ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات الإصدار الكاملة لبرنامج ARCore لنظام Android NDK
- ملاحظات الإصدار الكاملة لنظام التشغيل iOS من ARCore
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.25.0 من ARCore
لا يتضمّن هذا الإصدار ميزات جديدة. راجع ملاحظات الإصدار التالية للحصول على إصلاحات متنوعة للأخطاء وتحسينات في الأداء
- ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات الإصدار الكاملة لبرنامج ARCore لنظام Android NDK
- ملاحظات الإصدار الكاملة لنظام التشغيل iOS من ARCore
- ملاحظات الإصدار الكاملة لحزمة ARCore SDK لـ Unity
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.24.0 من ARCore
يضيف هذا الإصدار التغييرات البارزة التالية:
- Raw Depth API جديدة توفّر صورة معمّقة بدون فلترة مساحة الصور
- إمكانية تسجيل مسارات البيانات المخصّصة في واجهة برمجة التطبيقات "التسجيل والتشغيل"
- القدرة على إجراء اختبارات نتائج العمق
عمق الخام
توفّر واجهة برمجة التطبيقات Raw Depth API بيانات مفصَّلة لصورة الكاميرا تكون دقة أعلى مقارنةً ببيانات واجهة برمجة التطبيقات Depth API الكاملة، ولكنّها لا تغطي دائمًا كل وحدات البكسل. يمكن أيضًا معالجة الصور ذات العمق الأوّلي بالإضافة إلى صور الثقة المُطابِقة لها، ما يسمح للتطبيقات باستخدام البيانات المعمّقة فقط ذات الدقة الكافية لحالة الاستخدام الفردية.
أدلة المطوِّرين:
- Android (Java/Kotlin)
- Android NDK (C)
- إضافات ARCore لمؤسسة AR Foundation
- حزمة تطوير برامج ARCore المتوافقة مع Unity
تسجيل مسار مخصّص
تسمح لك ميزة مسارات البيانات المخصّصة الجديدة في واجهة برمجة التطبيقات للتسجيل والتشغيل بإضافة بيانات مخصّصة إلى إطار ARCore أثناء التسجيل واسترداد البيانات نفسها من الإطار أثناء التشغيل.
أدلة المطوِّرين:
- Android (Java/Kotlin)
- Android NDK (C)
- إضافات ARCore لمؤسسة AR Foundation
- حزمة تطوير برامج ARCore المتوافقة مع Unity
اختبارات النتائج العميقة
في السابق، لم يكن بالإمكان إجراء اختبارات النتائج إلا على الطائرات التي يتم اكتشافها، ما يحصر إمكانية تحديد المواقع على الأسطح المسطحة والكبيرة. تستفيد اختبارات النتائج المعمّقة من معلومات العمق السلِسة والأولية لتوفير نتائج نتائج أكثر دقة، حتى على الأسطح غير المستوية والمنخفضة القوام.
أدلة المطوِّرين:
تغييرات وتعديلات إضافية
يمكنك الاطّلاع على ملاحظات الإصدار التالية لمعرفة المزيد من إصلاحات الأخطاء والتغييرات الأخرى التي قد تؤدي إلى تعطُّل.
- ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android من ARCore
- ملاحظات الإصدار الكاملة لبرنامج ARCore لنظام Android NDK
- ملاحظات الإصدار الكاملة لنظام التشغيل iOS من ARCore
- ملاحظات الإصدار الكاملة لحزمة ARCore SDK لـ Unity
- ملاحظات إصدار إضافات ARCore for AR Foundation
الميزات الجديدة في الإصدار 1.23.0 من ARCore
في انتظار دعم الكاميرا المزدوجة
يتم طرح دعم الكاميرا المزدوجة في الأسابيع المقبلة. راجِع صفحة الأجهزة المتوافقة للحصول على مزيد من المعلومات.
أدوات جديدة لتصحيح الأخطاء
من خلال إرسال غرض بث، يمكن للمطوّرين تفعيل ما يلي:
تسجيل طلبات ARCore API في سجلّ تصحيح أخطاء Android
لوحة أداء ARCore المركّبة
استضافة "ثابت في السحابة الإلكترونية" وحلها
لم تعُد التطبيقات المستندة إلى الواقع المعزّز والتي تم إنشاؤها باستخدام حزمة ARCore SDK 1.11.0 أو الإصدارات الأقدم قادرة على استضافة نقاط ارتساء Cloud أو حلّها.
ج: ستعرض Cloud Anchors التي يعرضها
ArSession_hostAndAcquireNewCloudAnchor
وArSession_resolveAndAcquireNewCloudAnchor
حالةAR_CLOUD_ANCHOR_STATE_ERROR_INTERNAL
دائمًا.Java: ستعرض Cloud Anchors التي يعرضها
Session.hostCloudAnchor(Anchor)
وSession.resolveCloudAnchor(String)
دائمًا حالةAnchor.CloudAnchorState.ERROR_INTERNAL
.Unity: ستعرض Cloud Anchors بواسطة
XPSession.CreateCloudAnchor(Anchor)
وXPSession.ResolveCloudAnchor(string)
دائمًا حالةCloudServiceResponse.ErrorInternal
.
ولن تتأثر التطبيقات التي تم إنشاؤها باستخدام الإصدار 1.12.0 أو إصدار أحدث من حزمة ARCore SDK. ويخضع استخدامه لواجهة برمجة تطبيقات ARCore Cloud Anchor API وفقًا لسياسة الإيقاف النهائي.
تغييرات وتعديلات إضافية
راجع ملاحظات الإصدار التالية للحصول على إصلاحات إضافية للأخطاء والتغييرات الكسرية الأخرى.
الميزات الجديدة في الإصدار 1.22.0 من ARCore
يضيف هذا الإصدار واجهات برمجة تطبيقات جديدة للتسجيل والتشغيل وواجهات برمجة تطبيقات فلاتر إعداد الكاميرا لإضافات ARCore في مجال الواقع المعزّز. يمكنك الاطّلاع على ملاحظات الإصدار الكاملة لإضافات ARCore لمعرفة التفاصيل.
تغييرات وتعديلات إضافية
راجع ملاحظات الإصدار التالية للحصول على إصلاحات إضافية للأخطاء والتغييرات الكسرية الأخرى.
الميزات الجديدة في الإصدار 1.21.0 من ARCore
يضيف هذا الإصدار واجهات برمجة تطبيقات جديدة للتسجيل والتشغيل لأنظمة التشغيل Android وAndroid NDK وUnity.
التسجيل والتشغيل
باستخدام واجهات برمجة تطبيقات التسجيل والتشغيل، يمكنك تسجيل الفيديو وبيانات الواقع المعزّز مرة واحدة داخل بيئة معيّنة واستخدام ذلك المحتوى كبديل لجلسة كاميرا مباشرة لأغراض الاختبار. يحفظ ARCore الجلسات المسجَّلة إلى ملفات MP4 تحتوي على مقاطع فيديو متعددة وبيانات متنوعة أخرى على الجهاز. ويمكنك بعد ذلك توجيه تطبيقك لاستخدام هذه البيانات بدلاً من جلسة كاميرا مباشرة. يتيح لك ذلك إعادة تشغيل المحتوى إلى أجل غير مسمى لتجربة تأثيرات مختلفة للواقع المعزّز بدون الحاجة إلى الرجوع إلى الملعب.
للاطّلاع على مزيد من التفاصيل:
جافا:
C:
Unity:
الميزات الجديدة في الإصدار 1.20.0 من ARCore
يضيف هذا الإصدار التغييرات البارزة التالية:
دعم جديد لإعلانات Cloud Anchors الدائمة.
تم تعديل إمكانات البيانات الوصفية للصور في Android وAndroid NDK.
إرشادات جديدة تتطلّب استخدام الإصدار 5.6.4 من Gradle أو الإصدارات الأحدث، لإتاحة إضافات ARCore لبرنامج AR Foundation أو حزمة ARCore SDK for Unity (الإصدار 1.19 أو إصدار أحدث) مع Unity 2018.4 أو إصدار أحدث
دعم جديد لميزة Cloud Anchors الدائمة
قبل الإصدار 1.20 من ARCore، كان من الممكن التعامل مع Cloud Anchors لمدة تصل إلى 24 ساعة فقط بعد استضافتها لأول مرة. باستخدام Cloud Anchors الدائمة، يمكنك الآن إنشاء Cloud Anchor مع مدة البقاء (TTL) لمدة تتراوح بين يوم واحد و365 يومًا. يمكنك أيضًا تمديد فترة صلاحية الإعلان الثابت بعد استضافته باستخدام Cloud Anchor Management API.
تغطي سياسة إيقاف Cloud Anchors الجديدة استخدام ميزة "ثابت في السحابة الإلكترونية" الدائمة.
ج: دليل المطوِّر و
ArSession_hostAndAcquireNewCloudAnchorWithTtl
وArSession_estimateFeatureMapQualityForHosting
.Java: دليل المطوِّر و
hostCloudAnchorWithTtl
وestimateFeatureMapQualityForHosting
.iOS: دليل المطوِّر و
hostCloudAnchor:TTLDays:error:
وestimateFeatureMapQualityForHosting:
.إضافات ARCore الإضافات for AR Foundation: دليل مطوّري برامج Android ودليل مطوّري برامج iOS و
ARAnchorManager.HostCloudAnchor(ARAnchor, int)
وARAnchorManager.SetAuthToken(string)
وARAnchorManager.EstimateFeatureMapQualityForHosting(Pose)
.Unity تستهدف Android: دليل المطوِّر و
XPSession.CreateCloudAnchor(Anchor, int)
وXPSession.EstimateFeatureMapQualityForHosting(Pose)
.Unity التي تستهدف أجهزة iOS: يمكنك الاطّلاع على دليل المطوّر و
XPSession.SetAuthToken(string)
وXPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int)
.
تغييرات وتعديلات إضافية
راجع ملاحظات الإصدار التالية للحصول على إصلاحات إضافية للأخطاء والتغييرات الكسرية الأخرى.
الميزات الجديدة في الإصدار 1.19.0 من ARCore
يضيف هذا الإصدار التغييرات البارزة التالية:
- واجهة برمجة تطبيقات موضع الإعلان الفوري الجديدة لنظام Android، وAndroid NDK، و Unity.
- إرشادات جديدة لتصميم نظام التشغيل Android 11 باستخدام Unity
موضع الإعلان الفوري
تسمح واجهة برمجة تطبيقات الموضع الفوري للمستخدم بوضع كائن AR على الشاشة دون الحاجة إلى انتظار ARCore لاكتشاف هندسة السطح. ويتم تحسين وضع الأشياء في الوقت الفعلي مع تحرك المستخدم أكثر حول البيئة. عندما يرصد ARCore الوضع الصحيح في المنطقة التي يتم وضع كائن الواقع المعزّز بها، يتم تحديث الكائن الأبيض تلقائيًا ليصبح دقيقًا الوضع، ويصبح غير شفاف.
يعرض المقطع التالي شخصية Android افتراضية على طاولة في العالم الحقيقي. يكون الشكل أبيض وأصغر بكثير عند وضعه لأول مرة. بعد تحسين ARCore لحسابات أبعاد المشهد، يقفز الشكل إلى موضع أكثر دقة. قد يؤدي هذا إلى اختلاف في "حجم" الكائن.
للاطّلاع على مزيد من التفاصيل:
نظام التشغيل Android:
NDK على Android:
Unity:
الميزات الجديدة في الإصدار 1.18.0 من ARCore
يضيف هذا الإصدار التغييرات البارزة التالية:
- واجهة برمجة تطبيقات Depth جديدة لنظام التشغيل Android وAndroid NDK وUnity.
- إرشادات جديدة لإنشاء مواد عرض مزوّدة بميزة "التعرّف على الوجه" واستيرادها إلى "استوديو Android"
- ستتوفَّر واجهة برمجة التطبيقات Depth API في
4.1.0-preview.2
لكل منAR Foundation
وARCore XR Plugin
.
واجهة برمجة تطبيقات العمق
في الأجهزة المتوافقة مع العمق، تستخدم واجهة Depth API كاميرا RGB في الجهاز المتوافق مع ARCore، أو أداة استشعار العمق النشط في حال توفّرها، لإنشاء خرائط العمق. ويمكنك بعد ذلك استخدام العمق لكل بكسل الذي توفره خريطة العمق لجعل الأجسام الافتراضية تظهر بدقة أمام عناصر العالم الحقيقي أو خلفها، ما يتيح تجارب مستخدم غامرة وواقعية.
على سبيل المثال، تعرض الصور التالية شكل Android افتراضيًا في مساحة حقيقية تحتوي على صندوق بجوار الباب. تحجب واجهة برمجة التطبيقات Depth API الشكل خلف حافة الجذع بشكل صحيح.
للاطّلاع على مزيد من التفاصيل:
نظام التشغيل Android:
NDK على Android:
Unity:
الميزات الجديدة في الإصدار 1.17.0 من ARCore
بارزة في ARCore SDK لنظام Android
تمت إضافة طرق جديدة تسمح بالتخزين المؤقت لإطارات كاميرا متعددة. وإلى جانب الأساليب الأخرى مثل العرض المتعدّد السلاسل، يمكن استخدام هذه الطريقة لتقليل معدّل التباين في عدد اللقطات في الثانية.
تمت إضافة استخدام أداة استشعار العمق غير المتوفرة وعدد اللقطات المستهدفة لعدد اللقطات في الثانية:
راجع أيضًا ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android لنظام التشغيل Android.
بارزة في ARCore SDK for Unity
- تمت إضافة دعم للعرض المتعدّد السلاسل في الإصدار 2018.2 من Unity أو الإصدار الأحدث، ما سيؤدي في معظم الحالات إلى تحسين الأداء ويمكن أن يساعد في تقليل التباين في عدد اللقطات في الثانية. وهذا أحد إعدادات مشروع Unity، ويقع في إعدادات المشروع > المشغّل > Android > إعدادات أخرى > العرض المتعدّد السلاسل. راجِع دليل المطوِّر لمزيد من التفاصيل.
- تمت إضافة
SessionStatus.ErrorCameraNotAvailable
وSessionStatus.ErrorIllegalState
للإشارة إلى حالات خطأ جلسة ARCore محددة.
راجِع أيضًا ملاحظات الإصدار الكاملة لحزمة ARCore SDK for Unity.
بارزة في ARCore SDK لنظام التشغيل iOS
انخفض الحجم الثنائي لحزمة تطوير البرامج (SDK) لخدمة Cloud Anchors بشكلٍ كبير.
يمكن الآن استخدام رمز Bitcode للوجوه المعززة.
يمكنك أيضًا الاطّلاع على ملاحظات الإصدار الكاملة لنظام التشغيل iOS باستخدام ARCore SDK.
الميزات الجديدة في الإصدار 1.16.0 من ARCore
بارزة في ARCore SDK لنظام التشغيل Android وSceneform SDK لنظام التشغيل Android
يضيف هذا الإصدار التغييرات البارزة التالية:
- تعرض معظم الأجهزة الآن تكوينات متوافقة إضافية للكاميرا مع درجات دقة أقل لهيئة وحدة معالجة الرسومات مقارنةً بدرجة دقة بنية وحدة معالجة الرسومات التلقائية في الجهاز.
يُرجى الاطّلاع على الأجهزة المتوافقة مع ARCore لمعرفة التفاصيل.
تتوفّر درجات الدقة الموسّعة لوحدة معالجة الرسومات هذه من خلال
getSupportedCameraConfigs(CameraConfigFilter)
API.
انظر أيضًا:
ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android لنظام التشغيل Android
ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) في Scneform لأجهزة Android
بارزة في إضافات ARCore for AR Foundation
يضيف هذا الإصدار التغييرات البارزة التالية:
تم توسيع نطاق
XRCameraConfiguration
الخاص بـ AR Foundation بطرق تتيح لك اختيار إعدادات الكاميرا المناسبة بناءً على المعايير التي تريدها. تشتمل هذه الطرق على GetTextureDimensions()، وGetFPSRange()، وGetDepthSensorUsages(). اقرأ التعليمات التفصيلية.إنّ الإصدار Unity 2019.3.0f6 هو الآن الحدّ الأدنى من الإصدارات المقترَحة لإضافات ARCore. يتطلب AR Foundation 3.1.0-preview.6 الإصدار 2019.3 من Unity أو إصدار أحدث.
تستخدم Unity الآن المصطلحات Anchor وCloud Anchor ومعرّف Cloud Anchor ID في API للواقع المعزّز على الأنظمة الأساسية. تم تعديل مستندات إضافات ARCore لتعكس ذلك.
انظر أيضًا:
بارزة في ARCore SDK for Unity
يضيف هذا الإصدار التغيير البارز التالي:
- تعرض معظم الأجهزة الآن تكوينات متوافقة إضافية للكاميرا مع درجات دقة أقل لهيئة وحدة معالجة الرسومات مقارنةً بدرجة دقة بنية وحدة معالجة الرسومات التلقائية في الجهاز. (يُرجى الاطّلاع على الأجهزة المتوافقة مع ARCore لمعرفة التفاصيل). إنّ درجات الدقة الموسّعة لوحدة معالجة الرسومات هذه متوفّرة من خلال واجهة برمجة التطبيقات ARCoreCameraConfigFilter.
انظر أيضًا:
ملاحظات الإصدار الكاملة لحزمة ARCore SDK لـ Unity
الميزات الجديدة في الإصدار 1.15.0 من ARCore
بارزة في إضافات ARCore for AR Foundation
يضيف هذا الإصدار التغييرات البارزة التالية.
تمت إضافة نموذج CloudAnchors الذي يوضّح كيفية إنشاء تجارب الواقع المعزّز المشتركة لكل من Android وiOS. يُرجى الاطّلاع على التعليمات المتعلّقة بنظام التشغيل Android أو iOS.
إنّ الإصدار Unity 2019.2.17f1 هو الحدّ الأدنى المقترَح الآن لاستخدامه مع إضافات ARCore.
ملاحظات الإصدار الكاملة لإضافات ARCore
بارزة في ARCore SDK for Unity
يتضمّن هذا الإصدار المشاكل المعروفة التالية.
قد تتوقّف المعاينة الفورية عن العمل Unity عند استخدام نظام التشغيل Android 9 وكابل USB 3. لحل هذه المشكلة، يُرجى التحديث إلى نظام التشغيل Android 10 أو استخدام كابل USB 2.
قد يتعذّر عرض المعاينة الفورية على الجهاز عندما تكون درجة دقة مشاهدة اللعبة في Unity عالية جدًا. لحلّ هذه المشكلة، يجب خفض درجة دقة مشاهدة الألعاب في Unity في المحرر.
ملاحظات الإصدار الكاملة لحزمة ARCore SDK لـ Unity
تغييرات إضافية
راجع ملاحظات الإصدار التالية للحصول على إصلاحات إضافية للأخطاء والتغييرات الكسرية الأخرى.
ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android لنظام التشغيل Android
ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) في Scneform لأجهزة Android
الميزات الجديدة في الإصدار 1.14.0 من ARCore
يضيف هذا الإصدار التغييرات البارزة التالية.
عندما يفقد أحد التطبيقات الكاميرا مؤقتًا على تطبيق آخر على الجهاز، يكون سبب تعذُّر التتبُّع الآن أكثر تحديدًا:
نظام Android:
TrackingFailureReason
هوCAMERA_UNAVAILABLE
بدلاً منNONE
.NDK:
ArTrackingFailureReasons
هوAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLE
بدلاً منAR_TRACKING_FAILURE_REASON_NONE
.Unity:
Session.LostTrackingReason
هيLostTrackingReason.CameraUnavailable
بدلاً منNone
.
تجمع Google البيانات وتعالجها من استخدامك لحزمة إضافات ARCore بما يتوافق مع سياسة خصوصية Google وبنود خدمة Google APIs. يمكنك إيقاف هذه الميزة.
الميزات الجديدة في الإصدار 1.13.0 من ARCore
يضيف هذا الإصدار التغييرات البارزة التالية.
دعم استخدام إضافات ARCore لـ AR Foundation في Unity لإنشاء تطبيقات iOS باستخدام Cloud Anchors.
إتاحة تقدير الإضاءة بنطاق عالي الديناميكية في البيئة في تطبيق Sceneform
راجع ملاحظات الإصدار التالية للحصول على إصلاحات إضافية للأخطاء والتغييرات الكسرية الأخرى.
ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) لنظام التشغيل Android لنظام التشغيل Android
ملاحظات الإصدار الكاملة لحزمة تطوير البرامج (SDK) في Scneform لأجهزة Android
الميزات الجديدة في الإصدار 1.12.0 من ARCore
يضيف هذا الإصدار التغييرات التالية:
تمت إضافة ميزة "الوجوه المعززة" إلى نظام التشغيل iOS. لمزيد من المعلومات، يُرجى الاطّلاع على هذه النظرة العامة وquickstart ودليل المطوِّر.
إتاحة استخدام إضافات ARCore لـ AR Foundation في Unity لإنشاء تطبيقات Android باستخدام Cloud Anchors.
التغييرات التالية على Cloud Anchors:
- للالتزام بمتطلبات الخصوصية المحدَّثة لاستخدام حِزم تطوير البرامج (SDK) ARCore SDK الإصدار 1.12 أو الإصدارات الأحدث، عليك الإفصاح بوضوح عن استخدام Cloud Anchors في تطبيقك من خلال تضمين النص التالي بالإضافة إلى رابط للاطّلاع على مزيد من المعلومات على شاشة الإشعار: "لتشغيل هذه الجلسة، ستعالج Google البيانات المرئية من الكاميرا". يمكنك إجراء ذلك من خلال تنفيذ خطوات إشعار المستخدم المقترَحة المتوفرة في نموذج تطبيقات Cloud Anchor.
لمزيد من التفاصيل، يُرجى الرجوع إلى متطلبات خصوصية المستخدم.
لمزيد من التفاصيل عن Cloud Anchors، يُرجى اتّباع الخطوات التالية:
نظام التشغيل Android:
NDK على Android:
نظام التشغيل iOS:
Unity:
إضافات ARCore:
الميزات الجديدة في الإصدار 1.11.0 من ARCore
يضيف هذا الإصدار التغييرات التالية:
تمت إعادة تسمية خدمة ARCore لتصبح "خدمات Google Play للواقع المعزّز". وتم توزيع التطبيق الآن على أجهزة Google Play كجزء من "خدمات Google Play".
تستهدف إعدادات كاميرا ARCore 60 لقطة في الثانية على الأجهزة المتوافقة، وتعطي الأولوية لاستخدام أداة استشعار العمق على الأجهزة التي تحتوي على واحد. يمكنك استخدام فلاتر جديدة لإعدادات الكاميرا لتقييد عدد اللقطات في الثانية لالتقاط الكاميرا بـ 30 لقطة في الثانية، أو منع ARCore من استخدام أداة استشعار العمق، أو تطبيق الفلتر بناءً على كلا الخيارين.
لمزيد من التفاصيل حول إعدادات الكاميرا:
نظام التشغيل Android:
NDK على Android:
Unity:
الميزات الجديدة في الإصدار 1.10.0 من ARCore
يضيف هذا الإصدار إمكانات جديدة لتقدير الإضاءة Environmental HDR إلى واجهة Lighting Estimation API لنظام التشغيل Android وAndroid NDK وUnity.
تستخدم واجهات برمجة التطبيقات هذه تقنيات تعلُّم الآلة لتحليل صورة الكاميرا المدخلة وتقدير الإضاءة البيئية. يمكنك استخدام بيانات تقدير الإضاءة هذه لعرض إضاءة واقعية للغاية، بما في ذلك الإضاءة ذات الاتجاه الأساسي والظلال والإضاءة المحيطة والتظليل الخفيف والانعكاسات على أجسام افتراضية. والنتيجة هي محتوى افتراضي يبدو أكثر واقعية.
للاطّلاع على مزيد من التفاصيل:
نظام التشغيل Android:
NDK على Android:
Unity:
الميزات الجديدة في الإصدار 1.9.0 من ARCore
الميزات الجديدة في ARCore SDK لأجهزة Android
يضيف هذا الإصدار واجهات برمجة التطبيقات والميزات الجديدة التالية:
Scene Viewer هو عارض غامر يتيح تجارب الواقع المعزّز من موقعك الإلكتروني. وهو يتيح لمستخدمي أجهزة Android الجوّالة وضع النماذج الثلاثية الأبعاد المستضافة على الويب وعرضها والتفاعل معها في بيئتهم بسهولة.
الميزات الجديدة لميزة "الصور المعزَّزة":
يتتبّع تطبيق ARCore الآن نقل الصور المعزّزة. ومن الأمثلة على الصور المتحركة إعلان في حافلة عابرة أو صورة على شيء مسطّح يمسكه المستخدم أثناء تحريك يده.
بعد اكتشاف الصورة، يتمكن تطبيق ARCore من مواصلة تعقب موضع الصورة واتجاهها، حتى إذا تم نقل الصورة مؤقتًا خارج إطار عرض الكاميرا.
استخدِم
AugmentedImage#getTrackingMethod()
(Java) أوArAugmentedImage_getTrackingMethod()
(NDK) لتحديد ما إذا كانت الصورة المحسّنة يتم تتبّعها حاليًا بواسطة الكاميرا (FULL_TRACKING
)، أو يتم تتبُّعها استنادًا إلى آخر موضع معروف لها (LAST_KNOWN_POSE
).
تتضمّن مستندات Cloud Anchors الآن شرحًا أكثر تفصيلاً حول كيفية استضافة علامات الارتساء وحلها.
الميزات الجديدة في حزمة ARCore SDK لـ Unity
الميزات الجديدة لميزة "الصور المعزَّزة":
يتتبّع تطبيق ARCore الآن نقل الصور المعزّزة. ومن الأمثلة على الصور المتحركة إعلان في حافلة عابرة أو صورة على شيء مسطّح يحمله المستخدم أثناء تحركه.
بعد اكتشاف الصورة، يتمكن تطبيق ARCore من مواصلة تعقب موضع الصورة واتجاهها، حتى إذا تم نقل الصورة مؤقتًا خارج إطار عرض الكاميرا.
تتيح واجهة برمجة التطبيقات
AugmentedImage.GetTrackingMethod()
الجديدة لتطبيقك تحديد ما إذا كانت الصورة المعزَّزة يتم تتبُّعها حاليًا بواسطة الكاميرا (FullTracking
)، أو يتم تتبُّعها استنادًا إلى آخر موضع معروف لها (LastKnownPose
).
تتضمّن مستندات Cloud Anchors الآن شرحًا أكثر تفصيلاً حول كيفية استضافة علامات الارتساء وحلها.
الميزات الجديدة في ARCore SDK لنظام التشغيل iOS
دعم هذه الأجهزة:
الجيل الخامس من iPad Mini
الجيل الثالث من iPad Air
تتضمّن مستندات Cloud Anchors الآن شرحًا أكثر تفصيلاً حول كيفية استضافة علامات الارتساء وحلها.