שינויים חדשים וחשובים ב-ARCore.
מה חדש ב-ARCore גרסה 1.54.0
ממשקי API ויכולות חדשים
- נוספו
ArCoreNativeInterop, ArCoreNativeInterop.getNativeHandle()ו-ArCoreNativeInterop.getSymbolTable()כדי לתמוך בשיתוף או בהעברת בעלות של אובייקטים של ARCore בין Java ו-C++.
מה חדש ב-ARCore גרסה 1.53.0
ממשקי API ויכולות חדשים
- הוספנו תמיכה ב-Swift Package Manager (SPM) ב-iOS (אלפא) עבור ARCore Extensions ל-AR Foundation של Unity.
- CocoaPods נשאר מנהל התלות שמוגדר כברירת מחדל.
- התלות נפתרת באמצעות SPM רק אם היא מוגדרת במפורש.
- הוספנו הזרקת דגל של linker
-ObjCלגרסאות build של iOS.
שינויים אחרים
- שודרגה הגרסה של External Dependency Manager for Unity (EDM4U) לגרסה v1.2.187.
- תוקנה שגיאת קומפילציה לתאימות ל-Unity 6.3.
מה חדש ב-ARCore גרסה 1.52.0
שינויים אחרים
- החלפנו את התאורה מ-
Progressive CPUל-Progressive GPUבדוגמאות של ARCore Extensions for Unity's AR Foundation של עוגני Cloud Anchors קבועים וגיאו-מרחביים ב-AR Foundation 6. - הגרסה הזו של ARCore אומתה כתואמת ל-Android 16 MR1.
מה חדש ב-ARCore גרסה 1.51.0
שינויים אחרים
עדכנו את דוגמאות ה-Java
minSdkVersionSharedCamera ו-RawDepth לגרסה 23.העדכון של הדוגמה hello_ar_vulkan_c הפך אותה לאפליקציה פונקציונלית מלאה, שמדגימה הטמעה מלאה של Vulkan בתכונות מרכזיות של ARCore. כולל את התכונות שמוצגות ב-hello_ar_c וב-plane occlusion.
מה חדש ב-ARCore גרסה 1.50.0
שינויים ב-targetSdkVersion של ARCore SDK
ARCore targetSdkVersion עודכן לרמת API 36 ב-Android. אם האפליקציה לא מציינת targetSdkVersion, targetSdkVersion של האפליקציה יהפוך ל-36 בגלל מיזוג המניפסט.
ב-Unity, אם מציינים רמת ה-API לטירגוט בהגדרות הפרויקט > Player > Android > Other Settings בפרויקט Unity, הערך של targetSdkVersion ב-ARCore יוחלף.
מה חדש ב-ARCore גרסה 1.49.0
תיקוני באגים ושיפורי ביצועים שונים
מה חדש ב-ARCore גרסה 1.48.0
התמיכה ב-Unity 6 וב-AR Foundation 6 זמינה באופן מלא
ARCore Extensions for Unity's AR Foundation תומך עכשיו ב-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 גרסה 1.47.0
תמיכה בגרסת בטא ב-Unity 6 וב-AR Foundation 6
ARCore Extensions for Unity's AR Foundation כולל עכשיו תמיכת בטא ב-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
שינויים אחרים
- ההסתעפות
mainבמאגר GitHub של ARCore Extensions הוחלפה כדי לעקוב אחרי ההסתעפותarf5.
מה חדש ב-ARCore גרסה 1.46.0
שינויים ב-targetSdkVersion של ARCore SDK
ARCore targetSdkVersion עודכן לרמת API 35 ב-Android. אם האפליקציה לא מציינת targetSdkVersion, targetSdkVersion של האפליקציה יהפוך ל-35 בגלל מיזוג המניפסט.
ב-Unity, אם מציינים רמת ה-API לטירגוט בהגדרות הפרויקט > Player > Android > Other Settings בפרויקט Unity, הערך של targetSdkVersion ב-ARCore יוחלף.
מה חדש ב-ARCore גרסה 1.45.0
Flash Mode API
ARCore תומך עכשיו בהפעלת מצב הפנס של המכשיר, וכך מאפשר יכולות תפיסה טובות יותר בסביבות חשוכות.
Android (Kotlin/Java)
-
Config.FlashMode: אפשרות הגדרה להפעלה או להשבתה של יחידת הפלאש במכשיר. - במדריך למפתחים מוסבר איך לזהות את היכולות של הפלאש ואיך להפעיל את מצב הפנס.
Android NDK (C)
-
ArFlashMode: אפשרות הגדרה להפעלה או להשבתה של יחידת הפלאש במכשיר. - מידע נוסף על זיהוי יכולות הפלאש ועל הפעלת מצב הפנס זמין במדריך למפתחים.
ARCore Extensions for Unity's AR Foundation תומך ב-AR Foundation 5
ARCore Extensions for AR Foundation תומך עכשיו באופן רשמי ב-AR Foundation 5. כשמשתמשים ב-AR Foundation 5 (הגרסה המאומתת ב-Unity בגרסאות 2022 ו-2023), צריך להשתמש בשיטות ההתקנה הבאות כדי לקבל גרסה תואמת של ARCore Extensions for 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 גרסה 1.44.0
בגרסה הזו אין תכונות חדשות.
מה חדש ב-ARCore גרסה 1.43.0
העברה של Places API בכלי ליצירת נתונים גיאו-מרחביים
התכונה'חיפוש' ב-Geospatial Creator משתמשת עכשיו ב-New Places API של Google. כדי להשתמש בתכונת החיפוש, צריך להפעיל את Places API (חדש) במסוף Google Cloud.
מה חדש ב-ARCore גרסה 1.42.0
הצמדה לקטע מפה בכלי ליצירת נתונים גיאו-מרחביים ל-Unity
לחצן 'להצמיד אל רכיב מוטמע' נוסף לחלונית ARGeospatialCreatorAnchorEditor Inspector. הלחצן הזה מגדיר את ערך הגובה של עוגן פני שטח או Rooftop (עוגן שזמין רק בעורך) לראש גיאומטריית ה-3D Tile בקו הרוחב ובקו האורך הנוכחיים של העוגן. הערה: המאפיין הזה לא משפיע על ההתנהגות בזמן הריצה. כך אפשר להתאים את מיקום העוגן בעורך למיקום שלו בזמן הריצה.
מה חדש ב-ARCore גרסה 1.41.0
Geospatial Creator API
הכלי ליצירת נתונים גיאו-מרחביים ל-Unity כולל עכשיו תמיכה ביצירה ובשינוי של אובייקטים של הכלי ליצירת נתונים גיאו-מרחביים במצב עריכה. המחלקות וממשקי ה-API החדשים שזמינים מתוארים ב-Geospatial Creator API Guide.
תמיכה בגרסאות 5.x של AR Foundation (בטא)
ARCore Extensions for Unity's AR Foundation תומך עכשיו בגרסאות 5.x של AR Foundation. כדי להעביר פרויקט קיים אל AR Foundation, אפשר לעיין במדריך להעברת נתונים.
מה חדש ב-ARCore גרסה 1.40.0
סמנטיקה של סצנות ב-iOS
Scene Semantics API זמין עכשיו ב-ARCore SDK ל-iOS וגם ב-ARCore Extensions ל-AR Foundation של Unity, שמיועד לפלטפורמת iOS. Scene Semantics API מאפשר למפתחים להבין את הסצנה שמסביב למשתמש בזמן אמת, ולסווג פיקסלים ל-11 קטגוריות של רכיבים חיצוניים. מידע נוסף זמין במאמר מבוא לסמנטיקה של סצנות.
iOS
Unity (AR Foundation)
חיפוש נקודות עניין בכלי ליצירת נתונים גיאו-מרחביים ל-Unity
הכלי ליצירת נתונים גיאו-מרחביים ל-Unity תומך עכשיו בחיפוש טקסטואלי כדי למקם את התצוגה של משבצות תלת-ממד צילומיות. מידע נוסף זמין במאמר חיפוש נקודות עניין בכלי ליצירת נתונים גיאו-מרחביים.
מה חדש ב-ARCore גרסה 1.39.0
בגרסה הזו אין תכונות חדשות.
מה חדש ב-ARCore גרסה 1.38.0
בגרסה הזו אין תכונות חדשות.
מה חדש ב-ARCore גרסה 1.37.0
סמנטיקה של סצנות
התכונה 'סמנטיקה של סצנות' מספקת פרטים עשירים יותר על הסצנה שמסביב, וכך קל יותר להבין את העולם שסובב את המשתמש. התכונה 'סמנטיקה של סצנות' מפעילה מודל ML על פיד התמונות מהמצלמה ומספקת תמונה סמנטית שבה כל פיקסל תואם לאחת מ-11 תוויות של מושגים שקשורים לסביבה חיצונית.
למידע נוסף, אפשר לעיין במאמר היכרות עם סמנטיקה של סצנות ובאפליקציית הדוגמה semantics_java.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
גיאומטריית תצוגת רחוב
Streetscape Geometry הוא ARCore Geospatial API חדש שמספק את הגיאומטריה של בניינים ושטחים באזור מסוים סביב המשתמש, כשה-Geospatial API מופעל.
Android (Kotlin/Java)
מדריך למפתחים בנושא גיאומטריית נוף רחוב (Kotlin/Java) בנוסף, אפליקציית הדוגמה geospatial_java עודכנה כך שתכלול את Streetscape Geometry.
Android NDK (C)
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריית נוף רחוב (C).
Unity (AR Foundation)
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריית נוף רחוב (Unity).
iOS
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריית נוף רחוב (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:מבצעת raycast על גיאומטריית נוף רחוב שנטענה בסצנה.
עוגנים על הגג
עוגנים על גגות הם סוג חדש של עוגנים גיאו-מרחביים שעוזרים לעגן תוכן על גג.
Android (Kotlin/Java)
ראו עוגנים גיאו-מרחביים (Java). בנוסף, אפליקציית הדוגמה geospatial_java עודכנה וכוללת עכשיו עוגנים על גגות.
Android NDK (C)
מידע נוסף זמין במאמר בנושא עוגנים גיאוספציאליים (C).
Unity (AR Foundation)
מידע נוסף זמין במאמר בנושא עוגנים גיאוגרפיים. בנוסף, הדוגמה הגיאוספציאלית עודכנה וכוללת עכשיו עוגנים על גגות.
-
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()מספק עוגן לאובייקטים של המשחק בסצנה בקו הרוחב, בקו האורך, בגובה מעל הגג ובכיוון שצוינו. ResolveAnchorOnRooftopPromiseResolveAnchorOnRooftopResult
iOS
מידע נוסף זמין במאמר בנושא עוגנים גיאו-מרחביים (iOS). בנוסף, אפליקציית GeospatialExample עודכנה כך שתכלול עוגנים על גגות.
-
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:יוצר עוגן על גג במיקום שצוין, בגובה מעל הגג במטרים ובכיוון יחסי לכדור הארץ. -
GARCreateAnchorOnRooftopFutureמחזיק את המצב האסינכרוני של פתרון עוגן על הגג. -
GARRooftopAnchorStateמתאר את מצב הפתרון של עוגן על גג.
עומק גיאו-מרחבי
כשמפעילים גם את Depth API וגם את מצבי Streetscape 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.
מידע נוסף זמין במאמר בנושא Rendering your ARCore application using Vulkan ובאפליקציית הדוגמה hello_ar_vulkan_c.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
רינדור Vulkan לא זמין כרגע ל-Unity באמצעות AR Foundation.
ייצוב תמונה אלקטרוני (EIS)
אתם יכולים להגדיר את ARCore כך שישתמש בייצוב תמונה אלקטרוני (EIS), שמחליק את פריימי המצלמה כדי ליצור חוויית משתמש חלקה יותר.
מידע נוסף זמין במאמר בנושא הפעלת ייצוב תמונה אלקטרוני ובאפליקציית הדוגמה hello_eis_kotlin.
Android (Kotlin/Java)
Config.ImageStabilizationModeFrame.transformCoordinates3d()Session.isImageStabilizationModeSupported()- יש בעיה מוכרת שבה קריאה ל-
Frame.transformCoordinates3d()עם קואורדינטות דו-ממדיות שאינןOPENGL_NORMALIZED_DEVICE_COORDINATESתגרום לקריסה במקום להחזיר אתIllegalArgumentException. הבעיה הזו תיפתר בגרסה הבאה.
Android NDK (C)
ArImageStabilizationModeArFrame_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 async APIs
בגרסה הזו מוצגים ממשקי API אסינכרוניים חדשים של ARCore לשיפור הארגונומיה בעבודה עם פעולות אסינכרוניות, בהתאם לפרדיגמה של Future ו-Promise.
Android (Kotlin/Java)
- פתרון של עוגני שטח: משתמשים ב-
Earth.resolveAnchorOnTerrainAsync()כדי לקבלResolveAnchorOnTerrainFuture. הסמל הישןEarth.resolveAnchorOnTerrain()הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - פתרון עוגנים בענן: משתמשים ב-
Session.resolveCloudAnchorAsync()כדי לקבלResolveCloudAnchorFuture. הסמל הישןSession.resolveCloudAnchor()הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - אירוח של עוגנים בענן: משתמשים ב-
Session.hostCloudAnchorAsync()כדי לקבלHostCloudAnchorFuture. הסמלים הישניםSession.hostCloudAnchor()ו-Session.hostCloudAnchorWithTtl()הוצאו משימוש ויכול להיות שיוסרו בגרסה מאוחרת יותר של ARCore. - בודקים את הזמינות של ה-APK: משתמשים ב-
ArCoreApk.checkAvailabilityAsync()כדי לרשום קריאה חוזרת (callback). הסמל הישןArCoreApk.checkAvailability()לא הוצא משימוש.
Android NDK (C)
- פתרון של עוגני שטח: משתמשים ב-
ArEarth_resolveAnchorOnTerrainAsync()כדי לקבלArResolveAnchorOnTerrainFutureאו משתמשים ב-ArResolveAnchorOnTerrainCallback. הסמל הישןArEarth_resolveAndAcquireNewAnchorOnTerrain()הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - פתרון עוגנים בענן: משתמשים ב-
ArSession_resolveCloudAnchorAsync()כדי לקבלArResolveCloudAnchorFutureאו משתמשים ב-ArResolveCloudAnchorCallback. הסמל הישןArSession_resolveAndAcquireNewCloudAnchor()הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - אירוח עוגנים של Cloud: משתמשים ב-
ArSession_hostCloudAnchorAsync()כדי לקבלArHostCloudAnchorFutureאו משתמשים ב-ArHostCloudAnchorCallback. הסמלים הישניםArSession_hostAndAcquireNewCloudAnchor()ו-ArSession_hostAndAcquireNewCloudAnchorWithTtl()הוצאו משימוש ויכול להיות שיוסרו בגרסה מאוחרת יותר של ARCore. - בודקים את הזמינות של ה-APK: משתמשים ב-
ArCoreApk_checkAvailabilityAsync()כדי לרשום קריאה חוזרת (callback). הסמל הישןArCoreApk_checkAvailability()לא הוצא משימוש.
Unity (AR Foundation)
- פתרון של עוגני שטח: משתמשים ב-
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()כדי לקבלResolveAnchorOnTerrainPromise. הסמל הישןARAnchorManagerExtensions.ResolveAnchorOnTerrain()הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - פתרון עוגנים בענן: משתמשים ב-
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()כדי לקבלResolveCloudAnchorPromise. הסמל הישןARAnchorManagerExtensions.ResolveCloudAnchorId()הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - אירוח של עוגנים בענן: משתמשים ב-
ARAnchorManagerExtensions.HostCloudAnchorAsync()כדי לקבלHostCloudAnchorPromise. הסמלים הישנים שלARAnchorManagerExtensions.HostCloudAnchor()הוצאו משימוש ועשויים להיות מוסרים בגרסה מאוחרת יותר של ARCore.
iOS
- פתרון של עוגני שטח: משתמשים ב-
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:כדי לקבלGARCreateAnchorOnTerrainFuture. הסמל הישןGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - פתרון עוגנים בענן: משתמשים ב-
GARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:כדי לקבלGARResolveCloudAnchorFuture. הסמל הישןGARSession.resolveCloudAnchorWithIdentifier:error:הוצא משימוש ועשוי להיות מוסר בגרסה מאוחרת יותר של ARCore. - אירוח עוגנים בענן: משתמשים ב-
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:כדי לקבלGARHostCloudAnchorFuture. הסמלים הישניםGARSession.hostCloudAnchor:error:ו-GARSession.hostCloudAnchor:TTLDays:error:הוצאו משימוש ויכול להיות שיוסרו בגרסה מאוחרת יותר של ARCore.
מה חדש ב-ARCore גרסה 1.36.0
תמיכה ב-Swift Package Manager ב-iOS
מעכשיו יש תמיכה רשמית ב-Swift Package Manager ב-ARCore SDK ל-iOS. הוראות לשילוב עם ARCore באמצעות Swift Package Manager זמינות במאמר הפעלת AR באפליקציית iOS.
מה חדש ב-ARCore גרסה 1.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 for Android NDK
- הערות לגבי הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.34.0
בודקים אם היכולות הגיאוספציאליות זמינות במיקום הנוכחי של המכשיר
ה-Geospatial API יכול עכשיו לבדוק את הזמינות של Visual Positioning System (VPS) במיקום אופקי שצוין בזמן הריצה. אפשר להשתמש ב-API הזה בלי הפעלה של סשן AR: למשל, כדי להציג לחצן 'כניסה ל-AR' רק כשה-VPS זמין.
- Java/Kotlin:
Session.checkVpsAvailabilityAsync() - C:
ArSession_checkVpsAvailabilityAsync() - iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler: - Unity (AR Foundation):
AREarthManager.CheckVpsAvailability()
כיוון תנוחה גיאו-מרחבית
עכשיו אפשר לראות את הכיוון של תנוחות גיאוספציאליות במרחב תלת-ממדי.
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion() - C:
ArEarth_getGeospatialPose() - iOS:
GARGeospatialTransform.eastUpSouthQTarget - Unity:
GeospatialPose.EunRotation()
המרות של מיקום גיאו-מרחבי
עכשיו אפשר להמיר תנוחות גיאוספציאליות לתנוחות במרחב העולמי (AR) ולהפך.
כדי לקבל את המיקום הגיאוגרפי ממיקום במציאות רבודה:
- Java/Kotlin:
Earth.getGeospatialPose() - C:
ArEarth_getGeospatialPose() - iOS:
GARSession.geospatialTransformFromTransform:error: - Unity:
AREarthManager.Convert(Pose)
כדי לקבל את תנוחת ה-AR מתנוחה גיאו-מרחבית:
- Java/Kotlin:
Earth.getPose() - C:
ArEarth_getPose() - iOS:
GARSession.transformFromGeospatialCoordinate:altitude:eastUpSouthQTarget:error: - Unity:
AREarthManager.Convert(GeospatialPose)
לפוזיציות הגיאוספציאליות שמתקבלות מהפונקציות האלה יש ערך כיוון שמוגדר לאפס. במקום זאת, משתמשים ב:
- Android (Java/Kotlin/C): קווטרניון ה-EUS של התנוחה
- iOS:
eastUpSouthQTargetשל התנוחה - Unity:
EunRotationשל התנוחה
שינויים ועדכונים נוספים
שינויים נוספים, תיקוני באגים ושיפורי ביצועים מפורטים בנתוני הגרסה:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני גרסה של ARCore ל-Android NDK
- הערות לגבי הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.33.0
נקודת קצה חדשה של Cloud Anchors
- כדי להשתמש ב-Cloud Anchors, צריך להפעיל את ARCore API במקום את ARCore Cloud Anchor API הישן יותר, שיצא משימוש. כדי לתמוך בגרסאות ישנות יותר של האפליקציה, אפשר להפעיל את שתי האפשרויות במהלך המעבר. אפליקציות שפותחו באמצעות 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.
- פרטים נוספים זמינים במאמר שינויים בנקודת הקצה של ARCore 1.33 Cloud Anchor.
- ב-API החדש נעשה שימוש בשם הדומיין
עוגנים של שטח
- Geospatial Terrain anchor API יוצר עוגן במיקום אופקי ובגובה שצוינו ביחס למיקום האופקי של פני השטח.
שינויים ועדכונים נוספים
שינויים נוספים, תיקוני באגים ושיפורי ביצועים מפורטים בנתוני הגרסה:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני גרסה של ARCore ל-Android NDK
- הערות לגבי הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.32.0
בגרסה הזו אין תכונות חדשות.
Android ו-Unity (AR Foundation) ל-Android
- ARCore
targetSdkVersionעודכן לרמת API 32 ב-Android. אם האפליקציה לא מציינתtargetSdkVersion, הערך שלtargetSdkVersionבאפליקציה יהיה 32 בגלל מיזוג המניפסט.- Android SDK: אם מציינים
targetSdkVersionב-build.gradleאו ב-AndroidManifest.xmlשל הפרויקט, הערך שלtargetSdkVersionב-ARCore יוחלף. - AR Foundation ל-Android: אם מציינים רמת ה-API לטירגוט ב-Project Settings > Player > Android > Other Settings (הגדרות הפרויקט > נגן > Android > הגדרות אחרות) בפרויקט Unity, הערך
targetSdkVersionשל ARCore יוחלף.
- Android SDK: אם מציינים
שינויים ועדכונים נוספים
שינויים נוספים, תיקוני באגים ושיפורי ביצועים מפורטים בנתוני הגרסה:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני גרסה של ARCore ל-Android NDK
- הערות לגבי הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.31.0
ARCore Geospatial API
ARCore Geospatial API החדש משתמש בנתונים ממודלים תלת-ממדיים של Google Earth ובנתונים של תמונות Street View ממפות Google כדי לאפשר לאפליקציה שלכם ליצור חוויות מציאות רבודה אימרסיביות שמבוססות על מיקום ובקנה מידה גלובלי.
במאמר מבוא ל-ARCore Geospatial API אפשר לקרוא תיעוד למפתחים שספציפי לפלטפורמה, ולקבל מידע על תחילת העבודה עם Geospatial API החדש.
עומק לטווח ארוך
ARCore Depth API עבר אופטימיזציה כך שיכלול חישה של עומק בטווח ארוך יותר, וכך יגדל טווח התצפיות של העומק שניתן לייצג. כל 16 הביטים של תמונת העומק משמשים, ומספקים טווח מקסימלי של 65,535 מילימטרים. בעבר, רק 13 ביטים אוכלסו, עם מגבלה של 8,191 מילימטרים.
בשינויים ב-Depth אפשר למצוא מאמרי עזרה למפתחים שספציפיים לפלטפורמה, ולהבין את השינויים ב-Depth API.
הערות ספציפיות לפלטפורמה
Android
ממשקי API חדשים של ARCore Geospatial
Java
-
Earthמספק יכולת לוקליזציה בקואורדינטות יחסיות ל-Earth.-
Earth.createAnchor()יוצרתAnchorחדש במיקום ובכיוון שצוינו ביחס לכדור הארץ.
-
-
Earth.Earthstateמתאר את המצב הנוכחי שלEarth, כוללTrackingState. -
GeospatialPoseמתאר מיקום ספציפי, גובה וכיוון מצפן ביחס לכדור הארץ.
-
C
-
ArEarthמאפשר לוקליזציה בקואורדינטות יחסיות ל-Earth.-
ArEarth_acquireNewAnchor()יוצרתAnchorחדש במיקום ובכיוון שצוינו ביחס לכדור הארץ. -
ArEarthStateמתאר את המצב הנוכחי שלArEarth, כוללArTrackingState.
-
-
ArGeospatialPoseמתאר מיקום ספציפי, גובה וכיוון מצפן ביחס לכדור הארץ.
-
עדכון של ARCore Depth APIs
Java
- השתנו הקריאות לפונקציות של Depth API:
Frame.acquireDepthImageכדיFrame.acquireDepthImage16Bits.Frame.acquireRawDepthImageכדיFrame.acquireRawDepthImage16Bits.- פורמטי התמונות של הפלט בשתי השיחות השתנו מ-
android.graphics.ImageFormat#DEPTH16ל-android.hardware.HardwareBuffer#D_16. - העומק עדיין מיוצג כמספר שלם של 16 ביט ביחידות של מילימטרים, אבל עכשיו נעשה שימוש בכל 16 הביטים כדי לייצג את העומק, מה שמאפשר לטווח המקסימלי שניתן להצגה לעבור מ-8,191 מ"מ ל-65,535 מ"מ.
- הוצאנו משימוש את הקריאות לפונקציות Depth API:
Frame.acquireDepthImageו-Frame.acquireRawDepthImage. במקומה צריך להשתמש ב-Frame.acquireDepthImage16Bitsוב-Frame.acquireRawDepthImage16Bits.
- השתנו הקריאות לפונקציות של Depth API:
C
- השתנו הקריאות לפונקציות של Depth API:
ArFrame_acquireDepthImageכדיArFrame_acquireDepthImage16Bits.ArFrame_acquireRawDepthImageעדArFrame_acquireRawDepthImage16Bits- פורמט התמונה של הפלט בשתי השיחות השתנה מ-
AR_IMAGE_FORMAT_DEPTH16ל-AR_IMAGE_FORMAT_D_16. - העומק עדיין מיוצג כמספר שלם של 16 ביט ביחידות של מילימטרים, אבל עכשיו נעשה שימוש בכל 16 הביטים כדי לייצג את העומק, מה שמאפשר לטווח המקסימלי שניתן להצגה לעבור מ-8,191 מ"מ ל-65,535 מ"מ.
- הוצאנו משימוש את הקריאות לפונקציות Depth API:
ArFrame_acquireDepthImageו-ArFrame_acquireRawDepthImage. במקומה צריך להשתמש ב-ArFrame_acquireDepthImage16Bitsוב-ArFrame_acquireRawDepthImage16Bits.
- השתנו הקריאות לפונקציות של Depth API:
Unity (AR Foundation)
ממשקי API חדשים של ARCore Geospatial:
-
AREarthManagerמאפשר לוקליזציה בקואורדינטות יחסיות ל-Earth.-
EarthTrackingStateמקבל את מצב המעקב של כדור הארץ עבור המסגרת האחרונה. -
EarthStateשומר על תנאי השגיאה של Earth.
-
-
GeospatialPoseמתאר מיקום ספציפי, גובה וכיוון מצפן יחסית לכדור הארץ. -
ARGeospatialAnchorמספק עוגן לאובייקטים של המשחק בסצנה, שמוגדרים במיקום ובכיוון ביחס לכדור הארץ.
iOS
ממשקי API חדשים של ARCore Geospatial:
GAREarthמספק לוקליזציה ביחס לכדור הארץ.GAREarthState.earthStateמנהל מצבי שגיאה ותנאים.-
GAREarthState.trackingStateשומר על מצב המעקב, שנדרש לנתונים גאו-מרחביים.
GARGeospatialTransformייצוג של טרנספורמציה גלובלית, כולל מיקום, כיוון ביחס לצפון, גובה והערכות דיוק.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:יוצר עוגן גיאו-מרחבי במיקום ובכיוון שצוינו ביחס לכדור הארץ.
שינויים אחרים
שינויים נוספים, תיקוני באגים ושיפורי ביצועים מפורטים בנתוני הגרסה:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני גרסה של ARCore ל-Android NDK
- הערות לגבי הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.30.0
בגרסה הזו אין תכונות חדשות.
Android
- הערכים המוחזרים של ה-API מסומנים ב-
@NonNullוב-@Nullable. - עדכנו את הגרסאות של כלי ה-build שמשמשות ליצירת דוגמאות: Gradle ל-7.0.2 ופלאגין של Android Gradle ל-7.0.4. לא צריך לשדרג את הכלים האלה כדי להשתמש באפליקציות קיימות של ARCore. מידע על תכונות חדשות, בעיות ידועות ואי-תאימות זמין במסמכי התיעוד של Android בנושא הפלאגין של Android Gradle.
Unity (AR Foundation)
נוספה גרסת
arcore-unity-extensions-without-edm4u.tgzחדשה. בגרסת ההפצה הזו לא נכללות תלויות חיצוניות כמו External Dependency Manager for Unity, ואפשר לשדרג ל-EDM. יכול להיות שהשימוש בגרסה הקלה הזו יפתור בעיות של חוסר תאימות כשמשתמשים בספריות של Firebase. כדי להתחיל, אפשר לעיין בהוראות ההתקנה של ARCore Extensions for AR Foundation.שדרגנו את ExternalDependencyManager לגרסה 1.2.168 כדי לשפר את התמיכה בגרסה 2021.2 ואילך. פרטים נוספים זמינים ביומן השינויים של EDM.
נפתרה בעיה שבה כל פריים מוגדר בסשן של ARCore, גם אם אין שינוי בהגדרת הסשן, מה שגורם לירידה ב-FPS.
iOS
- תיקוני באגים ושיפורי ביצועים שונים.
מה חדש ב-ARCore גרסה 1.29.0
בגרסה הזו אין תכונות חדשות.
Android
- hello_ar_java ו-hello_ar_kotlin: שינינו את הצבע של אובייקט כשממקמים אותו באמצעות
SCREENSPACE_WITH_APPROXIMATE_DISTANCEכדי להבחין טוב יותר בין אובייקטים שממוקמים באמצעות מיקום מיידי. - persistent_cloud_anchor_java: נוספה דרישת build חסרה לדוגמה. תוקן באג שגרם לכך שהמצב של כל עוגן היה
CloudAnchorState ERROR_NOT_AUTHORIZEDגם אם הפרויקט הוגדר בצורה נכונה.
Unity (AR Foundation)
- חבילת ARCore Extensions תלויה עכשיו ב-ARKit XR Plugin כדי לוודא שגרסת AR Foundation המותקנת תואמת לגרסת ARKit XR Plugin. תיקנו שגיאת קומפילציה שמתרחשת כשמתקינים את ARCore Extensions ב-Unity 2019.x ומפעילים את הפלאגין ARKit XR.
- ההגדרות של פרויקט ARCore Extensions הועברו מProject Settings > XR > ARCore Extensions (הגדרות הפרויקט > XR > ARCore Extensions) אל Project Settings > XR Plug-in Management > ARCore Extensions (הגדרות הפרויקט > ניהול פלאגינים של XR > ARCore Extensions).
-
ARCoreExtensionsConfig,ARCoreExtensionsCameraConfigFilter,ARCoreRecordingConfigהועברו מהתפריט Create > XR > ARCore Extensions לתפריט Create > XR.
iOS
- תיקוני באגים ושיפורי ביצועים שונים.
נתוני גרסה מלאים
- נתוני גרסה מלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore ל-Android NDK
- הערות מלאות על הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.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 for Unity (הוצא משימוש): הקריאות אל
Frame.CameraImage.AcquireCameraImageBytes()יהיו בגודל0x0פיקסלים. קריאות אלFrame.CameraMetadata.GetAllCameraMetadataTags()יחזירוList<CameraMetadataTag>ריק.
- C: שיחות אל
- Java: הפונקציה
ArImage#getCropRect()מחזירה עכשיו מלבן חיתוך בגודל מלא, כלומר כל הפיקסלים בתמונה תקפים. מידע נוסף זמין בכתובתandroid.media.Image#getCropRect().
מה חדש ב-ARCore גרסה 1.27.0
בגרסה הזו אין תכונות חדשות. בנתוני הגרסאות הבאים מפורטים תיקוני באגים ושיפורים בביצועים.
- נתוני גרסה מלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore ל-Android NDK
- הערות מלאות על הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
בנוסף לתיקוני באגים שונים, הגרסה הזו כוללת את השינויים הבאים.
אפליקציות לדוגמה ב-Kotlin
נוסף hello_ar_kotlin כדי להדגים שיטות מומלצות לשימוש ב-Kotlin.
מידע נוסף זמין במאמר תחילת העבודה עם Android.
נוסף ml_kotlin כדי להמחיש איך אפשר להשתמש במודל סיווג תמונות עם ARCore.
מידע נוסף זמין במאמר בנושא שימוש ב-ARCore כקלט למודלים של למידת מכונה.
מה חדש ב-ARCore גרסה 1.26.0
בגרסה הזו נוספו השינויים הבאים:
- מעכשיו יש תמיכה ב-URI במערכי נתונים בהקלטה והפעלה.
שינויים ועדכונים נוספים
הערות הגרסה הבאות כוללות מידע על תיקוני באגים נוספים ושינויים נוספים שעלולים לגרום לכשל.
- נתוני גרסה מלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore ל-Android NDK
- הערות מלאות על הגרסה של ARCore SDK ל-iOS
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.25.0
בגרסה הזו אין תכונות חדשות. בנתוני הגרסאות הבאים מפורטים תיקוני באגים ושיפורים בביצועים.
- נתוני גרסה מלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore ל-Android NDK
- הערות מלאות על הגרסה של ARCore SDK ל-iOS
- הערות מלאות על הגרסה של ARCore SDK for Unity
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.24.0
בגרסה הזו נוספו השינויים הבאים:
- Raw Depth API חדש שמספק תמונת עומק ללא סינון במרחב התמונה
- הוספנו ל-Recording & Playback API את היכולת לתעד נתונים מותאמים אישית
- היכולת לבצע בדיקות היט של עומק
עומק גולמי
Raw Depth API מספק נתוני עומק לתמונה ממצלמה ברמת דיוק גבוהה יותר בהשוואה לנתונים מלאים של Depth API, אבל לא תמיד מכסה כל פיקסל. אפשר גם לעבד עוד תמונות עומק גולמיות, יחד עם תמונות האמינות התואמות שלהן, וכך לאפשר לאפליקציות להשתמש רק בנתוני העומק שיש להם רמת דיוק מספקת לתרחיש השימוש הספציפי שלהן.
מדריכים למפתחים:
הקלטה של טראק בהתאמה אישית
היכולת החדשה לעקוב אחרי נתונים מותאמים אישית ב-Recording & Playback API מאפשרת לכם להוסיף נתונים מותאמים אישית למסגרת ARCore במהלך ההקלטה, ולאחזר את אותם נתונים מהמסגרת במהלך ההפעלה.
מדריכים למפתחים:
בדיקות כניסות לעומק
בעבר, אפשר היה לבצע בדיקות פגיעה רק במישורים מזוהים, ולכן המיקומים היו מוגבלים למשטחים גדולים ושטוחים. בדיקות עומק משתמשות במידע עומק חלק וגם במידע עומק גולמי כדי לספק תוצאות מדויקות יותר של פגיעות, גם במשטחים לא מישוריים וגם במשטחים עם טקסטורה דלה.
מדריכים למפתחים:
שינויים ועדכונים נוספים
הערות הגרסה הבאות כוללות מידע על תיקוני באגים נוספים ושינויים נוספים שעלולים לגרום לכשל.
- נתוני גרסה מלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore ל-Android NDK
- הערות מלאות על הגרסה של ARCore SDK ל-iOS
- הערות מלאות על הגרסה של ARCore SDK for Unity
- הערות לגבי הגרסה של ARCore Extensions for AR Foundation
מה חדש ב-ARCore גרסה 1.23.0
בהמתנה לתמיכה בהפעלת שתי המצלמות במקביל
התמיכה בהפעלת שתי המצלמות במקביל תושק בשבועות הקרובים. מידע נוסף זמין בדף מכשירים נתמכים.
כלים חדשים לניפוי באגים
על ידי שליחת Broadcast Intent, מפתחים יכולים להפעיל:
רישום ביומן של קריאות ל-ARCore API ביומן ניפוי הבאגים של Android
שכבת-העל של הביצועים ב-ARCore
אירוח ופתרון של עוגני Cloud Anchors
אפליקציות עם תמיכה במציאות רבודה שמבוססות על ARCore SDK בגרסה 1.11.0 או בגרסאות קודמות לא יכולות יותר לארח או לפתור עוגנים בענן.
C: עוגני 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: לעוגני ענן שמוחזרים על ידי
XPSession.CreateCloudAnchor(Anchor)ו-XPSession.ResolveCloudAnchor(string)תמיד יהיה סטטוסCloudServiceResponse.ErrorInternal.
אפליקציות שנוצרו באמצעות ARCore SDK בגרסה 1.12.0 ואילך לא מושפעות. השימוש שלהם ב-ARCore Cloud Anchor API כפוף למדיניות ההוצאה משימוש.
שינויים ועדכונים נוספים
במסמכי הערות הגרסה הבאים מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש ב-ARCore גרסה 1.22.0
בגרסה הזו נוספו ממשקי API חדשים של Recording and Playback וממשקי API של Camera Config Filter ל-ARCore Extensions ל-AR Foundation. פרטים נוספים זמינים בהערות המוצר המלאות של ARCore Extensions.
שינויים ועדכונים נוספים
במסמכי הערות הגרסה הבאים מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש ב-ARCore גרסה 1.21.0
בגרסה הזו נוספו ממשקי API חדשים להקלטה ולהפעלה ב-Android, ב-Android NDK וב-Unity.
הקלטה והפעלה
בעזרת ממשקי ה-API של הקלטה והפעלה, אתם יכולים להקליט נתוני וידאו ו-AR פעם אחת בסביבה נתונה ולהשתמש בתוכן הזה כדי להחליף סשן חי של מצלמה למטרות בדיקה. ARCore שומר סשנים מוקלטים בקובצי MP4 שמכילים כמה רצועות וידאו ונתונים שונים אחרים במכשיר. אחר כך אפשר להגדיר את האפליקציה כך שתשתמש בנתונים האלה במקום בנתונים משידור חי מהמצלמה. כך תוכלו להפעיל את התוכן הזה שוב ושוב כדי לנסות אפקטים שונים של AR בלי שתצטרכו לחזור לשטח.
לקבלת פרטים נוספים:
Java:
ג.
Unity:
מה חדש ב-ARCore גרסה 1.20.0
בגרסה הזו נוספו השינויים הבאים:
הוספנו תמיכה בעוגני Cloud Anchors קבועים.
עדכנו את היכולות של מטא-נתונים של תמונות ל-Android ול-Android NDK.
הנחיות חדשות שדורשות Gradle בגרסה 5.6.4 ואילך, כדי לתמוך ב-ARCore Extensions ל-AR Foundation או ב-ARCore SDK ל-Unity (גרסה 1.19 ואילך) עם Unity 2018.4 ואילך.
תמיכה חדשה ב-Cloud Anchors קבועים
לפני ARCore v1.20, היה אפשר לפתור עוגנים בענן עד 24 שעות אחרי שהם התארחו בפעם הראשונה. עם עוגני Cloud Anchors קבועים, עכשיו אפשר ליצור עוגן Cloud Anchor עם זמן חיים (TTL) של יום אחד עד 365 ימים. אפשר גם להאריך את משך החיים של העוגן אחרי שהוא כבר מתארח באמצעות Cloud Anchor Management API.
השימוש ב-Cloud Anchors קבועים מכוסה על ידי מדיניות ההוצאה משימוש החדשה של Cloud Anchors.
C: מדריך למפתחים,
ArSession_hostAndAcquireNewCloudAnchorWithTtl, ו-ArSession_estimateFeatureMapQualityForHosting.Java: מדריך למפתחים,
hostCloudAnchorWithTtlו-estimateFeatureMapQualityForHosting.iOS: מדריך למפתחים,
hostCloudAnchor:TTLDays:error:וestimateFeatureMapQualityForHosting:.ARCore Extensions for AR Foundation: מדריך למפתחי Android, מדריך למפתחי iOS,
ARAnchorManager.HostCloudAnchor(ARAnchor, int),ARAnchorManager.SetAuthToken(string)ו-ARAnchorManager.EstimateFeatureMapQualityForHosting(Pose).טירגוט ב-Unity ל-Android: מדריך למפתחים,
XPSession.CreateCloudAnchor(Anchor, int)ו-XPSession.EstimateFeatureMapQualityForHosting(Pose).מיקוד ל-iOS ב-Unity: מדריך למפתחים,
XPSession.SetAuthToken(string)ו-XPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int).
שינויים ועדכונים נוספים
במסמכי הערות הגרסה הבאים מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש ב-ARCore גרסה 1.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 גרסה 1.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 במרחב אמיתי עם מזוודה ליד דלת. ממשק ה-API של העומק מסתיר בצורה נכונה את הדמות מאחורי קצה הגזע.
לקבלת פרטים נוספים:
Android:
Android NDK:
Unity:
מה חדש ב-ARCore גרסה 1.17.0
מה חדש ב-ARCore SDK ל-Android
נוספו שיטות חדשות שמאפשרות שמירת נתונים זמנית של כמה פריימים מהמצלמה. אפשר להשתמש בטכניקה הזו כדי להקטין את השונות בשיעורי הפריימים, יחד עם טכניקות אחרות כמו רינדור מרובה-הליכי משנה.
נוספו שימוש חסר בחיישן עומק ופונקציות getter של קצב פריימים (FPS) יעד:
אפשר גם לעיין בנתוני הגרסה המלאים של Android SDK ל-Android.
מה חדש ב-ARCore SDK for Unity
- הוספנו תמיכה ברינדור מרובה-הליכי בגרסה 2018.2 של Unity ואילך, שברוב המקרים משפר את הביצועים ויכול לעזור להפחית את השונות בקצב הפריימים. זו הגדרה של פרויקט Unity שנמצאת בהגדרות הפרויקט > המשחק > Android > הגדרות נוספות > Multithreaded Rendering (רינדור מרובה-הליכי משנה). פרטים נוספים זמינים במדריך למפתחים.
- נוספו
SessionStatus.ErrorCameraNotAvailableו-SessionStatus.ErrorIllegalStateכדי לציין מצבי שגיאה ספציפיים בסשן ARCore.
אפשר גם לעיין בהערות הגרסה המלאות של ARCore SDK for Unity.
מה חדש ב-ARCore SDK ל-iOS
גודל הקובץ הבינארי של Cloud Anchors SDK קטן באופן משמעותי.
יש עכשיו תמיכה ב-Bitcode ב-Augmented Faces.
אפשר גם לעיין בנתוני הגרסה המלאים של ARCore SDK ל-iOS.
מה חדש ב-ARCore גרסה 1.16.0
הערות חשובות לגבי ARCore SDK ל-Android ו-Sceneform SDK ל-Android
בגרסה הזו נוספו השינויים הבאים:
- ברוב המכשירים מוצגות עכשיו הגדרות נוספות של מצלמות נתמכות עם רזולוציות נמוכות יותר של טקסטורות ב-GPU בהשוואה לרזולוציית ברירת המחדל של טקסטורות ב-GPU של המכשיר.
פרטים נוספים מופיעים במאמר בנושא מכשירים נתמכים ב-ARCore.
ההגדרות המורחבות האלה של GPU זמינות דרך
getSupportedCameraConfigs(CameraConfigFilter)API.
ראה גם:
מה חדש ב-ARCore Extensions for 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 for Unity
בגרסה הזו נוסף השינוי המשמעותי הבא:
- ברוב המכשירים מוצגות עכשיו הגדרות נוספות של מצלמות נתמכות עם רזולוציות נמוכות יותר של טקסטורות ב-GPU בהשוואה לרזולוציית ברירת המחדל של טקסטורות ב-GPU של המכשיר. (לפרטים נוספים אפשר לעיין במאמר בנושא מכשירים שתומכים ב-ARCore). הרזולוציות המורחבות של ה-GPU זמינות דרך ARCoreCameraConfigFilter API.
ראה גם:
הערות מלאות על הגרסה של ARCore SDK for Unity
מה חדש ב-ARCore גרסה 1.15.0
מה חדש ב-ARCore Extensions for AR Foundation
בגרסה הזו נוספו השינויים הבאים:
הוספנו דוגמה לשימוש ב-CloudAnchors שמראה איך ליצור חוויות AR משותפות גם ל-Android וגם ל-iOS. הוראות ל-Android או ל-iOS
גרסה Unity 2019.2.17f1 היא עכשיו הגרסה המומלצת המינימלית לשימוש עם ARCore Extensions.
הערות מלאות על הגרסה של ARCore Extensions
מה חדש ב-ARCore SDK for Unity
בגרסה הזו יש את הבעיות הידועות הבאות.
יכול להיות שהתצוגה המקדימה המיידית תקפא ב-Unity כשמשתמשים ב-Android 9 ובכבל USB 3. כדי לפתור את הבעיה, צריך לעדכן ל-Android 10 או להשתמש בכבל USB 2.
יכול להיות שהתצוגה המקדימה המיידית לא תוצג במכשיר אם הרזולוציה של תצוגת המשחק ב-Unity גבוהה מדי. כדי לפתור את הבעיה, צריך להקטין את הרזולוציה של תצוגת המשחק ב-Unity בכלי Editor.
הערות מלאות על הגרסה של ARCore SDK for Unity
שינויים נוספים
במסמכי הערות הגרסה הבאים מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש ב-ARCore גרסה 1.14.0
בגרסה הזו נוספו השינויים הבאים:
אם אפליקציה מאבדת באופן זמני את הגישה למצלמה לטובת אפליקציה אחרת במכשיר, הסיבה לכשל במעקב תהיה עכשיו ספציפית יותר:
Android:
TrackingFailureReasonהערך הואCAMERA_UNAVAILABLEבמקוםNONE.Android NDK:
ArTrackingFailureReasonsהואAR_TRACKING_FAILURE_REASON_CAMERA_UNAVAILABLEבמקוםAR_TRACKING_FAILURE_REASON_NONE.Unity:
Session.LostTrackingReasonהואLostTrackingReason.CameraUnavailableבמקוםNone.
Google אוספת ומעבדת נתונים מהשימוש שלכם בחבילת ARCore Extensions בהתאם למדיניות הפרטיות של Google ולתנאים ולהגבלות של Google APIs. אתם יכולים לבטל את ההסכמה.
מה חדש ב-ARCore גרסה 1.13.0
בגרסה הזו נוספו השינויים הבאים:
תמיכה בשימוש ב-ARCore Extensions for Unity's AR Foundation כדי ליצור אפליקציות ל-iOS עם Cloud Anchors.
במסמכי הערות הגרסה הבאים מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש ב-ARCore גרסה 1.12.0
בגרסה הזו נוספו השינויים הבאים:
הוספנו את התכונה 'פנים מורחבות' ל-iOS. מידע נוסף זמין בסקירה הכללית, במדריך למתחילים ובמדריך למפתחים.
תמיכה בשימוש ב-ARCore Extensions for Unity's AR Foundation כדי ליצור אפליקציות ל-Android עם Cloud Anchors.
השינויים הבאים ב-Cloud Anchors:
- כדי לעמוד בדרישות בנושא פרטיות המעודכנות שלנו לשימוש ב-ARCore SDK בגרסה 1.12 ואילך, אתם צריכים לחשוף את השימוש ב-Cloud Anchors באפליקציה שלכם באופן בולט. לשם כך, עליכם להוסיף למסך ההודעה את הטקסט הבא וקישור למידע נוסף: "כדי להפעיל את הסשן הזה, Google תעבד נתונים חזותיים מהמצלמה שלך". אתם יכולים לעשות זאת באמצעות הטמעת תהליך ההודעה המומלץ למשתמשים שזמין באפליקציות לדוגמה של Cloud Anchor.
פרטים נוספים זמינים במאמר בנושא דרישות בנוגע לפרטיות המשתמשים.
לפרטים נוספים על Cloud Anchors:
Android:
Android NDK:
iOS:
Unity:
תוספים ל-ARCore:
מה חדש ב-ARCore גרסה 1.11.0
בגרסה הזו נוספו השינויים הבאים:
השם של שירות ARCore שונה לGoogle Play Services למציאות רבודה. במכשירי Google Play, היא מופצת עכשיו כחלק מ-Google Play Services.
הגדרות המצלמה של ARCore מכוונות ל-60 פריימים לשנייה במכשירים נתמכים, ומתעדפות את השימוש בחיישן העומק במכשירים שיש בהם חיישן כזה. אפשר להשתמש במסננים חדשים של הגדרות המצלמה כדי להגביל את קצב הפריימים של המצלמה ל-30 פריימים לשנייה, למנוע מ-ARCore להשתמש בחיישן עומק או לסנן לפי שתי האפשרויות.
פרטים נוספים על הגדרות המצלמה:
Android:
Android NDK:
Unity:
מה חדש ב-ARCore גרסה 1.10.0
בגרסה הזו נוספו יכולות חדשות של הערכת תאורה סביבתית ב-HDR ל-API של הערכת התאורה ל-Android, ל-Android NDK ול-Unity.
ממשקי ה-API האלה משתמשים בלמידת מכונה כדי לנתח את תמונת המצלמה שמוזנת להם, וכדי להעריך את התאורה בסביבה. אפשר להשתמש בנתוני הערכת התאורה האלה כדי להציג תאורה מציאותית במיוחד, כולל אור ראשי מכוון, צללים, תאורה בסביבה, אזורים בהירים והשתקפויות באובייקטים וירטואליים. התוצאה היא תוכן וירטואלי שמרגיש ריאליסטי יותר.
לקבלת פרטים נוספים:
Android:
Android NDK:
Unity:
מה חדש ב-ARCore גרסה 1.9.0
מה חדש ב-ARCore SDK ל-Android
בגרסה הזו הוספנו את ממשקי ה-API והתכונות החדשים הבאים:
Scene Viewer הוא כלי לצפייה בסצנות תלת-ממדיות שמאפשר לחוות חוויות מציאות רבודה (AR) באתר שלכם. התכונה הזו מאפשרת למשתמשים במכשירי Android לנייד למקם בקלות מודלים תלת-ממדיים שמתארחים באינטרנט, לצפות בהם ולבצע איתם אינטראקציה בסביבה שלהם.
תכונות חדשות של תמונות משופרות:
ARCore עכשיו עוקב אחרי תמונות במציאות רבודה בתנועה. דוגמאות לתמונות נעות הן פרסומת על אוטובוס חולף או תמונה על אובייקט שטוח שהמשתמש מחזיק בזמן שהוא מזיז את היד.
אחרי שמזוהה תמונה, ARCore יכול להמשיך לעקוב אחרי המיקום והכיוון של התמונה, גם אם התמונה זזה באופן זמני מחוץ לשידור מהמצלמה.
משתמשים ב-
AugmentedImage#getTrackingMethod()(Java) או ב-ArAugmentedImage_getTrackingMethod()(NDK) כדי לקבוע אם המצלמה עוקבת כרגע אחרי התמונה המורחבת (FULL_TRACKING), או אם המעקב מתבצע על סמך המיקום האחרון הידוע שלה (LAST_KNOWN_POSE).
במאמרי העזרה בנושא Cloud Anchors יש עכשיו הסבר מפורט יותר על אירוח של עוגנים ועל פתרון בעיות שקשורות לעוגנים.
מה חדש ב-ARCore SDK for Unity
תכונות חדשות של תמונות משופרות:
ARCore עכשיו עוקב אחרי תמונות במציאות רבודה בתנועה. דוגמאות לתמונות נעות יכולות להיות מודעה על אוטובוס חולף או תמונה על אובייקט שטוח שהמשתמש מחזיק ומזיז.
אחרי שמזוהה תמונה, ARCore יכול להמשיך לעקוב אחרי המיקום והכיוון של התמונה, גם אם התמונה זזה באופן זמני מחוץ לשידור מהמצלמה.
AugmentedImage.GetTrackingMethod()ה-API החדש מאפשר לאפליקציה לקבוע אם המצלמה עוקבת כרגע אחרי התמונה המורחבת (FullTracking), או אם המעקב מתבצע על סמך המיקום האחרון הידוע שלה (LastKnownPose).
במאמרי העזרה בנושא Cloud Anchors יש עכשיו הסבר מפורט יותר על אירוח של עוגנים ועל פתרון בעיות שקשורות לעוגנים.
מה חדש ב-ARCore SDK ל-iOS
תמיכה במכשירים הבאים:
iPad Mini דור חמישי
iPad Air דור שלישי
במאמרי העזרה בנושא Cloud Anchors יש עכשיו הסבר מפורט יותר על אירוח של עוגנים ועל פתרון בעיות שקשורות לעוגנים.

