การเปลี่ยนแปลงใหม่ๆ และที่น่าสนใจใน ARCore
มีอะไรใหม่ใน ARCore v1.51.0
การเปลี่ยนแปลงอื่นๆ
อัปเดต
minSdkVersionของตัวอย่าง Java "SharedCamera" และ "RawDepth" เป็น 23อัปเดตตัวอย่าง hello_ar_vulkan_c ให้เป็นแอปพลิเคชันที่ทำงานได้อย่างเต็มรูปแบบ ซึ่งแสดงการใช้งาน Vulkan อย่างสมบูรณ์ของฟีเจอร์หลักของ ARCore รวมถึงฟีเจอร์ที่แสดงใน hello_ar_c และการปิดทับระนาบ
มีอะไรใหม่ใน ARCore v1.50.0
การเปลี่ยนแปลง targetSdkVersion ของ ARCore SDK
targetSdkVersion ของ ARCore ได้รับการอัปเดตเป็น Android API ระดับ 36 แล้ว หากแอปไม่ได้ระบุ
targetSdkVersion
targetSdkVersionของแอปจะกลายเป็น 36 เนื่องจากการผสานไฟล์ Manifest
สำหรับ Unity การระบุระดับ API เป้าหมายในการตั้งค่าโปรเจ็กต์ > Player > Android > การตั้งค่าอื่นๆ ของโปรเจ็กต์ Unity จะลบล้างค่า targetSdkVersion ของ ARCore
มีอะไรใหม่ใน ARCore v1.49.0
แก้ไขข้อบกพร่องและปรับปรุงประสิทธิภาพหลายรายการ
มีอะไรใหม่ใน ARCore v1.48.0
การรองรับ Unity 6 และ AR Foundation 6 ได้เปิดตัวอย่างเต็มรูปแบบแล้ว
ตอนนี้ ARCore Extensions สำหรับ AR Foundation ของ Unity รองรับ AR Foundation 6 แล้ว ใช้วิธีการติดตั้งต่อไปนี้เพื่อรับ ARCore Extensions สำหรับ 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 เวอร์ชันเบต้า
ตอนนี้ ARCore Extensions สำหรับ AR Foundation ของ Unity รองรับ AR Foundation 6 ในเวอร์ชันเบต้าแล้ว เพื่อรองรับ Unity 6 ใช้วิธีการติดตั้งต่อไปนี้เพื่อรับ ARCore Extensions สำหรับ 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 โปรดดูคำแนะนำต่อไปนี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ระนาบของตัวอย่าง Cloud Anchor ไม่โปร่งใสสำหรับ Unity 6
การเปลี่ยนแปลงอื่นๆ
- เราได้เปลี่ยน
mainBranch ของที่เก็บ GitHub ของ ARCore Extensions เพื่อติดตามarf5Branch
มีอะไรใหม่ใน ARCore v1.46.0
การเปลี่ยนแปลง targetSdkVersion ของ ARCore SDK
targetSdkVersion ของ ARCore ได้รับการอัปเดตเป็น Android API ระดับ 35 แล้ว หากแอปไม่ได้ระบุtargetSdkVersion
targetSdkVersionของแอปจะกลายเป็น 35 เนื่องจากการผสานไฟล์ Manifest
สำหรับ Unity การระบุระดับ API เป้าหมายในการตั้งค่าโปรเจ็กต์ > Player > Android > การตั้งค่าอื่นๆ ของโปรเจ็กต์ Unity จะลบล้างค่า targetSdkVersion ของ ARCore
มีอะไรใหม่ใน ARCore v1.45.0
Flash Mode API
ตอนนี้ ARCore รองรับการเปิดใช้โหมดไฟฉายของอุปกรณ์แล้ว ซึ่งช่วยให้ รับรู้ได้ดีขึ้นในสภาพแวดล้อมที่มืด
Android (Kotlin/Java)
Config.FlashMode: ตัวเลือกการกำหนดค่าสำหรับการเปิดหรือปิดใช้แฟลชในอุปกรณ์- ดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีตรวจหาความสามารถของแฟลชและวิธีเปิดใช้โหมดไฟฉายได้ที่คู่มือนักพัฒนาซอฟต์แวร์
Android NDK (C)
ArFlashMode: ตัวเลือกการกำหนดค่าสำหรับการเปิดหรือปิดใช้แฟลชในอุปกรณ์- ดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีตรวจหาความสามารถของแฟลชและวิธีเปิดใช้โหมดไฟฉายได้ที่คู่มือนักพัฒนาซอฟต์แวร์
ส่วนขยาย ARCore สำหรับ AR Foundation ของ Unity รองรับ AR Foundation 5
ตอนนี้ ARCore Extensions สำหรับ AR Foundation รองรับ AR Foundation 5 อย่างเป็นทางการแล้ว เมื่อใช้ AR Foundation 5 (เวอร์ชันที่ได้รับการยืนยันใน Unity เวอร์ชัน 2022 และ 2023) ให้ใช้วิธีการติดตั้งต่อไปนี้เพื่อรับ ARCore Extensions สำหรับ AR Foundation เวอร์ชันที่เข้ากันได้
- ผ่าน
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
Places API ในการย้ายข้อมูล Geospatial Creator
ฟีเจอร์ค้นหาของ Geospatial Creator ใช้ Places API ใหม่ของ Google แล้ว หากต้องการใช้ฟีเจอร์ค้นหา ให้เปิดใช้ "Places API (ใหม่)" ใน Google Cloud Console
มีอะไรใหม่ใน ARCore v1.42.0
สแนปกับไทล์ใน Geospatial Creator สำหรับ Unity
เพิ่มปุ่ม "สแนปกับไทล์" ลงในARGeospatialCreatorAnchor
แผงเครื่องมือตรวจสอบเอดิเตอร์แล้ว ปุ่มนี้จะตั้งค่าความสูงของสมอภูมิประเทศหรือสมอหลังคา
เฉพาะในเครื่องมือแก้ไขเป็นด้านบนของรูปเรขาคณิตของไทล์ 3 มิติที่ละติจูดและลองจิจูดปัจจุบันของสมอ
โปรดทราบว่าพร็อพเพอร์ตี้นี้ไม่มีผลต่อลักษณะการทำงานขณะรันไทม์ ซึ่งจะช่วยปรับตำแหน่งของจุดยึดในเครื่องมือแก้ไขให้
ตรงกับตำแหน่งที่รันไทม์
มีอะไรใหม่ใน ARCore v1.41.0
Geospatial Creator API
ตอนนี้ Geospatial Creator สำหรับ Unity รองรับการสร้างและจัดการออบเจ็กต์ Geospatial Creator ในโหมดเอดิเตอร์แล้ว คลาสและ API ที่พร้อมใช้งานใหม่จะอธิบายไว้ในคู่มือ Geospatial Creator API
รองรับ AR Foundation เวอร์ชัน 5.x (เบต้า)
ตอนนี้ ARCore Extensions สำหรับ AR Foundation ของ Unity รองรับ AR Foundation เวอร์ชัน 5.x แล้ว หากต้องการย้ายข้อมูลโปรเจ็กต์ที่มีอยู่ไปยัง AR Foundation โปรดดูคำแนะนำในการย้ายข้อมูล
มีอะไรใหม่ใน ARCore v1.40.0
ความหมายของฉากใน iOS
ตอนนี้ Scene Semantics API พร้อมใช้งานใน ARCore SDK สำหรับ iOS รวมถึงใน ARCore Extensions สำหรับ AR Foundation ของ Unity ที่กำหนดเป้าหมายไปยังแพลตฟอร์ม iOS แล้ว Scene Semantics API ช่วยให้นักพัฒนาแอป เข้าใจฉากรอบตัวผู้ใช้แบบเรียลไทม์ โดยติดป้ายกำกับพิกเซลเป็นองค์ประกอบภายนอก 11 คลาส ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลเบื้องต้นเกี่ยวกับความหมายของฉาก
iOS
Unity (AR Foundation)
ค้นหาสถานที่น่าสนใจใน Geospatial Creator สำหรับ Unity
ตอนนี้ Geospatial Creator สำหรับ Unity รองรับการค้นหาแบบข้อความเพื่อจัดตำแหน่งมุมมอง ไทล์ 3 มิติเชิงภาพแล้ว ดูข้อมูลเพิ่มเติมได้ที่ ค้นหาจุดที่น่าสนใจใน Geospatial Creator
มีอะไรใหม่ใน ARCore v1.39.0
รุ่นนี้ไม่มีฟีเจอร์ใหม่
มีอะไรใหม่ใน ARCore v1.38.0
รุ่นนี้ไม่มีฟีเจอร์ใหม่
มีอะไรใหม่ใน ARCore v1.37.0
ความหมายของฉาก
ความหมายของฉากให้รายละเอียดที่สมบูรณ์ยิ่งขึ้นเกี่ยวกับฉากโดยรอบ ทำให้เข้าใจโลกที่อยู่รอบตัวผู้ใช้ได้ง่ายขึ้น ความหมายของฉากจะเรียกใช้โมเดล ML ในฟีดรูปภาพของกล้องและแสดงรูปภาพเชิงความหมายโดยแต่ละพิกเซลจะสอดคล้องกับป้ายกำกับ 1 ใน 11 รายการของแนวคิดกลางแจ้ง
ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลเบื้องต้นเกี่ยวกับความหมายของฉากและแอปตัวอย่าง semantics_java
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
เรขาคณิตของภาพถนน
รูปทรงเรขาคณิตของภาพถนนเป็น ARCore Geospatial API ใหม่ที่ให้รูปทรงเรขาคณิตของอาคารและภูมิประเทศในพื้นที่รอบๆ ผู้ใช้เมื่อเปิดใช้ Geospatial API
Android (Kotlin/Java)
ดูคู่มือนักพัฒนาซอฟต์แวร์เกี่ยวกับรูปทรงของสตรีทสเคป (Kotlin/Java) นอกจากนี้ เรายังได้อัปเดตแอปตัวอย่าง geospatial_java ให้มีรูปทรงเรขาคณิตของภาพถนนด้วย
Android NDK (C)
ดูข้อมูลเพิ่มเติมได้ที่คู่มือนักพัฒนาซอฟต์แวร์เกี่ยวกับรูปทรงเรขาคณิตของสตรีทสเคป (C)
Unity (AR Foundation)
ดูข้อมูลเพิ่มเติมได้ที่คู่มือนักพัฒนาซอฟต์แวร์เกี่ยวกับรูปทรงเรขาคณิตของ Streetscape (Unity)
iOS
ดูข้อมูลเพิ่มเติมได้ที่คู่มือนักพัฒนาซอฟต์แวร์เกี่ยวกับรูปทรงเรขาคณิตของ Streetscape (iOS) นอกจากนี้ เรายังได้อัปเดตแอป GeospatialExample ให้มีเรขาคณิตของภาพถนนด้วย
GARStreetscapeGeometry:GARStreetscapeGeometry.meshมีตาข่าย 3 มิติGARStreetscapeGeometry.meshTransformให้การแปลงต้นทางของรูปทรงเรขาคณิตที่สัมพันธ์กับพื้นที่โลกของเซสชันGARStreetscapeGeometry.trackingStateจะรักษาสถานะการติดตามGARStreetscapeGeometry.typeระบุว่าเป็นเรขาคณิตของภูมิประเทศหรืออาคารGARStreetscapeGeometry.qualityระบุคุณภาพของเรขาคณิตGARStreetscapeGeometry.identifierระบุตัวระบุที่ไม่ซ้ำกันสำหรับเรขาคณิตGARSession.createAnchorOnStreetscapeGeometry:transform:error:สร้างจุดยึดที่ตำแหน่งและทิศทางที่ระบุGARSession.raycastStreetscapeGeometry:direction:error:จะทำการแคสต์รังสีกับเรขาคณิตของสตรีทสเคปที่โหลดในฉาก
จุดยึดบนหลังคา
Anchor บนชั้นดาดฟ้าเป็นประเภท Geospatial Anchor ใหม่ที่จะช่วยคุณยึดเนื้อหาไว้กับชั้นดาดฟ้า
Android (Kotlin/Java)
ดูAnchor ภูมิสารสนเทศ (Java) นอกจากนี้ เรายังได้อัปเดตแอปตัวอย่าง geospatial_java ให้มีแองเคอร์บนหลังคาด้วย
Android NDK (C)
ดูข้อมูลเพิ่มเติมได้ที่สมอเชิงพื้นที่ (ค)
Unity (AR Foundation)
ดูข้อมูลเพิ่มเติมได้ที่Anchor เชิงพื้นที่ นอกจากนี้ เรายังได้อัปเดตตัวอย่างเชิงพื้นที่ให้มี Anchor บนหลังคาด้วย
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()เป็นจุดยึดสำหรับออบเจ็กต์เกมในฉากที่ละติจูด ลองจิจูด ความสูงเหนือดาดฟ้า และการวางแนวที่ระบุResolveAnchorOnRooftopPromiseResolveAnchorOnRooftopResult
iOS
ดูข้อมูลเพิ่มเติมได้ที่การยึดเหนี่ยวเชิงพื้นที่ (iOS) นอกจากนี้ เรายังได้อัปเดตแอป GeospatialExample ให้มีสมอเรือบนชั้นดาดฟ้าด้วย
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:สร้างจุดยึดบนดาดฟ้าที่ตำแหน่งที่ระบุ ระดับความสูงเหนือดาดฟ้าเป็นเมตร และการวางแนวเทียบกับโลกGARCreateAnchorOnRooftopFutureจะเก็บสถานะแบบอะซิงโครนัสของการแก้ไข Anchor บนหลังคาGARRooftopAnchorStateอธิบายสถานะของการแก้ไข Anchor บนหลังคา
ความลึกของภูมิสารสนเทศ
เมื่อเปิดใช้ทั้งโหมด Depth API และโหมดเรขาคณิตของภาพถนนในเซสชัน ARCore ในพื้นที่ที่มีความครอบคลุมของ VPS ระบบจะปรับปรุงรูปภาพเชิงลึกที่สร้างขึ้นโดยใช้เรขาคณิตของภาพถนน เราผสานรวมเรขาคณิตของภาพถนนเข้ากับภาพเชิงลึกแต่ละภาพที่สร้างขึ้นในระยะ 65,535 เมตร คุณไม่จำเป็นต้องทำการเปลี่ยนแปลงใดๆ เมื่อเรียกใช้ Depth API เพื่อดูสิทธิประโยชน์นี้
Android (Kotlin/Java)
ดูข้อมูลเพิ่มเติมได้ที่ความลึกเชิงพื้นที่ (Java)
Android NDK (C)
ดูข้อมูลเพิ่มเติมได้ที่ความลึกเชิงพื้นที่ (C)
Unity (AR Foundation)
ดูข้อมูลเพิ่มเติมได้ที่ความลึกเชิงพื้นที่ (C)
iOS
ขณะนี้ความหมายของฉากยังไม่พร้อมใช้งานสำหรับ iOS
รองรับการแสดงผล Vulkan
ตอนนี้ ARCore รองรับการแสดงผล Vulkan โดยการแสดงรูปภาพจากกล้องผ่าน AHardwareBuffer คุณใช้ Hardware Buffer นี้ได้โดยการเชื่อมโยงกับ 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.ImageStabilizationModeFrame.transformCoordinates3d()Session.isImageStabilizationModeSupported()- มีปัญหาที่ทราบแล้วซึ่งการเรียก
Frame.transformCoordinates3d()ด้วยพิกัด 2 มิติอื่นที่ไม่ใช่OPENGL_NORMALIZED_DEVICE_COORDINATESจะทำให้เกิดข้อขัดข้องแทนที่จะส่งIllegalArgumentExceptionปัญหานี้จะได้รับการแก้ไขในการเปิดตัวรุ่นถัดไป
Android NDK (C)
ArImageStabilizationModeArFrame_transformCoordinates3d()ArSession_isImageStabilizationModeSupported()- มีปัญหาที่ทราบแล้วซึ่งการเรียก
ArFrame_transformCoordinates3d()ด้วยพิกัด 2 มิติอื่นที่ไม่ใช่AR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATESจะทําให้แอปหยุดทํางานแทนที่จะส่งคืนAR_ERROR_INVALID_ARGUMENTปัญหานี้จะได้รับการแก้ไขในการเปิดตัวรุ่นถัดไป
Unity (AR Foundation)
ขณะนี้ EIS ยังไม่พร้อมใช้งานสำหรับ Unity ที่ใช้ AR Foundation
iOS
ขณะนี้ EIS ยังไม่พร้อมใช้งานสำหรับ iOS
API แบบไม่พร้อมกันของ ARCore
รุ่นนี้เปิดตัว ARCore Async API ใหม่เพื่อปรับปรุงการยศาสตร์เมื่อทำงานกับการดำเนินการแบบไม่พร้อมกันตามกระบวนทัศน์ Future และ Promise
Android (Kotlin/Java)
- การแก้ไขสมอตรึงภูมิประเทศ: ใช้
Earth.resolveAnchorOnTerrainAsync()เพื่อรับResolveAnchorOnTerrainFutureสัญลักษณ์เดิมEarth.resolveAnchorOnTerrain()เลิกใช้งานแล้วและอาจถูกนำออกใน ARCore เวอร์ชันถัดไป - การแก้ไข Cloud Anchor: ใช้
Session.resolveCloudAnchorAsync()เพื่อรับResolveCloudAnchorFutureสัญลักษณ์เดิมSession.resolveCloudAnchor()เลิกใช้งานแล้วและอาจถูกนำออกใน ARCore เวอร์ชันถัดไป - การโฮสต์ Cloud Anchor: ใช้
Session.hostCloudAnchorAsync()เพื่อรับHostCloudAnchorFutureเราเลิกใช้งานสัญลักษณ์เก่าSession.hostCloudAnchor()และSession.hostCloudAnchorWithTtl()แล้ว และอาจนำออกใน ARCore เวอร์ชันต่อๆ ไป - ตรวจสอบความพร้อมใช้งานของ APK: ใช้
ArCoreApk.checkAvailabilityAsync()เพื่อลงทะเบียนการเรียกกลับ เราไม่ได้เลิกใช้งานสัญลักษณ์เก่าArCoreApk.checkAvailability()
Android NDK (C)
- การแก้ไขสมอ Terrain: ใช้
ArEarth_resolveAnchorOnTerrainAsync()เพื่อรับArResolveAnchorOnTerrainFutureหรือใช้ArResolveAnchorOnTerrainCallbackสัญลักษณ์เดิมArEarth_resolveAndAcquireNewAnchorOnTerrain()เลิกใช้งานแล้วและอาจถูกนำออกใน ARCore เวอร์ชันถัดไป - การแก้ไข Cloud Anchor: ใช้
ArSession_resolveCloudAnchorAsync()เพื่อรับArResolveCloudAnchorFutureหรือใช้ArResolveCloudAnchorCallbackสัญลักษณ์เดิมArSession_resolveAndAcquireNewCloudAnchor()เลิกใช้งานแล้วและอาจถูกนำออกใน ARCore เวอร์ชันถัดไป - การโฮสต์ Cloud Anchor: ใช้
ArSession_hostCloudAnchorAsync()เพื่อรับArHostCloudAnchorFutureหรือใช้ArHostCloudAnchorCallbackเราเลิกใช้งานสัญลักษณ์เก่าArSession_hostAndAcquireNewCloudAnchor()และArSession_hostAndAcquireNewCloudAnchorWithTtl()แล้ว และอาจนำออกใน ARCore เวอร์ชันต่อๆ ไป - ตรวจสอบความพร้อมใช้งานของ APK: ใช้
ArCoreApk_checkAvailabilityAsync()เพื่อลงทะเบียนการเรียกกลับ เราไม่ได้เลิกใช้งานสัญลักษณ์เก่าArCoreApk_checkAvailability()
Unity (AR Foundation)
- การแก้ไขสมอตรึงภูมิประเทศ: ใช้
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()เพื่อรับResolveAnchorOnTerrainPromiseสัญลักษณ์เดิมARAnchorManagerExtensions.ResolveAnchorOnTerrain()เลิกใช้งานแล้วและอาจถูกนำออกใน ARCore เวอร์ชันถัดไป - การแก้ไข Cloud Anchor: ใช้
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()เพื่อรับResolveCloudAnchorPromiseสัญลักษณ์เดิมARAnchorManagerExtensions.ResolveCloudAnchorId()เลิกใช้งานแล้วและอาจถูกนำออกใน ARCore เวอร์ชันถัดไป - การโฮสต์ Cloud Anchor: ใช้
ARAnchorManagerExtensions.HostCloudAnchorAsync()เพื่อรับHostCloudAnchorPromiseเราเลิกใช้งานสัญลักษณ์ARAnchorManagerExtensions.HostCloudAnchor()แบบเดิมแล้ว และอาจนำออกใน ARCore เวอร์ชันต่อๆ ไป
iOS
- การแก้ไขสมอตรึงภูมิประเทศ: ใช้
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 Anchor: ใช้
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:เพื่อรับGARHostCloudAnchorFutureเราเลิกใช้งานสัญลักษณ์เก่าGARSession.hostCloudAnchor:error:และGARSession.hostCloudAnchor:TTLDays:error:แล้ว และอาจนำออกใน ARCore เวอร์ชันต่อๆ ไป
มีอะไรใหม่ใน ARCore v1.36.0
การรองรับ Swift Package Manager ใน iOS
ตอนนี้ ARCore SDK สำหรับ iOS รองรับ Swift Package Manager อย่างเป็นทางการแล้ว ดูวิธีการผสานรวมกับ ARCore โดยใช้ Swift Package Manager ได้ที่เปิดใช้ AR ในแอป iOS
มีอะไรใหม่ใน ARCore v1.35.0
ความแม่นยำของท่าทางเชิงพื้นที่จะแทนที่ส่วนหัวด้วยการหมุนรอบแกนตั้ง
ตอนนี้ท่าทางเชิงพื้นที่ทั้งหมดจะแสดงความแม่นยำของทิศทางของการหมุนตามแกน Yaw ซึ่งจะแทนที่ความแม่นยำของทิศทาง
- 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 สำหรับ Android
- บันทึกประจำรุ่นของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่น ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.34.0
ตรวจสอบว่าความสามารถด้านข้อมูลเชิงพื้นที่พร้อมใช้งานในตำแหน่งปัจจุบันของอุปกรณ์หรือไม่
ตอนนี้ Geospatial API สามารถตรวจสอบความพร้อมใช้งานของระบบกำหนดตำแหน่งด้วยภาพ (VPS) ที่ตำแหน่งแนวนอนที่ระบุได้ในขณะรันไทม์ คุณใช้ API นี้ได้โดยไม่ต้องมีเซสชัน AR ที่ใช้งานอยู่ เช่น เพื่อแสดงปุ่ม "เข้าสู่ AR" เมื่อ VPS พร้อมใช้งานเท่านั้น
- Java/Kotlin:
Session.checkVpsAvailabilityAsync() - ค:
ArSession_checkVpsAvailabilityAsync() - iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler: - Unity (AR Foundation):
AREarthManager.CheckVpsAvailability()
การวางแนวท่าทางภูมิสารสนเทศ
ตอนนี้ท่าทางเชิงพื้นที่จะแสดงการวางแนวในพื้นที่ 3 มิติ
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion() - ค:
ArEarth_getGeospatialPose() - iOS:
GARGeospatialTransform.eastUpSouthQTarget - Unity:
GeospatialPose.EunRotation()
การแปลงท่าทางเชิงพื้นที่
ตอนนี้คุณสามารถแปลงท่าทางเชิงพื้นที่เป็นท่าทางในพื้นที่โลก (AR) และแปลงท่าทางในพื้นที่โลก (AR) เป็นท่าทางเชิงพื้นที่ได้แล้ว
วิธีรับท่าทางภูมิสารสนเทศจากท่าทาง AR
- Java/Kotlin:
Earth.getGeospatialPose() - ค:
ArEarth_getGeospatialPose() - iOS:
GARSession.geospatialTransformFromTransform:error: - Unity:
AREarthManager.Convert(Pose)
วิธีรับท่าทาง AR จากท่าทางภูมิสารสนเทศ
- Java/Kotlin:
Earth.getPose() - ค:
ArEarth_getPose() - iOS:
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error: - Unity:
AREarthManager.Convert(GeospatialPose)
ท่าทางเชิงพื้นที่ที่ได้จากฟังก์ชันเหล่านี้จะมีค่าการวางแนวเป็น 0 แต่ให้ใช้รายการต่อไปนี้แทน
- Android (Java/Kotlin/C): ควอเทอร์เนียน EUS ของท่าทาง
- iOS:
eastUpSouthQTargetของท่าทาง - Unity:
EunRotationของท่าทาง
การเปลี่ยนแปลงและการอัปเดตเพิ่มเติม
ดูการเปลี่ยนแปลงอื่นๆ การแก้ไขข้อบกพร่อง และการปรับปรุงประสิทธิภาพได้ในหมายเหตุประจำรุ่น
- บันทึกประจำรุ่น ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่น ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.33.0
ปลายทาง Cloud Anchors ใหม่
- หากต้องการใช้ Cloud Anchor ตอนนี้คุณต้องเปิดใช้ ARCore API แทน ARCore Cloud Anchor API เวอร์ชันเก่าที่เลิกใช้งานแล้ว หากต้องการรองรับแอปเวอร์ชันเก่า คุณอาจเปิดใช้ทั้ง 2 อย่างในระหว่างการเปลี่ยนผ่าน แอปที่สร้างด้วย ARCore SDK 1.32.0 และต่ำกว่าจะกำหนดเป้าหมายเป็น API เวอร์ชันเก่า ส่วนแอปที่สร้างด้วย ARCore SDK 1.33.0 ขึ้นไปจะกำหนดเป้าหมายเป็น API ใหม่ ข้อควรทราบมีดังนี้
- API ใหม่ใช้ชื่อโดเมน
arcore.googleapis.comแทนarcorecloudanchor.googleapis.com - หากใช้คีย์ API ที่ API จำกัด คุณต้องอนุญาต ARCore API
- หากส่งคำขอไปยัง ARCore Cloud Anchor Management API จากแบ็กเอนด์ คุณต้องเปลี่ยนชื่อโดเมนเป็น
arcore.googleapis.comหลังจากเปิดใช้ ARCore API แล้ว - ระบบจะยังรองรับ API/ปลายทางเดิมต่อไปจนถึงเดือนสิงหาคม 2023
- ดูรายละเอียดเพิ่มเติมได้ที่การเปลี่ยนแปลงปลายทาง Cloud Anchor ของ ARCore 1.33
- API ใหม่ใช้ชื่อโดเมน
Anchor ภูมิประเทศ
- Geospatial Terrain Anchor API จะสร้าง Anchor ที่ตำแหน่งแนวนอนและความสูงที่ระบุซึ่งสัมพันธ์กับภูมิประเทศของตำแหน่งแนวนอน
การเปลี่ยนแปลงและการอัปเดตเพิ่มเติม
ดูการเปลี่ยนแปลงอื่นๆ การแก้ไขข้อบกพร่อง และการปรับปรุงประสิทธิภาพได้ในหมายเหตุประจำรุ่น
- บันทึกประจำรุ่น ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่น ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.32.0
รุ่นนี้ไม่มีฟีเจอร์ใหม่
Android และ Unity (AR Foundation) สำหรับ Android
targetSdkVersionของ ARCore ได้รับการอัปเดตเป็น Android API ระดับ 32 แล้ว หากแอปไม่ได้ระบุtargetSdkVersiontargetSdkVersionของแอปจะกลายเป็น 32 เนื่องจากการผสานไฟล์ Manifest- Android SDK: การระบุ
targetSdkVersionในbuild.gradleหรือAndroidManifest.xmlของโปรเจ็กต์จะลบล้างค่าtargetSdkVersionของ ARCore - AR Foundation สำหรับ Android: การระบุระดับ API เป้าหมายในการตั้งค่าโปรเจ็กต์ > Player > Android > การตั้งค่าอื่นๆ ของโปรเจ็กต์ Unity จะลบล้างค่า
targetSdkVersionของ ARCore
- Android SDK: การระบุ
การเปลี่ยนแปลงและการอัปเดตเพิ่มเติม
ดูการเปลี่ยนแปลงอื่นๆ การแก้ไขข้อบกพร่อง และการปรับปรุงประสิทธิภาพได้ในหมายเหตุประจำรุ่น
- บันทึกประจำรุ่น ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่น ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.31.0
ARCore Geospatial API
Geospatial API ของ ARCore ใหม่ใช้ข้อมูลจากโมเดล 3 มิติของ Google Earth และข้อมูลรูปภาพ Street View จาก Google Maps เพื่อเปิดใช้แอปของคุณสำหรับประสบการณ์ Augmented Reality ที่อิงตามตำแหน่งทั่วโลกและสมจริง
ดูข้อมูลเบื้องต้นเกี่ยวกับ ARCore Geospatial API เพื่อดูเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์เฉพาะแพลตฟอร์ม และเริ่มต้นใช้งาน Geospatial API ใหม่
ความลึกระยะไกล
ตอนนี้เราได้เพิ่มประสิทธิภาพ ARCore Depth API ให้รวมการตรวจจับความลึกในระยะไกลขึ้น เพื่อเพิ่มช่วงของการสังเกตความลึกที่แสดงได้ ระบบจะใช้ข้อมูลทั้งหมด 16 บิตของ ภาพเชิงลึก ซึ่งให้ช่วงสูงสุด 65535 มิลลิเมตร ก่อนหน้านี้ จะมีการป้อนข้อมูลเพียง 13 บิต โดยมีขีดจำกัดที่ 8191 มิลลิเมตร
ดูการเปลี่ยนแปลงเกี่ยวกับความลึกสำหรับเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์เฉพาะแพลตฟอร์ม และทำความเข้าใจการเปลี่ยนแปลงเกี่ยวกับ Depth API
หมายเหตุเฉพาะแพลตฟอร์ม
Android
ARCore Geospatial API ใหม่
Java
Earthมีความสามารถในการแปลเป็นภาษาท้องถิ่นในพิกัดที่สัมพันธ์กับโลกEarth.createAnchor()สร้างAnchorใหม่ที่ตำแหน่งและทิศทางที่ระบุ เทียบกับโลก
Earth.EarthstateอธิบายสถานะปัจจุบันของEarthรวมถึงTrackingStateGeospatialPoseอธิบายตำแหน่ง ความสูง และทิศทางเข็มทิศที่เฉพาะเจาะจงเมื่อเทียบกับ โลก
C
ArEarthช่วยให้ระบุตำแหน่งในพิกัดที่สัมพันธ์กับโลกได้ArEarth_acquireNewAnchor()สร้างAnchorใหม่ที่ตำแหน่งและทิศทางที่ระบุ เทียบกับโลกArEarthStateอธิบายสถานะปัจจุบันของArEarthรวมถึงArTrackingState
ArGeospatialPoseอธิบายตำแหน่ง ความสูง และทิศทางเข็มทิศที่เฉพาะเจาะจงเมื่อเทียบกับ โลก
อัปเดต ARCore Depth API
Java
- การเรียกฟังก์ชัน Depth API มีการเปลี่ยนแปลงดังนี้
Frame.acquireDepthImageกับFrame.acquireDepthImage16BitsFrame.acquireRawDepthImageกับFrame.acquireRawDepthImage16Bits- รูปแบบรูปภาพเอาต์พุตสำหรับการเรียกทั้ง 2 รายการเปลี่ยนจาก
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_acquireDepthImage16BitsArFrame_acquireRawDepthImageถึงArFrame_acquireRawDepthImage16Bits- รูปแบบรูปภาพเอาต์พุตสำหรับการโทรทั้ง 2 แบบเปลี่ยนจาก
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 Geospatial API ใหม่
AREarthManagerช่วยให้ระบุตำแหน่งในพิกัดที่สัมพันธ์กับโลกได้EarthTrackingStateรับสถานะการติดตามของโลกสำหรับเฟรมล่าสุดEarthStateดูแลรักษาสภาพข้อผิดพลาดของ Earth
GeospatialPoseอธิบายตําแหน่ง ความสูง และทิศทางเข็มทิศที่เฉพาะเจาะจงเมื่อเทียบกับโลกARGeospatialAnchorเป็นจุดยึดสำหรับออบเจ็กต์เกมในฉากของคุณ ซึ่งระบุที่ตำแหน่ง และวางแนวเทียบกับโลก
iOS
ARCore Geospatial API ใหม่
GAREarthให้การแปลที่สัมพันธ์กับโลกGAREarthState.earthStateจัดการสถานะและเงื่อนไขข้อผิดพลาดGAREarthState.trackingStateรักษาสถานะการติดตาม ซึ่งจำเป็นสำหรับข้อมูลทางภูมิศาสตร์
GARGeospatialTransformการแสดงการแปลงทั่วโลก รวมถึงตำแหน่ง ทิศทาง ความสูง และการประมาณความแม่นยำGARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:สร้างสมอเชิงพื้นที่ที่ตำแหน่งและทิศทางที่ระบุ เทียบกับโลก
การเปลี่ยนแปลงอื่นๆ
ดูการเปลี่ยนแปลงอื่นๆ การแก้ไขข้อบกพร่อง และการปรับปรุงประสิทธิภาพได้ในหมายเหตุประจำรุ่น
- บันทึกประจำรุ่น ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่น ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.30.0
รุ่นนี้ไม่มีฟีเจอร์ใหม่
Android
- ค่าที่ส่งคืนของ API ที่มีคำอธิบายประกอบพร้อม
@NonNullและ@Nullable - อัปเดตเวอร์ชันเครื่องมือบิลด์ที่ใช้ในการสร้างตัวอย่าง: Gradle เป็น 7.0.2 และปลั๊กอิน Android Gradle เป็น 7.0.4 ไม่จำเป็นต้องอัปเกรดเครื่องมือเหล่านี้สำหรับแอปพลิเคชัน ARCore ที่มีอยู่ ดูฟีเจอร์ใหม่ ปัญหาที่ทราบ ข้อมูลความไม่เข้ากันได้ได้ที่ เอกสารประกอบของ Android เกี่ยวกับปลั๊กอิน Android Gradle
Unity (AR Foundation)
เพิ่ม
arcore-unity-extensions-without-edm4u.tgzรุ่นใหม่ ตัวแปรของรุ่นนี้ ไม่ได้รวมทรัพยากร Dependency ภายนอก เช่น External Dependency Manager สำหรับ Unity และอนุญาตให้อัปเกรดเป็น EDM การใช้รุ่น Lite นี้อาจช่วยแก้ปัญหาความไม่เข้ากันเมื่อใช้ไลบรารี Firebase ดูวิธีการติดตั้งส่วนขยาย ARCore สำหรับ AR Foundation เพื่อเริ่มต้นใช้งานอัปเกรด ExternalDependencyManager เป็น v1.2.168 เพื่อรองรับ 2021.2+ ได้ดียิ่งขึ้น โปรดดูรายละเอียดในบันทึกการเปลี่ยนแปลงของ EDM
แก้ไขปัญหาที่เซสชัน ARCore กำหนดค่าทุกเฟรมแม้ว่าจะไม่มีการเปลี่ยนแปลงในการกำหนดค่าเซสชัน ซึ่งทำให้ FPS ลดลง
iOS
- แก้ไขข้อบกพร่องและปรับปรุงประสิทธิภาพหลายรายการ
มีอะไรใหม่ใน ARCore v1.29.0
รุ่นนี้ไม่มีฟีเจอร์ใหม่
Android
- hello_ar_java และ hello_ar_kotlin: เปลี่ยนสีของออบเจ็กต์เมื่อวางโดยใช้
SCREENSPACE_WITH_APPROXIMATE_DISTANCEเพื่อให้แยกความแตกต่างของออบเจ็กต์ที่วางโดยใช้การวางทันทีได้ดียิ่งขึ้น - persistent_cloud_anchor_java: เพิ่มการพึ่งพาการสร้างที่ขาดหายไปลงในตัวอย่าง แก้ไขข้อบกพร่องที่ทำให้การโฮสต์ Anchor ใดๆ มีสถานะเป็น
CloudAnchorState ERROR_NOT_AUTHORIZEDแม้ว่าจะตั้งค่าโปรเจ็กต์อย่างถูกต้องแล้วก็ตาม
Unity (AR Foundation)
- ตอนนี้แพ็กเกจส่วนขยาย ARCore ขึ้นอยู่กับปลั๊กอิน ARKit XR เพื่อให้มั่นใจว่าเวอร์ชัน AR Foundation ที่ติดตั้งเข้ากันได้กับเวอร์ชันปลั๊กอิน ARKit XR การแก้ไขนี้จะช่วยแก้ข้อผิดพลาดในการคอมไพล์เมื่อติดตั้ง ARCore Extensions ใน Unity 2019.x และเปิดใช้ปลั๊กอิน ARKit XR
- เราได้ย้ายการตั้งค่าโปรเจ็กต์ส่วนขยาย ARCore จากการตั้งค่าโปรเจ็กต์ > XR > ส่วนขยาย ARCore ไปยังการตั้งค่าโปรเจ็กต์ > การจัดการปลั๊กอิน XR > ส่วนขยาย ARCore แล้ว
ARCoreExtensionsConfig,ARCoreExtensionsCameraConfigFilter,ARCoreRecordingConfigได้ย้ายจากเมนูสร้าง > XR > ส่วนขยาย ARCore ไปยังเมนูสร้าง > XR แล้ว
iOS
- แก้ไขข้อบกพร่องและปรับปรุงประสิทธิภาพหลายรายการ
บันทึกประจำรุ่นฉบับสมบูรณ์
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.28.0
- ตั้งแต่เดือนพฤศจิกายน 2022 เป็นต้นไป แอปที่เปิดใช้ AR จะรับรูปภาพ NDK หรือข้อมูลเมตาของรูปภาพไม่ได้อีกต่อไป เวอร์ชัน SDK ที่ได้รับผลกระทบจะขึ้นอยู่กับฟังก์ชันเฉพาะที่เรียกใช้ โปรดดูประกาศการเลิกใช้งานเพื่อดูข้อมูลเพิ่มเติม
- C: การเรียกใช้
ArImage_getNdkImage()และArImage_getNdkCameraMetadata()จะแสดงผลnullptrสำหรับออบเจ็กต์AImageและACameraMetadataเสมอ - Java: ออบเจ็กต์
Imageที่Frame#acquireCameraImage()ส่งคืนจะมีขนาด0x0พิกเซล การโทรไปยัง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 สำหรับ Unity (เลิกใช้งานแล้ว): การเรียก
Frame.CameraImage.AcquireCameraImageBytes()จะมีขนาด0x0พิกเซล การเรียกใช้Frame.CameraMetadata.GetAllCameraMetadataTags()จะแสดงผลList<CameraMetadataTag>ที่ว่างเปล่า
- C: การเรียกใช้
- Java:
ArImage#getCropRect()จะแสดงผลสี่เหลี่ยมผืนผ้าครอบตัดขนาดเต็ม ซึ่งหมายความว่าพิกเซลทั้งหมดในรูปภาพใช้ได้ ดูข้อมูลเพิ่มเติมได้ที่android.media.Image#getCropRect()
มีอะไรใหม่ใน ARCore v1.27.0
รุ่นนี้ไม่มีฟีเจอร์ใหม่ ดูบันทึกประจำรุ่นต่อไปนี้เพื่อดูการแก้ไขข้อบกพร่องและการปรับปรุงประสิทธิภาพต่างๆ
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
นอกจากการแก้ไขข้อบกพร่องต่างๆ แล้ว รุ่นนี้ยังมีการเปลี่ยนแปลงต่อไปนี้
แอปตัวอย่างใน Kotlin
เพิ่ม hello_ar_kotlin เพื่อแสดงแนวทางปฏิบัติแนะนำเมื่อใช้ Kotlin
ดูข้อมูลเพิ่มเติมได้ที่การเริ่มต้นอย่างรวดเร็วสำหรับ Android
เพิ่ม ml_kotlin เพื่อแสดงวิธีใช้โมเดลการแยกประเภทรูปภาพกับ ARCore
ดูข้อมูลเพิ่มเติมได้ที่ใช้ ARCore เป็นอินพุตสำหรับโมเดลแมชชีนเลิร์นนิง
มีอะไรใหม่ใน ARCore v1.26.0
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
- ตอนนี้ระบบรองรับ URI สำหรับชุดข้อมูลในการบันทึกและการเล่นแล้ว
การเปลี่ยนแปลงและการอัปเดตเพิ่มเติม
โปรดดูบันทึกประจำรุ่นต่อไปนี้เพื่อดูการแก้ไขข้อบกพร่องเพิ่มเติมและการเปลี่ยนแปลงอื่นๆ ที่ส่งผลกับส่วนอื่นในระบบ
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.25.0
รุ่นนี้ไม่มีฟีเจอร์ใหม่ ดูบันทึกประจำรุ่นต่อไปนี้เพื่อดูการแก้ไขข้อบกพร่องและการปรับปรุงประสิทธิภาพต่างๆ
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Unity
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.24.0
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
- Raw Depth API ใหม่ที่ให้รูปภาพความลึกโดยไม่มีการกรองพื้นที่รูปภาพ
- ความสามารถการบันทึกแทร็กข้อมูลที่กำหนดเองไปยัง Recording & Playback API
- ความสามารถในการทำการทดสอบการตรวจจับความลึก
ความลึกดิบ
Raw Depth API ให้ข้อมูลเชิงลึกสำหรับรูปภาพจากกล้องที่มีความแม่นยำสูงกว่าข้อมูล Depth API แบบเต็ม แต่ไม่ได้ครอบคลุมทุกพิกเซลเสมอไป นอกจากนี้ยังสามารถประมวลผลเพิ่มเติมสำหรับรูปภาพความลึกแบบดิบพร้อมกับรูปภาพความเชื่อมั่นที่ตรงกันได้ด้วย ซึ่งจะช่วยให้แอปใช้เฉพาะข้อมูลความลึกที่มีความแม่นยำเพียงพอสำหรับกรณีการใช้งานของแต่ละแอป
คู่มือนักพัฒนาซอฟต์แวร์:
การบันทึกแทร็กที่กำหนดเอง
ความสามารถในการติดตามข้อมูลที่กำหนดเองใหม่ใน Recording & Playback API ช่วยให้คุณ เพิ่มข้อมูลที่กำหนดเองลงในเฟรม ARCore ระหว่างการบันทึก และเรียกข้อมูลเดียวกันนั้น จากเฟรมระหว่างการเล่นได้
คู่มือนักพัฒนาซอฟต์แวร์:
การทดสอบ Hit ในเชิงลึก
ก่อนหน้านี้ การทดสอบการแตะจะทำได้เฉพาะบนระนาบที่ตรวจพบเท่านั้น ซึ่งจำกัด ตำแหน่งไว้ที่พื้นผิวเรียบขนาดใหญ่ การทดสอบการตรวจจับเชิงลึกใช้ประโยชน์จากทั้งข้อมูลเชิงลึกที่ราบรื่น และข้อมูลเชิงลึกดิบเพื่อให้ผลลัพธ์การตรวจจับที่แม่นยำยิ่งขึ้น แม้ในพื้นผิวที่ไม่ใช่ระนาบและมีพื้นผิวต่ำ
คู่มือนักพัฒนาซอฟต์แวร์:
การเปลี่ยนแปลงและการอัปเดตเพิ่มเติม
โปรดดูบันทึกประจำรุ่นต่อไปนี้เพื่อดูการแก้ไขข้อบกพร่องเพิ่มเติมและการเปลี่ยนแปลงอื่นๆ ที่ส่งผลกับส่วนอื่นในระบบ
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Android
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore สำหรับ Android NDK
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ iOS
- บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Unity
- บันทึกประจำรุ่นของส่วนขยาย ARCore สำหรับ AR Foundation
มีอะไรใหม่ใน ARCore v1.23.0
รอการรองรับกล้องคู่
การรองรับกล้องคู่จะเปิดตัวในอีกไม่กี่สัปดาห์ข้างหน้า ดูข้อมูลเพิ่มเติมได้ที่หน้าอุปกรณ์ที่รองรับ
เครื่องมือแก้ไขข้อบกพร่องใหม่
การส่ง Intent การออกอากาศช่วยให้นักพัฒนาแอปทำสิ่งต่อไปนี้ได้
การบันทึกการเรียกใช้ ARCore API ไปยัง บันทึกการแก้ไขข้อบกพร่องของ Android
การวางซ้อนประสิทธิภาพของ ARCore
การโฮสต์และการแก้ไข Cloud Anchor
แอปที่เปิดใช้ AR ซึ่งสร้างโดยใช้ ARCore SDK 1.11.0 หรือเวอร์ชันก่อนหน้าจะไม่สามารถ โฮสต์หรือแก้ไข Cloud Anchor ได้อีกต่อไป
Cloud Anchor ที่
ArSession_hostAndAcquireNewCloudAnchorและArSession_resolveAndAcquireNewCloudAnchorส่งคืนจะมีสถานะเป็นAR_CLOUD_ANCHOR_STATE_ERROR_INTERNALเสมอJava: Cloud Anchor ที่ส่งคืนโดย
Session.hostCloudAnchor(Anchor)และSession.resolveCloudAnchor(String)จะมีสถานะเป็นAnchor.CloudAnchorState.ERROR_INTERNALเสมอUnity: Cloud Anchor ที่ส่งคืนโดย
XPSession.CreateCloudAnchor(Anchor)และXPSession.ResolveCloudAnchor(string)จะมีสถานะCloudServiceResponse.ErrorInternalเสมอ
แอปที่สร้างด้วย ARCore SDK 1.12.0 ขึ้นไปจะไม่ได้รับผลกระทบ การใช้ ARCore Cloud Anchor API อยู่ภายใต้นโยบายการเลิกใช้งาน
การเปลี่ยนแปลงและการอัปเดตเพิ่มเติม
ดูการแก้ไขข้อบกพร่องเพิ่มเติมและการเปลี่ยนแปลงอื่นๆ ที่ทำให้เกิดการหยุดทำงานได้ในบันทึกประจำรุ่นต่อไปนี้
มีอะไรใหม่ใน ARCore v1.22.0
การเปิดตัวนี้ได้เพิ่ม API การบันทึกและการเล่นและ API ตัวกรองการกำหนดค่ากล้องใหม่สำหรับ ARCore Extensions สำหรับ AR Foundation ดูรายละเอียดได้ที่บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore Extensions
การเปลี่ยนแปลงและการอัปเดตเพิ่มเติม
ดูการแก้ไขข้อบกพร่องเพิ่มเติมและการเปลี่ยนแปลงอื่นๆ ที่ทำให้เกิดการหยุดทำงานได้ในบันทึกประจำรุ่นต่อไปนี้
มีอะไรใหม่ใน ARCore v1.21.0
การเปิดตัวนี้ได้เพิ่ม API การบันทึกและการเล่นใหม่สำหรับ Android, Android NDK และ Unity
การบันทึกและการเล่น
API การบันทึกและการเล่นช่วยให้คุณบันทึกวิดีโอและข้อมูล AR ได้ครั้งเดียว ภายในสภาพแวดล้อมที่กำหนด และใช้เนื้อหานั้นแทนเซสชันกล้องสด เพื่อวัตถุประสงค์ในการทดสอบ ARCore จะบันทึกเซสชันที่บันทึกไว้เป็นไฟล์ MP4 ซึ่งมี แทร็กวิดีโอหลายแทร็กและข้อมูลอื่นๆ ที่เกี่ยวข้องในอุปกรณ์ จากนั้นคุณจะ ชี้แอปให้ใช้ข้อมูลนี้แทนเซสชันกล้องสดได้ ซึ่งช่วยให้คุณเล่นเนื้อหานั้นซ้ำได้ไม่จำกัดเพื่อลองใช้เอฟเฟกต์ AR ต่างๆ โดยไม่ต้องกลับไปที่ฟิลด์
ดูรายละเอียดเพิ่มเติมที่นี่
Java:
C:
Unity:
มีอะไรใหม่ใน ARCore v1.20.0
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
การรองรับใหม่สำหรับ Cloud Anchor แบบถาวร
ความสามารถของข้อมูลเมตาของรูปภาพที่อัปเดตแล้วสำหรับ Android และ Android NDK
คำแนะนำใหม่ที่กำหนดให้ใช้ Gradle เวอร์ชัน 5.6.4 ขึ้นไป เพื่อรองรับ ARCore Extensions สำหรับ AR Foundation หรือ ARCore SDK สำหรับ Unity (1.19 ขึ้นไป) ด้วย Unity 2018.4 ขึ้นไป
การรองรับ Cloud Anchor แบบถาวรใหม่
ก่อน ARCore v1.20 คุณจะแก้ไข Cloud Anchor ได้นานสูงสุด 24 ชั่วโมง หลังจากที่โฮสต์เป็นครั้งแรก ตอนนี้คุณสร้าง Cloud Anchor ที่มีเวลาให้อยู่ (TTL) ระหว่าง 1 ถึง 365 วันได้แล้ว นอกจากนี้ คุณยังขยายอายุของ Anchor หลังจากที่โฮสต์แล้วได้ด้วย โดยใช้ Cloud Anchor Management API
การใช้ Cloud Anchor แบบถาวรอยู่ภายใต้นโยบายการเลิกใช้งาน Cloud Anchor ใหม่
C: คู่มือนักพัฒนาซอฟต์แวร์
ArSession_hostAndAcquireNewCloudAnchorWithTtlและArSession_estimateFeatureMapQualityForHostingJava: คู่มือนักพัฒนาซอฟต์แวร์,
hostCloudAnchorWithTtlและestimateFeatureMapQualityForHostingiOS: คู่มือนักพัฒนาแอป,
hostCloudAnchor:TTLDays:error:และestimateFeatureMapQualityForHosting:ส่วนขยาย ARCore สำหรับ AR Foundation: คำแนะนำสำหรับนักพัฒนาแอป 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
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
- Instant Placement API ใหม่สำหรับ Android, Android NDK และ Unity
- คำแนะนำใหม่สำหรับการสร้างแอปสำหรับ Android 11 ด้วย Unity
การจัดวางทันที
Instant Placement API ช่วยให้ผู้ใช้วางออบเจ็กต์ AR บนหน้าจอได้ โดยไม่ต้องรอให้ ARCore ตรวจพบเรขาคณิตของพื้นผิว การวางออบเจ็กต์ จะได้รับการปรับแต่งแบบเรียลไทม์เมื่อผู้ใช้เคลื่อนที่ไปรอบๆ สภาพแวดล้อม เมื่อ ARCore ตรวจพบท่าทางที่ถูกต้องในภูมิภาคที่มีการวางออบเจ็กต์ AR ออบเจ็กต์สีขาวจะอัปเดตโดยอัตโนมัติให้เป็นท่าทางที่ถูกต้องและกลายเป็นทึบแสง
คลิปต่อไปนี้แสดงหุ่น Android เสมือนจริงบนโต๊ะในโลกแห่งความจริง ฟิกเกอร์จะเป็นสีขาวและมีขนาดเล็กกว่ามากเมื่อวางครั้งแรก หลังจาก ARCore ปรับการคำนวณขนาดฉากแล้ว ฟิกเกอร์จะย้ายไปอยู่ในตำแหน่งที่ แม่นยำยิ่งขึ้น ซึ่งอาจส่งผลให้ "ขนาด" ของออบเจ็กต์ที่รับรู้แตกต่างกัน
ดูรายละเอียดเพิ่มเติมที่นี่
Android
Android NDK:
Unity:
มีอะไรใหม่ใน ARCore v1.18.0
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
- Depth API ใหม่สำหรับ Android, Android NDK และ Unity
- คำแนะนำใหม่ สำหรับการสร้างชิ้นงานใบหน้าเสมือนจริงและนำเข้าชิ้นงานเหล่านั้นไปยัง Android Studio
- เราจะรองรับ Depth API ใน
4.1.0-preview.2สำหรับทั้งAR FoundationและARCore XR Plugin
Depth API
ในอุปกรณ์ที่รองรับความลึก Depth API จะใช้กล้อง RGB ของอุปกรณ์ที่รองรับ ARCore หรือเซ็นเซอร์ความลึกที่ใช้งานอยู่ (หากมี) เพื่อสร้างแผนที่ความลึก จากนั้นคุณสามารถใช้ความลึกต่อพิกเซลที่ได้จากแผนที่ความลึกเพื่อทำให้วัตถุเสมือนปรากฏอย่างแม่นยำที่ด้านหน้าหรือด้านหลังวัตถุในโลกจริง ซึ่งจะช่วยให้ผู้ใช้ได้รับประสบการณ์ที่สมจริงและดื่มด่ำ
ตัวอย่างเช่น รูปภาพต่อไปนี้แสดงหุ่น Android เสมือนจริงในพื้นที่จริง ซึ่งมีกระเป๋าเดินทางอยู่ข้างประตู Depth API ปิดบัง รูปภาพด้านหลังขอบของลำต้นได้อย่างเหมาะสม
ดูรายละเอียดเพิ่มเติมที่นี่
Android
Android NDK:
Unity:
มีอะไรใหม่ใน ARCore v1.17.0
สิ่งที่น่าสนใจใน ARCore SDK สำหรับ Android
เพิ่มวิธีการใหม่ที่ช่วยให้บัฟเฟอร์เฟรมกล้องหลายเฟรมได้ นอกจากเทคนิคอื่นๆ เช่น การแสดงผลแบบหลายเธรดแล้ว ยังสามารถใช้เทคนิคนี้เพื่อลดความแปรปรวนของอัตราเฟรมได้ด้วย
เพิ่มการใช้งานเซ็นเซอร์ความลึกและตัวรับFPS เป้าหมายที่ขาดหายไป
ดูบันทึกประจำรุ่นฉบับสมบูรณ์ของ Android SDK สำหรับ Android ด้วย
สิ่งที่น่าสนใจใน ARCore SDK สำหรับ Unity
- เพิ่มการรองรับการแสดงผลแบบหลายเธรดใน Unity เวอร์ชัน 2018.2 ขึ้นไป ซึ่งในกรณีส่วนใหญ่จะปรับปรุงประสิทธิภาพ และช่วยลดความแปรปรวนของอัตราเฟรมได้ นี่คือการตั้งค่าโปรเจ็กต์ Unity ซึ่งอยู่ในการตั้งค่าโปรเจ็กต์ > Player > Android > การตั้งค่าอื่นๆ > การแสดงผลแบบหลายเธรด ดูรายละเอียดได้ที่คู่มือนักพัฒนาซอฟต์แวร์
- เพิ่ม
SessionStatus.ErrorCameraNotAvailableและSessionStatus.ErrorIllegalStateเพื่อระบุสถานะข้อผิดพลาดของเซสชัน ARCore โดยเฉพาะ
ดูบันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Unity ด้วย
สิ่งที่น่าสนใจใน ARCore SDK สำหรับ iOS
ขนาดไบนารีของ Cloud Anchors SDK ลดลงอย่างมาก
ตอนนี้เราได้รองรับ Bitcode สำหรับใบหน้าที่เพิ่มความเป็นจริงแล้ว
ดูบันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ iOS ด้วย
มีอะไรใหม่ใน ARCore v1.16.0
สิ่งที่น่าสนใจใน ARCore SDK สำหรับ Android และ Sceneform SDK สำหรับ Android
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
- ตอนนี้อุปกรณ์ส่วนใหญ่จะแสดงการกำหนดค่ากล้องเพิ่มเติมที่รองรับซึ่งมีความละเอียดของเท็กซ์เจอร์ GPU ต่ำกว่าความละเอียดของเท็กซ์เจอร์ GPU เริ่มต้นของอุปกรณ์
ดูรายละเอียดได้ที่อุปกรณ์ที่รองรับ ARCore
ความละเอียดของ GPU ที่ขยายเหล่านี้พร้อมใช้งานผ่าน
getSupportedCameraConfigs(CameraConfigFilter)API
และดู:
สิ่งที่น่าสนใจใน ARCore Extensions สำหรับ AR Foundation
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
XRCameraConfigurationของ AR Foundation ได้รับการขยายด้วยเมธอดที่ช่วยให้คุณ เลือกการกำหนดค่ากล้องที่เหมาะสมตามเกณฑ์ที่ต้องการได้ ซึ่งรวมถึงเมธอดต่อไปนี้ GetTextureDimensions() GetFPSRange() และ GetDepthSensorUsages() อ่านวิธีการโดยละเอียดตอนนี้ Unity 2019.3.0f6 เป็นเวอร์ชันขั้นต่ำที่แนะนำสำหรับ ARCore Extensions AR Foundation 3.1.0-preview.6 ต้องใช้ Unity เวอร์ชัน 2019.3 ขึ้นไป
ตอนนี้ Unity ใช้คำว่า Anchor, Cloud Anchor และ Cloud Anchor ID ใน API ของ AR ข้ามแพลตฟอร์ม เราได้อัปเดตเอกสารประกอบสำหรับ ARCore Extensions เพื่อให้สอดคล้องกับการเปลี่ยนแปลงนี้แล้ว
และดู:
สิ่งที่น่าสนใจใน ARCore SDK สำหรับ Unity
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
- ตอนนี้อุปกรณ์ส่วนใหญ่จะแสดงการกำหนดค่ากล้องเพิ่มเติมที่รองรับซึ่งมีความละเอียดของเท็กซ์เจอร์ GPU ต่ำกว่าความละเอียดของเท็กซ์เจอร์ GPU เริ่มต้นของอุปกรณ์ (ดูรายละเอียดได้ที่อุปกรณ์ที่รองรับ ARCore) ความละเอียดของ GPU ที่ขยายเหล่านี้พร้อมใช้งานผ่าน API ARCoreCameraConfigFilter
และดู:
บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Unity
มีอะไรใหม่ใน ARCore v1.15.0
สิ่งที่น่าสนใจใน ARCore Extensions สำหรับ AR Foundation
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
เพิ่มตัวอย่าง CloudAnchors ที่แสดงวิธีสร้างประสบการณ์ AR ที่แชร์สำหรับทั้ง Android และ iOS ดูวิธีการสำหรับ Android หรือ iOS
ตอนนี้ Unity 2019.2.17f1 เป็นเวอร์ชันขั้นต่ำที่แนะนำให้ใช้กับ ARCore Extensions
บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore Extensions
สิ่งที่น่าสนใจใน ARCore SDK สำหรับ Unity
รุ่นนี้มีปัญหาที่ทราบดังต่อไปนี้
พรีวิวภาพทันใจอาจทำให้ Unity ค้างเมื่อใช้ Android 9 และสาย USB 3 หากต้องการแก้ไข ให้อัปเดตเป็น Android 10 หรือใช้สาย USB 2
พรีวิวทันใจอาจแสดงในอุปกรณ์ไม่สำเร็จเมื่อความละเอียดของมุมมองเกมของ Unity สูงเกินไป หากต้องการแก้ไข ให้ลดความละเอียดของมุมมองเกมของ Unity ใน เอดิเตอร์
บันทึกประจำรุ่นฉบับสมบูรณ์ของ ARCore SDK สำหรับ Unity
การเปลี่ยนแปลงเพิ่มเติม
ดูการแก้ไขข้อบกพร่องเพิ่มเติมและการเปลี่ยนแปลงอื่นๆ ที่ทำให้เกิดการหยุดทำงานได้ในบันทึกประจำรุ่นต่อไปนี้
มีอะไรใหม่ใน ARCore v1.14.0
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
เมื่อแอปสูญเสียสิทธิ์เข้าถึงกล้องชั่วคราวให้กับแอปอื่นในอุปกรณ์ ตอนนี้ เหตุผลที่การติดตามล้มเหลวจะมีความเฉพาะเจาะจงมากขึ้น ดังนี้
Android:
TrackingFailureReasonเป็นCAMERA_UNAVAILABLEแทนNONEAndroid NDK:
ArTrackingFailureReasonsเป็นAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLEแทนAR_TRACKING_FAILURE_REASON_NONEUnity:
Session.LostTrackingReasonเป็นLostTrackingReason.CameraUnavailableแทนNone
Google เก็บรวบรวมและประมวลผลข้อมูล จากการใช้แพ็กเกจ ARCore Extensions ตามนโยบายความเป็นส่วนตัวของ Google และข้อกำหนดในการให้บริการของ Google APIs คุณเลือกไม่ใช้ได้
มีอะไรใหม่ใน ARCore v1.13.0
รุ่นนี้มีการเปลี่ยนแปลงที่สำคัญต่อไปนี้
รองรับการใช้ ARCore Extensions สำหรับ AR Foundation ของ Unity เพื่อสร้างแอป iOS ที่มี Cloud Anchor
ดูการแก้ไขข้อบกพร่องเพิ่มเติมและการเปลี่ยนแปลงอื่นๆ ที่ทำให้เกิดการหยุดทำงานได้ในบันทึกประจำรุ่นต่อไปนี้
มีอะไรใหม่ใน ARCore v1.12.0
รุ่นนี้มีการเปลี่ยนแปลงต่อไปนี้
การเพิ่มฟีเจอร์ใบหน้าเสริมความจริงลงใน iOS ดูข้อมูลเพิ่มเติมได้ที่ภาพรวม การเริ่มต้นอย่างรวดเร็ว และคู่มือสำหรับนักพัฒนาซอฟต์แวร์
รองรับการใช้ ARCore Extensions สำหรับ AR Foundation ของ Unity เพื่อสร้างแอป Android ด้วย Cloud Anchor
การเปลี่ยนแปลงต่อไปนี้ใน Cloud Anchor
- เพื่อให้เป็นไปตามข้อกำหนดด้านความเป็นส่วนตัวที่อัปเดตแล้วสำหรับการใช้ ARCore SDK เวอร์ชัน 1.12 ขึ้นไป คุณต้องเปิดเผยการใช้ Cloud Anchor อย่างชัดเจนในแอปพลิเคชันโดยใส่ข้อความต่อไปนี้ รวมถึงลิงก์เพื่อดูข้อมูลเพิ่มเติมในหน้าจอประกาศ "Google จะประมวลผลข้อมูลภาพจากกล้องของคุณเพื่อขับเคลื่อนเซสชันนี้" คุณทำได้โดยการใช้ขั้นตอนการแจ้งเตือนผู้ใช้ที่แนะนำซึ่งมีอยู่ในแอปตัวอย่าง Cloud Anchor
ดูรายละเอียดเพิ่มเติมได้ที่ข้อกำหนดด้านความเป็นส่วนตัวของผู้ใช้
ดูรายละเอียดเพิ่มเติมเกี่ยวกับ Cloud Anchors ได้ที่
Android
Android NDK:
iOS
Unity:
ส่วนขยาย ARCore:
มีอะไรใหม่ใน ARCore v1.11.0
รุ่นนี้มีการเปลี่ยนแปลงต่อไปนี้
เราได้เปลี่ยนชื่อบริการ ARCore เป็นบริการ Google Play สำหรับ AR ในอุปกรณ์ Google Play ตอนนี้เราได้เผยแพร่เป็นส่วนหนึ่งของบริการ Google Play แล้ว
การกำหนดค่ากล้องของ ARCore มีเป้าหมายอยู่ที่ 60 FPS ในอุปกรณ์ที่รองรับ และจัดลำดับความสำคัญของการใช้เซ็นเซอร์ความลึกในอุปกรณ์ที่มีเซ็นเซอร์ดังกล่าว คุณสามารถใช้ ตัวกรองการกำหนดค่ากล้องใหม่เพื่อจำกัดอัตราเฟรมการจับภาพของกล้องไว้ที่ 30 FPS ป้องกันไม่ให้ ARCore ใช้เซ็นเซอร์ความลึก หรือกรองตามทั้ง 2 ตัวเลือก
ดูรายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดค่ากล้องได้ดังนี้
Android
Android NDK:
Unity:
มีอะไรใหม่ใน ARCore v1.10.0
การเปิดตัวนี้เพิ่มความสามารถในการประมาณแสง HDR แวดล้อมใหม่ลงใน Lighting Estimation API สำหรับ Android, Android NDK และ Unity
API เหล่านี้ใช้แมชชีนเลิร์นนิงเพื่อวิเคราะห์รูปภาพจากกล้องที่ป้อนและ ประมาณการจัดแสงในสภาพแวดล้อม คุณใช้ข้อมูลการประมาณแสงนี้ เพื่อแสดงแสงที่สมจริงอย่างยิ่งได้ ซึ่งรวมถึงแสงหลักแบบทิศทาง เงา แสงแวดล้อม ไฮไลต์แบบกระจก และการสะท้อนบนวัตถุเสมือน ผลลัพธ์ที่ได้คือเนื้อหาเสมือนที่ดูสมจริงยิ่งขึ้น
ดูรายละเอียดเพิ่มเติมที่นี่
Android
Android NDK:
Unity:
มีอะไรใหม่ใน ARCore v1.9.0
ฟีเจอร์ใหม่ใน ARCore SDK สำหรับ Android
รุ่นนี้เพิ่ม API และฟีเจอร์ใหม่ต่อไปนี้
Scene Viewer เป็นโปรแกรมดูที่สมจริงซึ่ง ช่วยให้ประสบการณ์ AR จากเว็บไซต์ของคุณเป็นไปได้ ซึ่งช่วยให้ผู้ใช้อุปกรณ์เคลื่อนที่ Android วาง ดู และโต้ตอบกับโมเดล 3 มิติที่โฮสต์บนเว็บในสภาพแวดล้อมของตนเองได้อย่างง่ายดาย
ฟีเจอร์ใหม่ของภาพเสริมมีดังนี้
ตอนนี้ ARCore ติดตามรูปภาพเสริมที่เคลื่อนไหวได้แล้ว ตัวอย่างของภาพเคลื่อนไหว ได้แก่ โฆษณาบนรถประจำทางที่วิ่งผ่าน หรือ รูปภาพบนวัตถุแบนที่ผู้ใช้ถือไว้ขณะที่ขยับมือไปมา
หลังจากตรวจพบรูปภาพแล้ว ARCore จะติดตามตำแหน่งและการวางแนวของรูปภาพต่อไปได้ แม้ว่ารูปภาพจะเคลื่อนที่ออกนอกมุมมองกล้องชั่วคราวก็ตาม
ใช้
AugmentedImage#getTrackingMethod()(Java) หรือArAugmentedImage_getTrackingMethod()(NDK) เพื่อพิจารณาว่ากล้องกำลังติดตามรูปภาพจริง (FULL_TRACKING) หรือกำลังติดตาม ตามตำแหน่งล่าสุดที่ทราบ (LAST_KNOWN_POSE)
ตอนนี้เอกสารประกอบเกี่ยวกับ Cloud Anchors มีคำอธิบายโดยละเอียดเพิ่มเติมเกี่ยวกับวิธี โฮสต์และแก้ไข Anchor แล้ว
มีอะไรใหม่ใน ARCore SDK สำหรับ Unity
ฟีเจอร์ใหม่ของภาพเสริมมีดังนี้
ตอนนี้ ARCore ติดตามรูปภาพเสริมที่เคลื่อนไหวได้แล้ว ตัวอย่างของรูปภาพเคลื่อนไหวอาจเป็นโฆษณาบนรถประจำทางที่วิ่งผ่านหรือรูปภาพบนวัตถุแบนที่ผู้ใช้ถือขณะเคลื่อนที่
หลังจากตรวจพบรูปภาพแล้ว ARCore จะติดตามตำแหน่งและการวางแนวของรูปภาพต่อไปได้ แม้ว่ารูปภาพจะเคลื่อนที่ออกนอกมุมมองกล้องชั่วคราวก็ตาม
AugmentedImage.GetTrackingMethod()API ใหม่ช่วยให้แอปของคุณระบุได้ว่ากล้องกำลังติดตามรูปภาพจริง อยู่หรือไม่ (FullTracking) หรือกำลังติดตาม ตามตำแหน่งที่ทราบล่าสุด (LastKnownPose)
ตอนนี้เอกสารประกอบเกี่ยวกับ Cloud Anchors มีคำอธิบายโดยละเอียดเพิ่มเติมเกี่ยวกับวิธี โฮสต์และแก้ไข Anchor แล้ว
มีอะไรใหม่ใน ARCore SDK สำหรับ iOS
อุปกรณ์ที่รองรับมีดังนี้
iPad Mini รุ่นที่ 5
iPad Air รุ่นที่ 3
ตอนนี้เอกสารประกอบเกี่ยวกับ Cloud Anchors มีคำอธิบายโดยละเอียดเพิ่มเติมเกี่ยวกับวิธี โฮสต์และแก้ไข Anchor แล้ว

