تم إجراء تغييرات على تجربة Depth في أيار (مايو) 2022 (الإصدار 1.31 من حزمة ARCore SDK)

لا تسري التغييرات الموضَّحة في هذا المستند إلا على التطبيقات المجمّعة باستخدام الإصدار 1.31 أو الإصدارات الأحدث من حزمة ARCore SDK. لن تتأثر التطبيقات التي تم تجميعها باستخدام إصدار قديم من ARCore.

كجزء من إصدار 1.31 أيار (مايو) 2022، تمت ترقية الحد الأقصى لنطاق عمق ARCore من 8.191 متر إلى 65.535 متر. تستخدم Depth API الآن جميع 16 بت لكل بكسل لتمثيل العمق، حيث كانت تُستخدم في السابق 13 بت فقط لقيم العمق. على الرغم من أنّ التطبيقات التي تستخدم الطرق التالية في حِزم تطوير البرامج (SDK) القديمة لـ ARCore ستظل تعمل باستخدام نطاق العمق السابق، إلا أنّنا ننصحك بتحديثها في قاعدة الرموز للحصول على وظائف أفضل.

التغييرات الخاصة بالنظام الأساسي

نظام التشغيل Android (Kotlin/Java)

أسماء الطرق السابقة ووظائفها أسماء الطرق ووظائفها الجديدة
أقصى نطاق يبلغ 8.191 متر نطاق أقصى يبلغ 65.535 مترًا
Frame.acquireDepthImage() Frame.acquireDepthImage16Bits()
Frame.acquireRawDepthImage() Frame.acquireRawDepthImage16Bits()
يتم إرجاع مبلغ ImageFormat.DEPTH16 من قِبل "Image.getFormat()". يتم إرجاع مبلغ HardwareBuffer.D_16 من قِبل "Image.getFormat()".

Android NDK (C)

أسماء الطرق السابقة ووظائفها أسماء الطرق ووظائفها الجديدة
أقصى نطاق يبلغ 8.191 متر نطاق أقصى يبلغ 65.535 مترًا
ArFrame_acquireDepthImage() ArFrame_acquireDepthImage16Bits()
ArFrame_acquireRawDepthImage() ArFrame_acquireRawDepthImage16Bits()
يتم إرجاع مبلغ AR_IMAGE_FORMAT_DEPTH16 من قِبل "ArImage_getFormat()". يتم إرجاع مبلغ AR_IMAGE_FORMAT_D_16 من قِبل "ArImage_getFormat()".

Unity (AR Foundation)

تعالج AR Foundation جميع التغييرات. عند إنشاء إضافات ARCore باستخدام الإصدار 1.31 من AR Foundation أو الإصدارات الأحدث، تعرض AROcclusionManager.TryAcquireEnvironmentDepthCpuImage الصور باستخدام النطاق الأقصى الجديد الذي يبلغ 65.535 مترًا.