พฤษภาคม 2022 (ARCore SDK เวอร์ชัน 1.31) จะเปลี่ยนเป็นความลึก

การเปลี่ยนแปลงที่ระบุไว้ในเอกสารนี้มีผลกับแอปที่คอมไพล์ด้วย ARCore SDK เวอร์ชัน 1.31 ขึ้นไปเท่านั้น แอปที่คอมไพล์ด้วย ARCore เวอร์ชันเก่าจะไม่ได้รับผลกระทบ

ในการเปิดตัวเวอร์ชัน 1.31 ในเดือนพฤษภาคม 2022 เราได้อัปเกรดช่วงสูงสุดของความลึกของ ARCore จาก 8.191 เมตรเป็น 65.535 เมตร ตอนนี้ Depth API ใช้ทั้งหมด 16 บิตต่อพิกเซลเพื่อแสดงความลึก ซึ่งก่อนหน้านี้ใช้เพียง 13 บิตสำหรับค่าความลึก แม้ว่าแอปที่ใช้วิธีการต่อไปนี้ใน ARCore SDK เวอร์ชันเก่าจะยังคงทำงานได้โดยใช้ช่วงความลึกก่อนหน้า แต่เราขอแนะนำให้อัปเดตวิธีการดังกล่าวในโค้ดเบสเพื่อการทำงานที่ดีขึ้น

การเปลี่ยนแปลงเฉพาะแพลตฟอร์ม

Android (Kotlin/Java)

ชื่อเมธอดและฟังก์ชันการทำงานก่อนหน้า ชื่อเมธอดและฟังก์ชันการทำงานใหม่
ระยะสูงสุด 8,191 เมตร ระยะสูงสุด 65,535 เมตร
Frame.acquireDepthImage() Frame.acquireDepthImage16Bits()
Frame.acquireRawDepthImage() Frame.acquireRawDepthImage16Bits()
Image.getFormat() การคืนสินค้า ImageFormat.DEPTH16 Image.getFormat() การคืนสินค้า HardwareBuffer.D_16

Android NDK (C)

ชื่อเมธอดและฟังก์ชันการทำงานก่อนหน้า ชื่อเมธอดและฟังก์ชันการทำงานใหม่
ระยะสูงสุด 8,191 เมตร ระยะสูงสุด 65,535 เมตร
ArFrame_acquireDepthImage() ArFrame_acquireDepthImage16Bits()
ArFrame_acquireRawDepthImage() ArFrame_acquireRawDepthImage16Bits()
ArImage_getFormat() การคืนสินค้า AR_IMAGE_FORMAT_DEPTH16 ArImage_getFormat() การคืนสินค้า AR_IMAGE_FORMAT_D_16

Unity (AR Foundation)

AR Foundation จะจัดการการเปลี่ยนแปลงทั้งหมด เมื่อสร้างด้วย ARCore Extensions สำหรับ AR Foundation เวอร์ชัน 1.31 ขึ้นไป AROcclusionManager.TryAcquireEnvironmentDepthCpuImage จะแสดงรูปภาพโดยใช้ช่วงสูงสุดใหม่ที่ 65, 535 เมตร