שינויים חדשים ומעניינים ב-ARCore.
מה חדש בגרסה 1.48.0 של ARCore
תמיכה מלאה ב-Unity 6 וב-AR Foundation 6
תוספים של ARCore ל-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
מה חדש בגרסה 1.47.0 של ARCore
תמיכה בגרסת בטא ל-Unity 6 ול-AR Foundation 6
תוספים של ARCore ל-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
שינויים נוספים
- ההסתעפות
main
של המאגר ב-GitHub של ARCore Extensions הועברה למעקב אחרי ההסתעפותarf5
.
מה חדש בגרסה 1.46.0 של ARCore
שינויים ב-targetSdkVersion
של ARCore SDK
targetSdkVersion
של ARCore עודכן לרמת Android API 35. אם לא מציינים ערך ל-targetSdkVersion
באפליקציה, הערך של targetSdkVersion
באפליקציה יהיה 35 בגלל מיזוג המניפסטים.
ב-Unity, ציון רמת API לטירגוט בקטע Project
Settings (הגדרות הפרויקט) > Player (נגן) > Android > Other Settings (הגדרות אחרות) בפרויקט ב-Unity יבטל את הערך של targetSdkVersion
ב-ARCore.
מה חדש בגרסה 1.45.0 של ARCore
Flash Mode API
עכשיו אפשר להפעיל את מצב הפנס במכשיר ב-ARCore, כדי לשפר את יכולות התפיסה בסביבות חשוכות.
Config.FlashMode
: אפשרות תצורה להפעלה או להשבתה של יחידת הפלאש במכשיר.- במדריך למפתחים מוסבר בהרחבה איך לזהות יכולות פלאש ואיך להפעיל את מצב הפנס.
ArFlashMode
: אפשרות תצורה להפעלה או להשבתה של יחידת הפלאש במכשיר.- במדריך למפתחים מוסבר בהרחבה איך לזהות יכולות פלאש ואיך להפעיל את מצב הפנס.
התוספים של ARCore ל-AR Foundation של Unity תומכים ב-AR Foundation 5
התוספים של ARCore ל-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
מתמיכת הבטא כבר לא בשימוש.
מה חדש בגרסה 1.44.0 של ARCore
בגרסה הזו אין תכונות חדשות.
מה חדש בגרסה 1.43.0 של ARCore
Places API בהעברה של Geospatial Creator
תכונת החיפוש של Geospatial Creator משתמשת עכשיו ב-Places API החדש של Google. כדי להשתמש בתכונת החיפוש, צריך להפעיל את Places API (New) במסוף Google Cloud.
מה חדש בגרסה 1.42.0 של ARCore
הצמדה לריבוע ב-Geospatial Creator ל-Unity
לחצן 'הצמדה לריבועים' נוסף לחלונית ARGeospatialCreatorAnchor
של כלי העריכה. לחיצה על הלחצן הזה מגדירה את ערך הגובה של עוגן פני השטח או של עוגן גגות ל'עריכה בלבד' בחלק העליון של גיאומטריה של משבצת תלת-ממדית (3D Tile) בקו הרוחב ובקו האורך הנוכחיים של העוגן. חשוב לזכור שהמאפיין הזה לא משפיע על ההתנהגות בזמן הריצה. כך תוכלו לשנות את מיקום הצ'אנק בעורך כך שיתאים למיקום שלו בזמן הריצה.
מה חדש בגרסה 1.41.0 של ARCore
Geospatial Creator API
Geospatial Creator ל-Unity כולל עכשיו תמיכה ביצירה ובשינוי של אובייקטים של Geospatial Creator במצב עריכה. הכיתות וממשקי ה-API החדשים מפורטים במדריך ל-Geospatial Creator API.
תמיכה בגרסאות 5.x של AR Foundation (בטא)
התוספים של ARCore ל-AR Foundation של Unity תומכים עכשיו בגרסאות 5.x של AR Foundation. כדי להעביר פרויקט קיים ל-AR Foundation, אפשר לעיין במדריך להעברת נתונים.
מה חדש בגרסה 1.40.0 של ARCore
סמנטיקה של סצנות ב-iOS
Scene Semantics API זמין עכשיו ב-ARCore SDK ל-iOS וגם ב-ARCore Extensions ל-Unity AR Foundation שמטרגט את פלטפורמת iOS. Scene Semantics API מאפשר למפתחים להבין את הסביבה שמקיפה את המשתמש בזמן אמת, ולתייג פיקסלים ב-11 כיתות של רכיבים חיצוניים. מידע נוסף זמין במאמר מבוא לסמנטיקה של סצנות.
חיפוש נקודות עניין ב-Geospatial Creator ל-Unity
Geospatial Creator ל-Unity תומך עכשיו בחיפוש טקסט כדי למקם את התצוגה של משבצות התלת-ממד המצולמות. למידע נוסף, ראו חיפוש נקודות עניין ב-Geospatial Creator.
מה חדש בגרסה 1.39.0 של ARCore
בגרסה הזו אין תכונות חדשות.
מה חדש בגרסה 1.38.0 של ARCore
בגרסה הזו אין תכונות חדשות.
מה חדש בגרסה 1.37.0 של ARCore
סמנטיקה של סצנות
סמנטיקה של סצנה מספקת פרטים עשירים יותר על הסביבה, וכך קל יותר להבין את העולם שמסביב למשתמש. התכונה 'סמנטיקה של סצנות' מפעילה מודל למידת מכונה בפיד התמונות של המצלמה ומספקת תמונה סמנטית שבה כל פיקסל תואם לאחת מ-11 תוויות של מושגים של סביבה חיצונית.
מידע נוסף זמין במאמר מבוא לסמנטיקה של סצנות ובאפליקציית הדוגמה semantics_java.
גיאומטריה של סביבת הרחוב
'גיאומטריה של סביבת הרחוב' הוא ממשק API חדש של ARCore Geospatial שמספק את הגיאומטריה של בניינים ושל פני השטח באזור שמסביב למשתמש כש-Geospatial API מופעל.
מדריך למפתחים בנושא גיאומטריה של סביבת הרחוב (Kotlin/Java) בנוסף, אפליקציית הדוגמה geospatial_java עודכנה כך שתכלול את Geometry של Streetscape.
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריה של סביבת הרחוב (C).
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריה של סביבת הרחוב (Unity).
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריה של סביבת הרחוב (iOS). בנוסף, אפליקציית GeospatialExample עודכנה כך שתכלול גיאומטריה של סביבת הרחוב.
GARStreetscapeGeometry
:GARStreetscapeGeometry.mesh
מספק רשתות תלת-ממדיות.GARStreetscapeGeometry.meshTransform
מספק את טרנספורמציית המקור של הגיאומטריה ביחס למרחב העולם של הסשן.GARStreetscapeGeometry.trackingState
שומרת על מצב המעקב.GARStreetscapeGeometry.type
מציין אם מדובר בגיאומטריה של פני השטח או בגיאומטריה של בניין.GARStreetscapeGeometry.quality
– איכות הגיאומטריה.GARStreetscapeGeometry.identifier
מספק את המזהה הייחודי של הגיאומטריה.GARSession.createAnchorOnStreetscapeGeometry:transform:error:
יוצרת עוגן במיקום ובכיוון שצוינו.GARSession.raycastStreetscapeGeometry:direction:error:
מבצעת הקרנה של קרן (raycast) על פני גיאומטריה של סביבת הרחוב שהוטענה בסצנה.
מודעות עוגן על הגג
ציון מיקום על גג הוא סוג חדש של ציון מיקום גיאוגרפי שעוזר לכם לצרף תוכן לגג.
עוגנים גיאו-מרחביים (Java) בנוסף, אפליקציית הדוגמה geospatial_java עודכנה כך שתכלול ציון מיקום על גגות.
מידע נוסף זמין במאמר עוגנים גיאו-מרחביים (C).
מידע נוסף זמין במאמר עוגנים גיאו-מרחביים. בנוסף, הדוגמה הגיאוספטית עודכנה כך שתכלול צמודי גג.
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()
מספק עוגן לאובייקטים של המשחק בסצנה, בקו הרוחב, בקו האורך, בגובה מעל הגג ובכיוון שצוינו.ResolveAnchorOnRooftopPromise
ResolveAnchorOnRooftopResult
מידע נוסף זמין במאמר ציון מיקום גיאוגרפי (iOS). בנוסף, אפליקציית GeospatialExample עודכנה כך שתכלול ציון מיקום על גג.
- הפונקציה
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:
יוצרת עוגן על גג במקום שצוין, בגובה מעל הגג במטרים ובכיוון ביחס לכדור הארץ. - המאפיין
GARCreateAnchorOnRooftopFuture
מכיל את המצב האסינכרוני של פתרון עוגן של Rooftop. GARRooftopAnchorState
מתאר את המצב של פתרון עיגון של Rooftop.
עומק גיאו-מרחבי
כששני המצבים, Depth API ו-Streetscape Geometry, מופעלים בסשן ARCore באזורים עם כיסוי VPS, תמונות העומק שנוצרות משופרות באמצעות Streetscape Geometry. נתוני הגיאומטריה של סביבת הרחוב משולבים בכל תמונה של עומק שנוצרת, עד לטווח של 65.535 מטרים. כדי ליהנות מהיתרון הזה, אין צורך לבצע שינויים בקריאה ל-Depth API.
מידע נוסף זמין במאמר עומק גיאו-מרחבי (Java).
מידע נוסף זמין בקטע עומק גיאו-מרחבי (C).
מידע נוסף זמין בקטע עומק גיאו-מרחבי (C).
בשלב זה, האפשרות 'סמנטיקה של סצנה' לא זמינה ל-iOS.
תמיכה ברינדור של Vulkan
ARCore תומך עכשיו ברינדור של Vulkan על ידי חשיפת תמונת המצלמה דרך AHardwareBuffer
. כדי להשתמש במאגר החומרה הזה, צריך לשייך אותו ל-VkImage
.
למידע נוסף, ראו עיבוד גרפי של אפליקציית ARCore באמצעות Vulkan ואפליקציית hello_ar_vulkan_c לדוגמה.
עיבוד באמצעות Vulkan לא זמין כרגע ב-Unity באמצעות AR Foundation.
ייצוב תמונה אלקטרוני (EIS)
אפשר להגדיר ל-ARCore להשתמש בחיזוי תמונה אלקטרוני, שמיישר את התמונות במצלמה כדי לספק חוויית משתמש חלקה יותר.
מידע נוסף זמין במאמר הפעלת ייצוב תמונה אלקטרוני ובאפליקציית הדוגמה hello_eis_kotlin.
Config.ImageStabilizationMode
Frame.transformCoordinates3d()
Session.isImageStabilizationModeSupported()
- יש בעיה ידועה שבה קריאה ל-
Frame.transformCoordinates3d()
עם קואורדינטות דו-ממדיות שאינןOPENGL_NORMALIZED_DEVICE_COORDINATES
תגרום לקריסה במקום להשליך אתIllegalArgumentException
. הבעיה הזו תיפתר במהדורה הבאה.
ArImageStabilizationMode
ArFrame_transformCoordinates3d()
ArSession_isImageStabilizationModeSupported()
- ידועה בעיה שבה קריאה ל-
ArFrame_transformCoordinates3d()
עם קואורדינטות דו-ממדיות שאינןAR_COORDINATES_2D_OPENGL_NORMALIZED_DEVICE_COORDINATES
תגרום לביטול האפליקציה במקום להחזיר את הערךAR_ERROR_INVALID_ARGUMENT
. הבעיה הזו תיפתר במהדורה הבאה.
בשלב הזה, אי אפשר להשתמש ב-EIS ב-Unity באמצעות AR Foundation.
בשלב זה, EIS לא זמין ל-iOS.
ממשקי API אסינכרונים של ARCore
בגרסה הזו נוספו ממשקי API אסינכרוניים חדשים של ARCore כדי לשפר את הארגונומיה בעבודה עם פעולות אסינכרוניות, בהתאם לתפיסה של Future ו-Promise.
- פתרון עוגנים של פני השטח: משתמשים ב-
Earth.resolveAnchorOnTerrainAsync()
כדי לקבלResolveAnchorOnTerrainFuture
. הסמל הישןEarth.resolveAnchorOnTerrain()
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - פתרון של עוגנים ב-Cloud: משתמשים ב-
Session.resolveCloudAnchorAsync()
כדי לקבלResolveCloudAnchorFuture
. הסמל הישןSession.resolveCloudAnchor()
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - אירוח של עוגנים ב-Cloud: משתמשים ב-
Session.hostCloudAnchorAsync()
כדי לקבלHostCloudAnchorFuture
. הסמלים הישניםSession.hostCloudAnchor()
ו-Session.hostCloudAnchorWithTtl()
הוצאו משימוש, ויכול להיות שהם יוסרו בגרסה מאוחרת יותר של ARCore. - בדיקת זמינות ה-APK: משתמשים ב-
ArCoreApk.checkAvailabilityAsync()
כדי לרשום קריאה חוזרת. הסמל הישןArCoreApk.checkAvailability()
לא הוצא משימוש.
- פתרון של עוגנים של פני השטח: משתמשים ב-
ArEarth_resolveAnchorOnTerrainAsync()
כדי לקבלArResolveAnchorOnTerrainFuture
או משתמשים ב-ArResolveAnchorOnTerrainCallback
. הסמל הישןArEarth_resolveAndAcquireNewAnchorOnTerrain()
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - פתרון של עוגנים ב-Cloud: משתמשים ב-
ArSession_resolveCloudAnchorAsync()
כדי לקבלArResolveCloudAnchorFuture
או ב-ArResolveCloudAnchorCallback
. הסמל הישןArSession_resolveAndAcquireNewCloudAnchor()
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - אירוח של עוגנים ב-Cloud: משתמשים ב-
ArSession_hostCloudAnchorAsync()
כדי לקבלArHostCloudAnchorFuture
או ב-ArHostCloudAnchorCallback
. הסמלים הישניםArSession_hostAndAcquireNewCloudAnchor()
ו-ArSession_hostAndAcquireNewCloudAnchorWithTtl()
הוצאו משימוש, ויכול להיות שהם יוסרו בגרסה מאוחרת יותר של ARCore. - בדיקת זמינות ה-APK: משתמשים ב-
ArCoreApk_checkAvailabilityAsync()
כדי לרשום קריאה חוזרת. הסמל הישןArCoreApk_checkAvailability()
לא הוצא משימוש.
- פתרון עוגנים של פני השטח: משתמשים ב-
ARAnchorManagerExtensions.ResolveAnchorOnTerrainAsync()
כדי לקבלResolveAnchorOnTerrainPromise
. הסמל הישןARAnchorManagerExtensions.ResolveAnchorOnTerrain()
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - פתרון של עוגנים ב-Cloud: משתמשים ב-
ARAnchorManagerExtensions.ResolveCloudAnchorAsync()
כדי לקבלResolveCloudAnchorPromise
. הסמל הישןARAnchorManagerExtensions.ResolveCloudAnchorId()
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - אירוח של עוגנים ב-Cloud: משתמשים ב-
ARAnchorManagerExtensions.HostCloudAnchorAsync()
כדי לקבלHostCloudAnchorPromise
. הסמלים הישנים שלARAnchorManagerExtensions.HostCloudAnchor()
הוצאו משימוש, ויכול להיות שהם יוסרו בגרסה מאוחרת יותר של ARCore.
- פתרון עוגנים של פני השטח: משתמשים ב-
GARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:completionHandler:error:
כדי לקבלGARCreateAnchorOnTerrainFuture
. הסמל הישןGARSession.createAnchorWithCoordinate:altitudeAboveTerrain:eastUpSouthQAnchor:error:
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - פתרון של עוגנים ב-Cloud: משתמשים ב-
GARSession.resolveCloudAnchorWithIdentifier:completionHandler:error:
כדי לקבלGARResolveCloudAnchorFuture
. הסמל הישןGARSession.resolveCloudAnchorWithIdentifier:error:
הוצא משימוש, ויכול להיות שהוא יוסר בגרסה מאוחרת יותר של ARCore. - אירוח של עוגנים ב-Cloud: משתמשים ב-
GARSession.hostCloudAnchor:TTLDays:completionHandler:error:
כדי לקבלGARHostCloudAnchorFuture
. הסמלים הישניםGARSession.hostCloudAnchor:error:
ו-GARSession.hostCloudAnchor:TTLDays:error:
הוצאו משימוש, ויכול להיות שהם יוסרו בגרסה מאוחרת יותר של ARCore.
מה חדש בגרסה 1.36.0 של ARCore
תמיכה ב-Swift Package Manager ב-iOS
עכשיו יש תמיכה רשמית ב-Swift Package Manager ב-ARCore SDK ל-iOS. במאמר הפעלת AR באפליקציה ל-iOS מוסבר איך לשלב את ARCore באמצעות Swift Package Manager.
מה חדש בגרסה 1.35.0 של ARCore
דיוק תנוחה גיאו-מרחבית מחליף את הכיוון בתנועת יאוו
כל תנוחות המיקום הגיאוגרפי חושפות עכשיו את דיוק הכיוון של סיבוב הציר האנכי, במקום דיוק הכיוון.
- Java/Kotlin: מחליפים את
GeospatialPose.getHeading()
ב-GeospatialPose.getEastUpSouthQuaternion()
ואתGeospatialPose.getHeadingAccuracy()
ב-GeospatialPose.getOrientationYawAccuracy()
. - ג: מחליפים את
ArGeospatialPose_getHeading()
ב-ArGeospatialPose_getEastUpSouthQuaternion()
ואתArGeospatialPose_getHeadingAccuracy()
ב-ArGeospatialPose_getOrientationYawAccuracy()
. - iOS: מחליפים את
GARGeospatialTransform.heading
ב-GARGeospatialTransform.eastUpSouthQTarget
ואתGARGeospatialTransform.headingAccuracy
ב-GARGeospatialTransform.orientationYawAccuracy
. - Unity: מחליפים את
GeospatialPose.Heading
ב-GeospatialPose.EunRotation
ואתGeospatialPose.HeadingAccuracy
ב-GeospatialPose.OrientationYawAccuracy
.
שינויים ועדכונים נוספים
בנתוני הגרסה מפורטים שינויים נוספים, תיקוני באגים ושיפורי ביצועים:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore for Android NDK
- הערות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.34.0 של ARCore
איך בודקים אם היכולות הגיאוגרפיות זמינות במיקום הנוכחי של המכשיר
מעכשיו אפשר להשתמש ב-Geospatial API כדי לבדוק את הזמינות של מערכת מיקום חזותי (VPS) במיקום אופקי מסוים בזמן הריצה. אפשר להשתמש ב-API הזה בלי סשן AR פעיל: לדוגמה, כדי להציג את הלחצן 'כניסה ל-AR' רק כש-VPS זמין.
- Java/Kotlin:
Session.checkVpsAvailabilityAsync()
- ג:
ArSession_checkVpsAvailabilityAsync()
- iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
- Unity (AR Foundation):
AREarthManager.CheckVpsAvailability()
כיוון תנוחה גיאו-מרחבי
עכשיו אפשר לראות את הכיוון של תנוחות גיאו-מרחביות במרחב תלת-ממדי.
- Java/Kotlin:
feedbackGeospatialPose.getEastUpSouthQuaternion()
- ג:
ArEarth_getGeospatialPose()
- iOS:
GARGeospatialTransform.eastUpSouthQTarget
- Unity:
GeospatialPose.EunRotation()
המרות של תנוחות גיאו-מרחביות
עכשיו אפשר להמיר תנוחות גיאו-מרחביות לתנוחות במרחב העולם (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)
בערכי תנוחות גיאו-מרחביות שמתקבלים מהפונקציות האלה, ערך הכיוון מוגדר לאפס. במקום זאת, צריך להשתמש בקוד הבא:
- Android (Java/Kotlin/C): ה-quaternion של EUS של התנוחה
- iOS:
eastUpSouthQTarget
של התנוחה - Unity:
EunRotation
של התנוחה
שינויים ועדכונים נוספים
בנתוני הגרסה מפורטים שינויים נוספים, תיקוני באגים ושיפורי ביצועים:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore for Android NDK
- הערות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.33.0 של ARCore
נקודת קצה חדשה של 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.
- פרטים נוספים זמינים במאמר שינויים בנקודת הקצה של Cloud Anchor ב-ARCore 1.33.
- ב-API החדש נעשה שימוש בשם הדומיין
עוגנים של שטח
- Geospatial Terrain anchor API יוצר עוגן במיקום אופקי ובגובה שצוינו ביחס לשטח של המיקום האופקי.
שינויים ועדכונים נוספים
בנתוני הגרסה מפורטים שינויים נוספים, תיקוני באגים ושיפורי ביצועים:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore for Android NDK
- הערות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.32.0 של ARCore
בגרסה הזו אין תכונות חדשות.
Android ו-Unity (AR Foundation) ל-Android
targetSdkVersion
של ARCore עודכן לרמת Android API 32. אם לא מציינים ערך ל-targetSdkVersion
באפליקציה, הערך שלtargetSdkVersion
באפליקציה יהיה 32 בגלל מיזוג המניפסטים.- Android SDK: ציון ערך
targetSdkVersion
ב-build.gradle
או ב-AndroidManifest.xml
של הפרויקט יבטל את הערך שלtargetSdkVersion
ב-ARCore. - AR Foundation ל-Android: ציון רמת API לטירגוט בקטע Project Settings (הגדרות הפרויקט) > Player (נגן) > Android (Android) > Other Settings (הגדרות אחרות) בפרויקט ב-Unity יבטל את הערך
targetSdkVersion
של ARCore.
- Android SDK: ציון ערך
שינויים ועדכונים נוספים
בנתוני הגרסה מפורטים שינויים נוספים, תיקוני באגים ושיפורי ביצועים:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore for Android NDK
- הערות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.31.0 של ARCore
ARCore Geospatial API
ARCore Geospatial API החדש משתמש בנתונים ממודלים תלת-ממדיים של Google Earth ובנתוני תמונות של Street View ממפות Google, כדי לאפשר לאפליקציה שלכם לספק חוויות מציאות רבודה immersive מבוססות-מיקום בקנה מידה גלובלי.
במאמר מבוא ל-ARCore Geospatial API תוכלו לקרוא מסמכי עזרה למפתחים ספציפיים לפלטפורמה, ולקבל הדרכה לתחילת השימוש ב-Geospatial API החדש.
עומק לטווח ארוך
ARCore Depth API עבר עכשיו אופטימיזציה כך שיכלול חיישן עומק לטווח ארוך יותר, וכך להרחיב את הטווח של תצפיות העומק שניתן לייצג. המערכת משתמשת בכל 16 הביטים של תמונה העומק, ומספקת טווח מקסימלי של 65,535 מילימטרים. בעבר, אוכלסו רק 13 ביט, עם מגבלה של 8,191 מילימטרים.
במאמר שינויים ב-Depth מוסבר על השינויים ב-Depth API ומפורט מידע ספציפי לפלטפורמות למפתחים.
הערות ספציפיות לפלטפורמה
Android
ממשקי ARCore Geospatial API חדשים
Java
Earth
מספק יכולת לוקליזציה לפי קואורדינטות יחסיות לכדור הארץ.- הפונקציה
Earth.createAnchor()
יוצרתAnchor
חדש במיקום ובכיוון שצוינו ביחס לכדור הארץ.
- הפונקציה
Earth.Earthstate
מתאר את המצב הנוכחי שלEarth
, כוללTrackingState
שלו.GeospatialPose
מתאר מיקום, גובה וכיוון מצפן ספציפיים ביחס לכדור הארץ.
C
ArEarth
מספקת יכולת לוקליזציה לפי קואורדינטות יחסיות לכדור הארץ.- הפונקציה
ArEarth_acquireNewAnchor()
יוצרתAnchor
חדש במיקום ובכיוון שצוינו ביחס לכדור הארץ. ArEarthState
מתאר את המצב הנוכחי שלArEarth
, כוללArTrackingState
שלו.
- הפונקציה
ArGeospatialPose
מתאר מיקום, גובה וכיוון מצפן ספציפיים ביחס לכדור הארץ.
ממשקי API מעודכנים של ARCore Depth
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 מ'.
- קריאות הפונקציה
Frame.acquireDepthImage
ו-Frame.acquireRawDepthImage
של Depth API הוצאו משימוש. במקום זאת, אתם צריכים להשתמש ב-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 מ'.
- קריאות הפונקציה
ArFrame_acquireDepthImage
ו-ArFrame_acquireRawDepthImage
של Depth API הוצאו משימוש. במקום זאת, אתם צריכים להשתמש ב-ArFrame_acquireDepthImage16Bits
וב-ArFrame_acquireRawDepthImage16Bits
.
- קריאות הפונקציות של Depth API השתנו:
Unity (AR Foundation)
ממשקי ARCore Geospatial API חדשים:
AREarthManager
מספקת יכולת לוקליזציה לפי קואורדינטות יחסיות לכדור הארץ.EarthTrackingState
מקבל את סטטוס המעקב של Earth בפריים האחרון.EarthState
שומרת על תנאי השגיאה של Earth.
GeospatialPose
מתאר מיקום, גובה וכיוון מצפן ספציפיים ביחס לכדור הארץ.ARGeospatialAnchor
משמש כציון דרך לאובייקטים במשחק בסצנה, שצוין במיקום ובכיוון ביחס לכדור הארץ.
iOS
ממשקי ARCore Geospatial API חדשים:
GAREarth
התאמה למיקום ביחס לכדור הארץ.GAREarthState.earthState
מנהל את מצבי השגיאה ואת התנאים.GAREarthState.trackingState
שומרת את מצב המעקב, שנדרש לנתונים גיאו-מרחביים.
GARGeospatialTransform
ייצוג של טרנספורמציה גלובלית, כולל מיקום, כיוון, גובה והערכות של רמת הדיוק.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:
יצירת עוגן גיאו-מרחבי במיקום ובכיוון שצוינו ביחס לכדור הארץ.
שינויים נוספים
בנתוני הגרסה מפורטים שינויים נוספים, תיקוני באגים ושיפורי ביצועים:
- נתוני גרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore for Android NDK
- הערות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.30.0 של ARCore
בגרסה הזו אין תכונות חדשות.
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 מגדיר כל פריים גם אם אין שינוי בהגדרות הסשן, מה שגורם לירידה בקצב הפריימים.
iOS
- תיקוני באגים ושיפורי ביצועים שונים.
מה חדש בגרסה 1.29.0 של ARCore
בגרסה הזו אין תכונות חדשות.
Android
- hello_ar_java ו-hello_ar_kotlin: שינינו את הצבע של אובייקט כשהוא ממוקם באמצעות
SCREENSPACE_WITH_APPROXIMATE_DISTANCE
כדי להבדיל טוב יותר בין אובייקטים שממוקמים באמצעות מיקום מיידי. - persistent_cloud_anchor_java: נוספה לדוגמה תלות build חסרה. תוקן באג שבו אירוח של כל עוגן יהיה במצב
CloudAnchorState ERROR_NOT_AUTHORIZED
גם אם הפרויקט הוגדר בצורה נכונה.
Unity (AR Foundation)
- חבילת התוספים של ARCore תלויה עכשיו ב-ARKit XR Plugin כדי לוודא שגרסת AR Foundation שמותקנת תואמת לגרסה של ARKit XR Plugin. התיקון הזה מתקן שגיאת הידור בהתקנת התוספים של ARCore ב-Unity 2019.x והפעלת הפלאגין ARKit XR.
- הגדרות הפרויקט של ARCore Extensions הועברו מ-Project Settings (הגדרות הפרויקט) > XR (XR) > ARCore Extensions (תוספים של ARCore) אל Project Settings (הגדרות הפרויקט) > XR Plug-in Management (ניהול הפלאגין של XR) > ARCore Extensions (תוספים של ARCore).
- התכונות
ARCoreExtensionsConfig
,ARCoreExtensionsCameraConfigFilter
ו-ARCoreRecordingConfig
הועברו מהתפריט יצירה > XR > תוספים ל-ARCore לתפריט יצירה > XR.
iOS
- תיקוני באגים ושיפורי ביצועים שונים.
נתוני הגרסה המלאים
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore for Android NDK
- הערות המלאות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.28.0 של ARCore
- החל מנובמבר 2022, אפליקציות עם תמיכה ב-AR לא יוכלו יותר לקבל תמונות NDK או מטא-נתונים של תמונות. גרסאות ה-SDK שמושפעות מההוצאה משימוש תלויות בפונקציה הספציפית שנקראת. מידע נוסף זמין בהודעה על ההוצאה משימוש.
- C: קריאות ל-
ArImage_getNdkImage()
ול-ArImage_getNdkCameraMetadata()
תמיד יחזירו את הערךnullptr
לאובייקטיםAImage
ו-ACameraMetadata
. - Java: אובייקט
Image
שמוחזר על ידיFrame#acquireCameraImage()
יהיה בגודל0
x0
פיקסלים. קריאות ל-Frame#getImageMetadata()
תמיד יגרמו להשלכתIllegalArgumentException
. - Unity (AR Foundation): כשמשתמשים ב-AR Foundation 2.1 (Unity 2019 LTS), קריאות ל-
XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
תמיד יחזירו את הערךfalse
. גרסאות 4.x ואילך של AR Foundation לא מושפעות מהשינוי, והקריאות ל-XRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
יפעלו כרגיל. - ARCore SDK ל-Unity (הווצא משימוש): הקריאות ל-
Frame.CameraImage.AcquireCameraImageBytes()
יהיו בגודל0
x0
פיקסלים. קריאות ל-Frame.CameraMetadata.GetAllCameraMetadataTags()
יחזירוList<CameraMetadataTag>
ריק.
- C: קריאות ל-
- Java: הפונקציה
ArImage#getCropRect()
מחזירה עכשיו מלבן חיתוך בגודל מלא, כלומר כל הפיקסלים ב-Image תקינים. מידע נוסף זמין במאמרandroid.media.Image#getCropRect()
.
מה חדש בגרסה 1.27.0 של ARCore
בגרסה הזו אין תכונות חדשות. בנתוני הגרסה הבאים מפורטים תיקוני באגים ושיפורי ביצועים שונים.
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore for Android NDK
- הערות המלאות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
בנוסף לתיקוני באגים שונים, הגרסה הזו כללה את השיפורים הבאים.
אפליקציות לדוגמה ב-Kotlin
הוספנו את hello_ar_kotlin כדי להדגים שיטות מומלצות לשימוש ב-Kotlin.
מידע נוסף זמין במאמר מדריך למתחילים ב-Android.
הוספנו את ml_kotlin כדי להמחיש איך אפשר להשתמש במודל של סיווג תמונות עם ARCore.
מידע נוסף זמין במאמר שימוש ב-ARCore כקלט למודלים של למידת מכונה.
מה חדש בגרסה 1.26.0 של ARCore
בגרסה הזו נוספו השינויים הבולטים הבאים:
- עכשיו יש תמיכה במזהי URI למערכי נתונים בקטע הקלטה והפעלה.
שינויים ועדכונים נוספים
בהערות הגרסה הבאות מפורטים תיקוני באגים נוספים ושינויים אחרים שעלולים לגרום לכשל.
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore for Android NDK
- הערות המלאות לגרסה של ARCore SDK ל-iOS
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.25.0 של ARCore
בגרסה הזו אין תכונות חדשות. בנתוני הגרסה הבאים מפורטים תיקוני באגים ושיפורי ביצועים שונים.
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore for Android NDK
- הערות המלאות לגרסה של ARCore SDK ל-iOS
- הערות המלאות לגרסה של ARCore SDK ל-Unity
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.24.0 של ARCore
בגרסה הזו נוספו השינויים הבולטים הבאים:
- Raw Depth API חדש שמספק תמונה של עומק ללא סינון במרחב התמונה
- היכולת להקליט טראקים של נתונים מותאמים אישית ב-Recording & Playback API
- היכולת לבצע בדיקות של היטים לעומק
עומק גולמי
Raw Depth API מספק נתוני עומק לתמונה ממצלמה עם דיוק גבוה יותר מנתוני Depth API מלאים, אבל הוא לא תמיד מכסה את כל הפיקסלים. אפשר גם לעבד תמונות עומק גולמיות, יחד עם תמונות האמון התואמות שלהן, כדי לאפשר לאפליקציות להשתמש רק בנתוני העומק שיש להם דיוק מספיק לתרחיש השימוש הספציפי שלהן.
מדריכים למפתחים:
הקלטת טראק בהתאמה אישית
היכולת החדשה לעקוב אחרי נתונים מותאמים אישית ב-Recording & Playback API מאפשרת לכם להוסיף נתונים מותאמים אישית לפריים של ARCore במהלך הצילום, ולאחזר את אותם נתונים מהפריים במהלך ההפעלה.
מדריכים למפתחים:
בדיקות עומק של מיקום המצביע
בעבר אפשר היה לבצע בדיקות היטים רק במישורים שזוהו, והמיקומים היו מוגבלים למשטחים גדולים ושטוחיים. בדיקות ההיט של עומק מתבססות על מידע חלק ועל מידע גולמי של עומק כדי לספק תוצאות היט מדויקות יותר, גם על משטחים לא שטוחיים ועל משטחים עם טקסטורה נמוכה.
מדריכים למפתחים:
שינויים ועדכונים נוספים
בהערות הגרסה הבאות מפורטים תיקוני באגים נוספים ושינויים אחרים שעלולים לגרום לכשל.
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני הגרסה המלאים של ARCore for Android NDK
- הערות המלאות לגרסה של ARCore SDK ל-iOS
- הערות המלאות לגרסה של ARCore SDK ל-Unity
- הערות לגרסה של ARCore Extensions for AR Foundation
מה חדש בגרסה 1.23.0 של ARCore
בהמתנה לתמיכה בשתי מצלמות
התמיכה במצלמה כפולה תושק בשבועות הקרובים. מידע נוסף זמין בדף מכשירים נתמכים.
כלים חדשים לניפוי באגים
שליחת כוונה לשידור מאפשרת למפתחים להפעיל:
רישום ביומן של קריאות ל-ARCore API ביומן ניפוי הבאגים של Android
שכבת-העל של ביצועי ARCore
אירוח ופתרונות של Cloud Anchors
אפליקציות עם תמיכה ב-AR שנוצרו באמצעות ARCore SDK בגרסה 1.11.0 ואילך לא יכולות יותר לארח או לפתור עוגנים בענן.
ג: למיקומי עוגן ב-Cloud שמוחזרים על ידי
ArSession_hostAndAcquireNewCloudAnchor
ו-ArSession_resolveAndAcquireNewCloudAnchor
תמיד יהיה המצבAR_CLOUD_ANCHOR_STATE_ERROR_INTERNAL
.Java: למיקומי Cloud Anchors שמוחזרים על ידי
Session.hostCloudAnchor(Anchor)
ו-Session.resolveCloudAnchor(String)
תמיד יהיה המצבAnchor.CloudAnchorState.ERROR_INTERNAL
.Unity: למיקומי Cloud Anchors שמוחזרים על ידי
XPSession.CreateCloudAnchor(Anchor)
ו-XPSession.ResolveCloudAnchor(string)
תמיד יהיה המצבCloudServiceResponse.ErrorInternal
.
אפליקציות שנוצרו באמצעות ARCore SDK בגרסה 1.12.0 ואילך לא מושפעות מהשינוי. השימוש שלהם ב-ARCore Cloud Anchor API כפוף למדיניות ההוצאה משימוש.
שינויים ועדכונים נוספים
בהערות הגרסה הבאות מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש בגרסה 1.22.0 של ARCore
במהדורה הזו נוספו ממשקי API חדשים להקלטה ולנגינה וממשקי API של מסננים להגדרת המצלמה להרחבות של ARCore ל-AR Foundation. פרטים נוספים זמינים בנתוני הגרסה המלאים של ARCore Extensions.
שינויים ועדכונים נוספים
בהערות הגרסה הבאות מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש בגרסה 1.21.0 של ARCore
במהדורה הזו נוספו ממשקי API חדשים להקלטה ולנגינה ל-Android, ל-Android NDK ול-Unity.
הקלטה והפעלה
באמצעות ממשקי ה-API של ההקלטה וההפעלה, אפשר לצלם סרטון ונתוני AR פעם אחת בסביבה מסוימת ולהשתמש בתוכן הזה כדי להחליף סשן מצלמה בשידור חי למטרות בדיקה. ARCore שומרת סשנים שהוקלטו בקובצי MP4 שמכילים כמה טראקים של וידאו ונתונים אחרים במכשיר. לאחר מכן תוכלו להורות לאפליקציה להשתמש בנתונים האלה במקום בסשן מצלמה בשידור חי. כך תוכלו להפעיל מחדש את התוכן הזה ללא הגבלת זמן כדי לנסות אפקטים שונים של AR בלי שתצטרכו לחזור לשדה.
לקבלת פרטים נוספים:
Java:
ג.
Unity:
מה חדש בגרסה 1.20.0 של ARCore
בגרסה הזו נוספו השינויים הבולטים הבאים:
תמיכה חדשה בCloud Anchors עמידים.
עדכנו את היכולות של מטא-נתונים של תמונות ב-Android וב-Android NDK.
הנחיות חדשות שמחייבות את השימוש ב-Gradle בגרסה 5.6.4 ואילך, כדי לתמוך בתוספים של ARCore ל-AR Foundation או ב-ARCore SDK ל-Unity (1.19 ואילך) עם Unity 2018.4 ואילך.
תמיכה חדשה ב-Cloud Anchors קבועים
לפני ARCore v1.20, אפשר היה לפתור את ה-Cloud Anchors רק עד 24 שעות אחרי שהם מתארחים בפעם הראשונה. בעזרת Cloud Anchors מתמידים, עכשיו אפשר ליצור Cloud Anchor עם משך חיים (TTL) של בין יום אחד ל-365 ימים. אפשר גם להאריך את משך החיים של הצ'אנק לאחר שהוא כבר מתארח באמצעות Cloud Anchor Management API.
השימוש ב-Cloud Anchors קבועים מוסדר במדיניות ההוצאה משימוש החדשה של Cloud Anchors.
ג: מדריך למפתחים,
ArSession_hostAndAcquireNewCloudAnchorWithTtl
ו-ArSession_estimateFeatureMapQualityForHosting
.Java: מדריך למפתחים,
hostCloudAnchorWithTtl
ו-estimateFeatureMapQualityForHosting
.iOS: מדריך למפתחים,
hostCloudAnchor:TTLDays:error:
ו-estimateFeatureMapQualityForHosting:
.ARCore Extensions ל-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)
.
שינויים ועדכונים נוספים
בהערות הגרסה הבאות מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש בגרסה 1.19.0 של ARCore
בגרסה הזו נוספו השינויים הבולטים הבאים:
- Instant Placement API חדש ל-Android, ל-Android NDK ול-Unity.
- הנחיות חדשות לפיתוח ל-Android 11 באמצעות Unity.
מיקום מיידי
Instant Placement API מאפשר למשתמש להציב אובייקט AR במסך בלי לחכות ש-ARCore יזהה את הגיאומטריה של המשטח. מיקום האובייקטים משתפר בזמן אמת ככל שהמשתמש מתקדם בסביבה. אחרי ש-ARCore מזהה את התנוחה הנכונה באזור שבו ממוקם אובייקט ה-AR, האובייקט הלבן מתעדכן באופן אוטומטי כך שיהיה מדויק לתנוחה ויהפוך לשקוף.
בקליפ הבא מוצגת דמות וירטואלית של Android על שולחן בעולם האמיתי. הדמות לבנה וקטנה בהרבה בפעם הראשונה שממקמים אותה. אחרי ש-ARCore משפר את החישובים של מידות הסצנה, הדמות קופצת למיקום מדויק יותר. כתוצאה מכך, יכול להיות הבדל ב'גודל' של האובייקט כפי שהוא נתפס.
לקבלת פרטים נוספים:
Android:
Android NDK:
Unity:
מה חדש בגרסה 1.18.0 של ARCore
בגרסה הזו נוספו השינויים הבולטים הבאים:
- Depth API חדש ל-Android, ל-Android NDK ול-Unity.
- הנחיות חדשות ליצירת נכסי Augmented Faces ולייבוא שלהם ל-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:
מה חדש בגרסה 1.17.0 של ARCore
תכונות מיוחדות ב-ARCore SDK ל-Android
נוספו שיטות חדשות שמאפשרות אחסון במטמון של כמה פריימים מהמצלמה. אפשר להשתמש בשיטה הזו, יחד עם שיטות אחרות כמו רינדור במספר שרשורים, כדי לצמצם את התנודות בשיעורי הפריימים.
נוספו פונקציות קבלה (getter) חסרות לשימוש בחיישן עומק ולFPS היעד:
אפשר לעיין גם בנתוני הגרסה המלאים של Android SDK ל-Android.
תכונות מיוחדות ב-ARCore SDK ל-Unity
- הוספנו תמיכה ברינדור במספר שרשורים ב-Unity בגרסה 2018.2 ואילך. ברוב המקרים, התמיכה הזו תשפר את הביצועים ותוכל לעזור לצמצם את התנודות בשיעורי הפריימים. זוהי הגדרה של פרויקט ב-Unity, שנמצאת בקטע Project Settings (הגדרות הפרויקט) > Player (נגן) > Android (Android) > Other Settings (הגדרות אחרות) > Multithreaded Rendering (עיבוד באמצעות מספר שרשורים). פרטים נוספים זמינים במדריך למפתחים.
- הוספנו את הערכים
SessionStatus.ErrorCameraNotAvailable
ו-SessionStatus.ErrorIllegalState
כדי לציין מצבי שגיאה ספציפיים בסשן ARCore.
אפשר לעיין גם בנתוני הגרסה המלאים של ARCore SDK ל-Unity.
פיצ'רים בולטים ב-ARCore SDK ל-iOS
גודל הקובץ הבינארי של Cloud Anchors SDK הצטמצם באופן משמעותי.
יש עכשיו תמיכה ב-Bitcode לתכונה 'פנים משופרים'.
אפשר לעיין גם בנתוני הגרסה המלאים של ARCore SDK ל-iOS.
מה חדש בגרסה 1.16.0 של ARCore
ARCore SDK ל-Android ו-Sceneform SDK ל-Android
בגרסה הזו נוספו השינויים הבולטים הבאים:
- רוב המכשירים מחזירים עכשיו הגדרות מצלמה נתמכות נוספות עם רזולוציות של טקסטורות GPU נמוכות יותר מרזולוציית ברירת המחדל של טקסטורות GPU במכשיר.
לפרטים נוספים, אפשר לעיין במאמר מכשירים נתמכים של ARCore.
רזולוציות ה-GPU המורחבות האלה זמינות דרך ה-API של
getSupportedCameraConfigs(CameraConfigFilter)
.
ראה גם:
תכונות מיוחדות ב-ARCore Extensions for AR Foundation
בגרסה הזו נוספו השינויים הבולטים הבאים:
XRCameraConfiguration
של AR Foundation מורחב בשיטות שמאפשרות לבחור את הגדרת המצלמה המתאימה על סמך הקריטריונים הרצויים. השיטות האלה כוללות את GetTextureDimensions(), GetFPSRange() ו-GetDepthSensorUsages(). כאן מפורטות הוראות מפורטות.Unity 2019.3.0f6 היא עכשיו הגרסה המינימלית המומלצת להרחבות של ARCore. כדי להשתמש ב-AR Foundation 3.1.0-preview.6, צריך להתקין את Unity מגרסה 2019.3 ואילך.
עכשיו, ב-Unity משתמשים במונחים עוגן, עוגן ב-Cloud ומזהה של עוגן ב-Cloud בAPI שלהם ל-AR בפלטפורמות שונות. המסמכים של תוספים ל-ARCore עודכנו בהתאם.
ראה גם:
תכונות מיוחדות ב-ARCore SDK ל-Unity
בגרסה הזו נוספו השינויים הבולטים הבאים:
- רוב המכשירים מחזירים עכשיו הגדרות מצלמה נתמכות נוספות עם רזולוציות של טקסטורות GPU נמוכות יותר מרזולוציית ברירת המחדל של טקסטורות GPU במכשיר. (פרטים נוספים זמינים במאמר מכשירים נתמכים של ARCore). רזולוציות ה-GPU המורחבות האלה זמינות דרך ממשק ה-API ARCoreCameraConfigFilter.
ראה גם:
הערות המלאות לגרסה של ARCore SDK ל-Unity
מה חדש בגרסה 1.15.0 של ARCore
תכונות מיוחדות ב-ARCore Extensions for AR Foundation
בגרסה הזו נוספו השינויים הבולטים הבאים.
הוספנו דוגמה ל-CloudAnchors שמראה איך ליצור חוויות AR משותפות ל-Android ול-iOS. הוראות ל-Android או ל-iOS
Unity 2019.2.17f1 היא עכשיו הגרסה המינימלית המומלצת לשימוש עם התוספים של ARCore.
הערות המלאות לגרסה של ARCore Extensions
תכונות מיוחדות ב-ARCore SDK ל-Unity
בגרסה הזו יש את הבעיות הידועות הבאות.
תצוגה מקדימה מיידית עשויה להקפיא את Unity כשמשתמשים ב-Android 9 ובכבל USB 3. כדי לפתור את הבעיה, צריך לעדכן ל-Android 10 או להשתמש בכבל USB 2.
יכול להיות שהתצוגה המקדימה המיידית לא תוצג במכשיר אם הרזולוציה של תצוגת המשחק ב-Unity גבוהה מדי. כדי לפתור את הבעיה, צריך להקטין את רזולוציית תצוגת המשחק ב-Unity ב-Editor.
הערות המלאות לגרסה של ARCore SDK ל-Unity
שינויים נוספים
בהערות הגרסה הבאות מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש בגרסה 1.14.0 של ARCore
בגרסה הזו נוספו השינויים הבולטים הבאים.
כשאפליקציה מאבדת באופן זמני את הגישה למצלמה לטובת אפליקציה אחרת במכשיר, הסיבה לכישלון המעקב מוצגת עכשיו בצורה ספציפית יותר:
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, בכפוף למדיניות הפרטיות של Google ולתנאים ולהגבלות של Google APIs. אתם יכולים לבטל את ההסכמה לכך.
מה חדש בגרסה 1.13.0 של ARCore
בגרסה הזו נוספו השינויים הבולטים הבאים.
תמיכה בשימוש בתוספים של ARCore ל-AR Foundation של Unity ליצירת אפליקציות ל-iOS עם עוגנים ב-Cloud.
בהערות הגרסה הבאות מפורטים תיקוני באגים נוספים ושינויים משמעותיים אחרים.
מה חדש בגרסה 1.12.0 של ARCore
בגרסה הזו נוספו השינויים הבאים:
הוספת התכונה 'תמונות עם תוספת פנים' ל-iOS. מידע נוסף זמין בסקירה הכללית, במדריך למתחילים ובמדריך למפתחים.
תמיכה בשימוש בתוספים של ARCore ל-AR Foundation של Unity ליצירת אפליקציות ל-Android עם עוגנים ב-Cloud.
השינויים הבאים ב-Cloud Anchors:
- כדי לעמוד בדרישות הפרטיות המעודכנות שלנו לשימוש ב-ARCore SDK בגרסה 1.12 ואילך, עליכם לציין את השימוש ב-Cloud Anchors באופן בולט באפליקציה. לשם כך, צריך לכלול את הטקסט הבא, וגם קישור למידע נוסף, במסך ההודעה: "כדי להפעיל את הסשן הזה, Google תעבד נתונים חזותיים מהמצלמה שלך". תוכלו לעשות זאת על ידי הטמעת תהליך ההודעה המומלץ למשתמשים שזמין באפליקציות לדוגמה של Cloud Anchor.
פרטים נוספים זמינים במאמר דרישות בנושא פרטיות המשתמשים.
פרטים נוספים על Cloud Anchors:
Android:
Android NDK:
iOS:
Unity:
תוספים ל-ARCore:
מה חדש בגרסה 1.11.0 של ARCore
בגרסה הזו נוספו השינויים הבאים:
שמו של השירות ARCore שונה ל-Google Play Services למציאות רבודה. במכשירי Google Play, הוא מופץ עכשיו כחלק מ-Google Play Services.
הגדרות המצלמה של ARCore מטרגטות 60fps במכשירים נתמכים, ומעדיפות את השימוש בחיישן העומק במכשירים שיש להם כזה. אפשר להשתמש במסננים חדשים של הגדרות המצלמה כדי להגביל את קצב הפריימים של הצילום במצלמה ל-30fps, למנוע מ-ARCore להשתמש בחיישני עומק או לסנן על סמך שתי האפשרויות.
פרטים נוספים על הגדרות המצלמה:
Android:
Android NDK:
Unity:
מה חדש בגרסה 1.10.0 של ARCore
במהדורה הזו נוספו יכולות חדשות של הערכת תאורה סביבתית מסוג HDR ל-Lighting Estimation API ל-Android, ל-Android NDK ול-Unity.
ממשקי ה-API האלה משתמשים בלמידת מכונה כדי לנתח את התמונה שמתקבלת מהמצלמה ולהעריך את התאורה בסביבה. אפשר להשתמש בנתוני האומדן של התאורה כדי ליצור תאורה מציאותית במיוחד, כולל אור ראשי כיווני, צללים, תאורה סביבתית, אזורים בהירים ומבריקים והשתקפויות באובייקטים וירטואליים. התוצאה היא תוכן וירטואלי שנראה ריאליסטי יותר.
לקבלת פרטים נוספים:
Android:
Android NDK:
Unity:
מה חדש בגרסה 1.9.0 של ARCore
חדש ב-ARCore SDK ל-Android
בגרסה הזו נוספו הממשקים החדשים הבאים:
Scene Viewer הוא נגן תצוגה immersive שמאפשר לכם להציג חוויות AR באתר שלכם. היא מאפשרת למשתמשים במכשירי Android למקם מודלים תלת-ממדיים שמתארחים באינטרנט בסביבה שלהם, להציג אותם ולבצע איתם פעולות בקלות.
תכונות חדשות של תמונות משופר:
מעכשיו, ARCore עוקב אחרי תמונות מורחבות נעות. דוגמאות לתמונות נעות הן מודעה באוטובוס חולף או תמונה על אובייקט שטוח שמשתמש מחזיק ביד ומזיז אותה.
אחרי שתמונה מזוהה, ARCore יכולה להמשיך לעקוב אחרי המיקום והכיוון שלה, גם אם היא זזה באופן זמני מחוץ לטווח הראייה של המצלמה.
משתמשים ב-
AugmentedImage#getTrackingMethod()
(Java) או ב-ArAugmentedImage_getTrackingMethod()
(NDK) כדי לקבוע אם המצלמה עוקבת כרגע אחרי התמונה המשולבת (FULL_TRACKING
), או שהיא עוקבת אחריה על סמך המיקום האחרון הידוע שלה (LAST_KNOWN_POSE
).
במסמכי העזרה של Cloud Anchors יש עכשיו הסבר מפורט יותר על האופן שבו עושים אירוח של עוגנים ומפנים אליהם.
חדש ב-ARCore SDK ל-Unity
תכונות חדשות של תמונות משופר:
מעכשיו, ARCore עוקב אחרי תמונות מורחבות נעות. דוגמאות לתמונות נעות הן מודעה באוטובוס חולף או תמונה על אובייקט שטוח שמשתמש מחזיק בזמן שהוא מזיז אותו.
אחרי שתמונה מזוהה, ARCore יכולה להמשיך לעקוב אחרי המיקום והכיוון שלה, גם אם היא זזה באופן זמני מחוץ לטווח הראייה של המצלמה.
ממשק ה-API החדש
AugmentedImage.GetTrackingMethod()
מאפשר לאפליקציה לקבוע אם המצלמה עוקבת כרגע אחרי התמונה המשולבת (FullTracking
), או אם היא עוקבת אחריה על סמך המיקום האחרון הידוע שלה (LastKnownPose
).
במסמכי העזרה של Cloud Anchors יש עכשיו הסבר מפורט יותר על האופן שבו עושים אירוח של עוגנים ומפנים אליהם.
חדש ב-ARCore SDK ל-iOS
התמיכה במכשירים הבאים:
iPad Mini מדור חמישי
iPad Air מדור שלישי
במסמכי העזרה של Cloud Anchors יש עכשיו הסבר מפורט יותר על האופן שבו עושים אירוח של עוגנים ומפנים אליהם.