שינויים חדשים וחשובים ב-ARCore.
מה חדש ב-ARCore גרסה 1.44.0
גרסה זו לא כוללת תכונות חדשות.
מה חדש ב-ARCore גרסה 1.43.0
הוספת ה-API להעברת יוצרים גיאו-מרחביים
תכונת החיפוש של יוצרים גיאו-מרחביים משתמשת עכשיו ב-New Places API של Google. כדי להשתמש בתכונת החיפוש, צריך להפעיל את Places API (New) במסוף Google Cloud.
מה חדש ב-ARCore גרסה 1.42.0
הצמדה למשבצת בכלי 'יצירת גיאו-מרחבי' ל-Unity
לחצן 'הצמדה ללוח' נוסף לחלונית 'סוקר העריכה' של ARGeospatialCreatorAnchor
. הלחצן הזה מגדיר ערך גובה בעורך הטקסט בלבד של עוגן או גג לחלק העליון של גיאומטריה של משבצות תלת-ממדיות בקווי האורך והרוחב הנוכחיים של העוגן. שימו לב שהמאפיין הזה לא משפיע על ההתנהגות בזמן הריצה. כך אפשר להתאים את מיקום העוגן בעורך כך שיתאים למיקום שלו בזמן הריצה.
מה חדש ב-ARCore גרסה 1.41.0
ממשק API של יוצרים גיאו-מרחביים
התכונה 'יצירת גיאו-מרחבי' ב-Unity כוללת עכשיו תמיכה ביצירה ובשינוי של אובייקטים גיאו-מרחביים של יוצרים במצב עריכה. המחלקות וממשקי ה-API החדשים שזמינים מתוארים ב-Geospatial Creator API.
תמיכה בגרסאות 5.x של AR Foundation (בטא)
תוספי ARCore ל-AR Foundation של Unity תומכים עכשיו בגרסאות 5.x של AR Foundation. כדי להעביר פרויקט קיים ל-AR Foundation, תוכלו להיעזר במדריך להעברת נתונים (מיגרציה).
מה חדש ב-ARCore גרסה 1.40.0
סמנטיקה של סצנות ב-iOS
ה-Scene Semantics API זמין עכשיו ב-ARCore SDK ל-iOS, וגם בתוספי ARCore ל-AR Foundation של Unity, שמטרגטים את פלטפורמת iOS. ה-Sene Semantics API מאפשר למפתחים להבין בזמן אמת את הסצנה שמסביב למשתמש, ולהוסיף פיקסלים ל-11 קטגוריות של רכיבים חיצוניים. למידע נוסף, ראו מבוא לסמנטיקה של סצנה.
iOS
Unity (AR Foundation)
חיפוש נקודות עניין בכלי 'יוצרים גיאו-מרחביים' ב-Unity
הכלי 'יוצרים גיאו-מרחביים' ב-Unity תומך עכשיו בחיפוש טקסט כדי למקם את תצוגת משבצות תלת-ממד של תמונות. למידע נוסף, ראו חיפוש נקודות עניין בכלי 'יוצרים גיאו-מרחביים'.
מה חדש ב-ARCore גרסה 1.39.0
גרסה זו לא כוללת תכונות חדשות.
מה חדש ב-ARCore גרסה 1.38.0
גרסה זו לא כוללת תכונות חדשות.
מה חדש ב-ARCore גרסה 1.37.0
סמנטיקה של סצנות
התכונה 'סמנטיקה של סצנות' מספקת פרטים עשירים יותר על הסצנה שמסביב, וכך קל יותר להבין את העולם שסביב המשתמש. התכונה 'סמנטיקה של סצנה' מפעילה מודל למידת מכונה בפיד התמונות של המצלמה, ומספקת תמונה סמנטית עם כל פיקסל שמתאים לאחת מ-11 תוויות של מושגי חוץ.
למידע נוסף, ראו מבוא לסצינה סמנטיקה ואפליקציה לדוגמה של semantics_java.
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
iOS
מומלץ לעיין במאמר מה חדש ב-ARCore v1.40.0.
גיאומטריה של Streetscape
Streetscape Geometry הוא API גיאו-מרחבי חדש של ARCore שמספק את נתוני הגיאומטריה של המבנים ופני השטח באזור של המשתמש בזמן הפעלה של Geospatial API.
Android (Kotlin/Java)
ניתן לעיין במדריך למפתחים בנושא גיאומטריה של Streetscape (קוטלין/Java). בנוסף, האפליקציה לדוגמה geospatial_java עודכנה, ועכשיו היא כוללת גיאומטריה של Streetscape.
Android NDK (C)
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריה של Streetscape (C).
Unity (AR Foundation)
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריה של Streetscape (Unity).
iOS
מידע נוסף זמין במדריך למפתחים בנושא גיאומטריה של Streetscape (iOS). נוסף לכך, האפליקציה GeospatialExample עודכנה ועכשיו היא כוללת גיאומטריה של Streetscape.
GARStreetscapeGeometry
:GARStreetscapeGeometry.mesh
מספק רשתות תלת-ממדיות.GARStreetscapeGeometry.meshTransform
מספקת את טרנספורמציית המקור של הגיאומטריה ביחס למרחב העולם של הסשן.- האפשרות
GARStreetscapeGeometry.trackingState
שומרת על מצב המעקב. GARStreetscapeGeometry.type
מציין אם מדובר בפני השטח או בגיאומטריה של בניין.- המדד
GARStreetscapeGeometry.quality
מספק את איכות הגיאומטריה. GARStreetscapeGeometry.identifier
מספק את המזהה הייחודי של הגיאומטריה.GARSession.createAnchorOnStreetscapeGeometry:transform:error:
יוצר עוגן במיקום ובכיוון שצוינו.GARSession.raycastStreetscapeGeometry:direction:error:
מבצע צילום קרניים על רקע גיאומטריה של Streetscape שנטענה בסצנה.
דיבלים לגגות
מודעות עוגן הן סוג חדש של עוגן גיאו-מרחבי שמאפשר לעגן תוכן לגג.
Android (Kotlin/Java)
ראו עוגנים גיאו-מרחביים (Java). בנוסף, האפליקציה לדוגמה geospatial_java עודכנה, ועכשיו היא כוללת מודעות עוגן מסוג Rooftop.
Android NDK (C)
מידע נוסף זמין במאמר עוגנים גיאו-מרחביים (C).
Unity (AR Foundation)
מידע נוסף זמין במאמר עוגנים גיאו-מרחביים. בנוסף, הדגימה גיאו-מרחבית עודכנה וכוללת כעת מודעות עוגן.
ARAnchorManagerExtensions.ResolveAnchorOnRooftopAsync()
מספק עוגן לאובייקטים במשחק בסצנה בקווי הרוחב, בקו האורך, בגובה מעל הגג ובכיוון שצוינו.ResolveAnchorOnRooftopPromise
ResolveAnchorOnRooftopResult
iOS
מידע נוסף זמין במאמר עוגנים גיאו-מרחביים (iOS). נוסף לכך, האפליקציה GeospatialExample עודכנה ועכשיו היא כוללת מודעות עוגן.
GARSession.createAnchorWithCoordinate:altitudeAboveRooftop:eastUpSouthQAnchor:completionHandler:error:
יוצר עוגן על הגג במיקום שצוין, גובה מעל הגג במטרים וכיוון ביחס לכדור הארץ.GARCreateAnchorOnRooftopFuture
נמצא במצב אסינכרוני של זיהוי עוגן בחלק העליון של הגג.GARRooftopAnchorState
מתאר את מצב הפענוח של עוגן על הגג.
עומק גיאו-מרחבי
כשגם המצבים Depth API וגם המצבים גיאומטריה של Streetscape מופעלים בסשן ARCore באזורים עם כיסוי VPS, תמונות העומק שנוצרו משתפרות באמצעות גיאומטריה של Streetscape. הגיאומטריה של Streetscape משולבת בכל תמונת עומק שנוצרה בטווח של 65.535 מטרים. כדי לראות את היתרון הזה, אין צורך לבצע שינויים כשקוראים ל-Depth API.
Android (Kotlin/Java)
מידע נוסף זמין במאמר עומק גיאו-מרחבי (Java).
Android NDK (C)
מידע נוסף זמין בקטע עומק גיאו-מרחבי (C).
Unity (AR Foundation)
מידע נוסף זמין בקטע עומק גיאו-מרחבי (C).
iOS
התכונה 'סמנטיקה של סצנות' לא זמינה כרגע ב-iOS.
תמיכה ברינדור Vulkan
עכשיו ARCore מספק תמיכה בעיבוד Vulkan על ידי חשיפת התמונה מהמצלמה דרך AHardwareBuffer
. כדי להשתמש במאגר האחסון הזמני של החומרה, צריך לקשר אותו ל-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.ImageStabilizationMode
Frame.transformCoordinates3d()
Session.isImageStabilizationModeSupported()
- יש בעיה ידועה שבה קריאה לפונקציה
Frame.transformCoordinates3d()
עם קואורדינטות דו-ממדיות שאינןOPENGL_NORMALIZED_DEVICE_COORDINATES
תגרום לקריסה במקום להשלכה שלIllegalArgumentException
. הבעיה הזו תיפתר בגרסה הבאה.
Android NDK (C)
ArImageStabilizationMode
ArFrame_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.
ממשקי API אסינכרוניים של ARCore
הגרסה הזו מציגה ממשקי API אסינכרוניים חדשים של ARCore לשיפור הארגונומיה במהלך עבודה עם פעולות אסינכרוניות, בהתאם לפרדיגמה 'עתיד' ו'הבטחה'.
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. - פתרון עוגןים של Cloud: משתמשים ב-
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
ARCore SDK ל-iOS תומך עכשיו באופן רשמי ב-Swift Package Manager. במאמר הפעלת AR באפליקציה ל-iOS מוסבר איך לשלב את ARCore באמצעות Swift Package Manager.
מה חדש ב-ARCore גרסה 1.35.0
דיוק במיקום גיאו-מרחבי מחליף את הכותרת בפיתוק
עכשיו, כל התנוחות הגיאו-מרחביות חושפות את דיוק הכיוון של סיבוב הפה ומחליפים את דיוק הכותרת.
- 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 ל-Android NDK
- נתוני הגרסה של ARCore SDK ל-iOS
- נתוני הגרסה של ARCore ל-AR Foundation
מה חדש ב-ARCore גרסה 1.34.0
איך בודקים אם יכולות גיאו-מרחביות זמינות במיקום הנוכחי של המכשיר
ה-API הגיאו-מרחבי יכול עכשיו לבדוק את הזמינות של מערכת המיקום החזותי (VPS) במיקום אופקי ספציפי בזמן הריצה. אפשר להשתמש ב-API הזה בלי סשן AR פעיל. לדוגמה, כדי להציג לחצן 'Enter AR' רק כש-VPS זמין.
- Java/Kotlin:
Session.checkVpsAvailabilityAsync()
- ג:
ArSession_checkVpsAvailabilityAsync()
- iOS:
GARSession.checkVPSAvailabilityAtCoordinate:completionHandler:
- Unity (קרן AR):
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): קוואטרניון האיחוד האירופי של התנוחה
- iOS: כתובת ה-URL של התנוחה
eastUpSouthQTarget
- Unity: כתובת ה-URL
EunRotation
של התנוחה
שינויים ועדכונים נוספים
בנתוני הגרסה מפורטים שינויים אחרים, תיקוני באגים ושיפורי ביצועים:
- נתוני הגרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore ל-Android NDK
- נתוני הגרסה של ARCore SDK ל-iOS
- נתוני הגרסה של ARCore ל-AR Foundation
מה חדש ב-ARCore גרסה 1.33.0
נקודת קצה חדשה של Cloud Kends
- כדי להשתמש בעוגנים בענן, עכשיו צריך להפעיל את ARCore API במקום את ARCore Cloud Origin 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 מקובל Management API מהקצה העורפי שלך, צריך לשנות גם את שם הדומיין ל-
arcore.googleapis.com
, אחרי הפעלת ARCore API. - התמיכה ב-API או בנקודת הקצה הישנה תימשך עד אוגוסט 2023.
- פרטים נוספים זמינים במאמר שינויים בנקודות קצה של עוגן בענן ב-ARCore 1.33.
- ה-API החדש משתמש בשם הדומיין
עוגנים של פני שטח
- ממשק API של עוגן פני שטח גיאו-מרחבי יוצר עוגן במיקום אופקי ובגובה מוגדרים, ביחס לפני השטח של המיקום האופקי.
שינויים ועדכונים נוספים
בנתוני הגרסה מפורטים שינויים אחרים, תיקוני באגים ושיפורי ביצועים:
- נתוני הגרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore ל-Android NDK
- נתוני הגרסה של ARCore SDK ל-iOS
- נתוני הגרסה של ARCore ל-AR Foundation
מה חדש ב-ARCore גרסה 1.32.0
גרסה זו לא כוללת תכונות חדשות.
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 לטירגוט של הפרויקט ב-Unity בקטע Project Settings > Player > Android > Other Settings (הגדרות הפרויקט > נגן > Android > הגדרות אחרות) יבטל את הערך
targetSdkVersion
של ARCore.
- Android SDK: ציון
שינויים ועדכונים נוספים
בנתוני הגרסה מפורטים שינויים אחרים, תיקוני באגים ושיפורי ביצועים:
- נתוני הגרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore ל-Android NDK
- נתוני הגרסה של ARCore SDK ל-iOS
- נתוני הגרסה של ARCore ל-AR Foundation
מה חדש ב-ARCore גרסה 1.31.0
API גיאו-מרחבי של ARCore
ה-ARCore Geospatial API משתמש בנתונים ממודלים תלת-ממדיים ב-Google Earth ומנתוני תמונות Street View ממפות Google, כדי לאפשר לאפליקציה שלכם ליהנות מחוויות של מציאות רבודה סוחפת בקנה מידה גלובלי המבוססת על מיקום.
במאמר מבוא ל-ARCore Geospatial API תוכלו לקרוא מסמכי תיעוד למפתחים ספציפיים לפלטפורמה, וכדי להתחיל להשתמש ב-Geospatial API החדש.
עומק לטווח ארוך
ה-ARCore Depth API עבר אופטימיזציה כך שיכלול חישת עומק לטווח ארוך יותר, כדי להגדיל את הטווח של תצפיות העומק שניתן לייצג. נעשה שימוש בכל תמונות העומק ב-16 סיביות, ומספקות טווח מקסימלי של 65,535 מילימטרים. בעבר אוכלסו רק נתוני 13 ביט, והמגבלה היא 8,191 מילימטרים.
במאמר שינויים בעומק תוכלו לקרוא מסמכי תיעוד למפתחים ספציפיים לפלטפורמה, ולהבין את השינויים ב-Depth API.
הערות ספציפיות לפלטפורמה
Android
ממשקי API גיאו-מרחביים חדשים של ARCore
Java
Earth
מאפשר התאמה לשוק המקומי בקואורדינטות יחסיות של כדור הארץ.Earth.createAnchor()
יוצרAnchor
חדש במיקום ובכיוון שצוינו ביחס ל-Earth.
Earth.Earthstate
מתאר את המצב הנוכחי שלEarth
, כוללTrackingState
שלו.GeospatialPose
מתאר מיקום, גובה וכותרת מצפן ספציפיים ביחס לכדור הארץ.
C
ArEarth
מאפשר התאמה לשוק המקומי בקואורדינטות יחסיות של כדור הארץ.ArEarth_acquireNewAnchor()
יוצרAnchor
חדש במיקום ובכיוון שצוינו ביחס ל-Earth.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 מ"מ.
- פונקציית 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:
AREarthManager
מאפשר התאמה לשוק המקומי בקואורדינטות יחסיות של כדור הארץ.- הפונקציה
EarthTrackingState
מקבלת את מצב המעקב של Earth של הפריים העדכני ביותר. - הפונקציה
EarthState
ממשיכה לעמוד בתנאי השגיאות של Earth.
- הפונקציה
GeospatialPose
מתאר מיקום, גובה וכותרת מצפן ספציפיים ביחס לכדור הארץ.ARGeospatialAnchor
מספק עוגן לאובייקטים של המשחק בסצנה, שצוינו במיקום ובכיוון ביחס ל-Earth.
iOS
ממשקי API גיאו-מרחביים חדשים של ARCore:
GAREarth
מספק התאמה לשוק המקומי ביחס ל-Earth.GAREarthState.earthState
מנהל את מצבי השגיאה והתנאים.GAREarthState.trackingState
שומר על מצב המעקב, הנדרש לנתונים גיאו-מרחביים.
GARGeospatialTransform
ייצוג של טרנספורמציה גלובלית כולל הערכות של מיקום, כותרת, גובה ודיוק.GARSession.createAnchorWithCoordinate:altitude:eastUpSouthQAnchor:error:
יצירת עוגן גיאו-מרחבי במיקום ובכיוון שצוינו ביחס לכדור הארץ.
שינויים נוספים
בנתוני הגרסה מפורטים שינויים אחרים, תיקוני באגים ושיפורי ביצועים:
- נתוני הגרסה של ARCore SDK ל-Android
- נתוני הגרסה של ARCore ל-Android NDK
- נתוני הגרסה של ARCore SDK ל-iOS
- נתוני הגרסה של ARCore ל-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 ל-Unity, ומאפשר שדרוג ל-EDM. שימוש בגרסת ה-Lite הזו עשוי לפתור חוסר תאימות בזמן השימוש בספריות של Firebase. כדי להתחיל, עיינו בהוראות ההתקנה של תוספי ARCore ל-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 תלויה עכשיו בפלאגין של ARKit XR כדי לוודא שהגרסה המותקנת של AR Foundation תואמת לגרסת הפלאגין ARKit XR. ההגדרה הזו מתקנת שגיאת הידור (compile) בהתקנת תוספי ARCore ב-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 גרסה 1.28.0
- החל מנובמבר 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
. אין השפעה על AR Foundation 4.x וגרסאות מאוחרות יותר. הקריאות אלXRCameraSubsystem.TryGetLatestImage(out XRCameraImage)
יפעלו כרגיל. - ARCore SDK ל-Unity (הוצא משימוש): קריאות ל-
Frame.CameraImage.AcquireCameraImageBytes()
יהיו בגודל0
x0
פיקסלים. קריאות אל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 ל-AR Foundation
בנוסף לתיקוני באגים שונים, הגרסה הזו כללה את הפריטים הבאים.
אפליקציות לדוגמה ב-Kotlin
הוספנו את hello_ar_kotlin כדי להדגים שיטות מומלצות לשימוש ב-Kotlin.
למידע נוסף, ראו QuickStart ל-Android.
הוספנו את ml_kotlin כדי להדגים איך אפשר להשתמש במודל סיווג תמונות עם ARCore.
מידע נוסף זמין במאמר שימוש ב-ARCore כקלט למודלים של למידת מכונה.
מה חדש ב-ARCore גרסה 1.26.0
בגרסה הזו נוספו השינויים החשובים הבאים:
- עכשיו יש תמיכה במזהי URI למערכי נתונים בקטע הקלטה והפעלה.
שינויים ועדכונים נוספים
נתוני הגרסה הבאים כוללים תיקוני באגים נוספים ושינויים נוספים שעלולים לגרום לכשל.
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני גרסה מלאים של ARCore ל-Android NDK
- נתוני גרסה מלאים של ARCore SDK ל-iOS
- נתוני הגרסה של ARCore ל-AR Foundation
מה חדש ב-ARCore גרסה 1.25.0
גרסה זו לא כוללת תכונות חדשות. אתם יכולים לעיין בנתוני הגרסה הבאים לגבי תיקוני באגים ושיפורי ביצועים שונים.
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני גרסה מלאים של ARCore ל-Android NDK
- נתוני גרסה מלאים של ARCore SDK ל-iOS
- נתוני גרסה מלאים של ARCore SDK ל-Unity
- נתוני הגרסה של ARCore ל-AR Foundation
מה חדש ב-ARCore גרסה 1.24.0
בגרסה הזו נוספו השינויים החשובים הבאים:
- Raw Depth API חדש שמספק תמונת עומק ללא סינון לשטח התמונות
- יכולת הקלטה של מסלול נתונים בהתאמה אישית ל- Recording & Playback API
- יכולת לבצע בדיקות עומק היטים
עומק גולמי
ה-Raw Depth API מספק נתוני עומק לתמונת מצלמה ברמת דיוק גבוהה יותר מאשר נתוני Depth API מלאים, אבל לא תמיד מדובר בכל פיקסל. ניתן גם לבצע עיבוד נוסף של תמונות עומק גולמיות, יחד עם תמונות המהימנות התואמות שלהן, וכך לאפשר לאפליקציות להשתמש רק בנתוני העומק עם רמת דיוק מספקת בתרחיש לדוגמה הספציפי שלהן.
מדריכים למפתחים:
הקלטת מסלול בהתאמה אישית
היכולת החדשה של מעקב נתונים בהתאמה אישית ב- Recording & Play API מאפשרת להוסיף נתונים בהתאמה אישית למסגרת ARCore במהלך ההקלטה ולאחזר את אותם נתונים מהפריים במהלך ההפעלה.
מדריכים למפתחים:
בדיקות עומק
בעבר, אפשר היה לבצע מבחני היטים רק במטוסים שזוהו, תוך הגבלה של המיקומים למשטחים גדולים ושטוחים. בדיקות עומק מפיקות תועלת מנתוני העומק החלק והגולמי, כדי לספק תוצאות מדויקות יותר, גם על משטחים שאינם מישוריים ועם מרקם נמוך.
מדריכים למפתחים:
שינויים ועדכונים נוספים
נתוני הגרסה הבאים כוללים תיקוני באגים נוספים ושינויים נוספים שעלולים לגרום לכשל.
- נתוני הגרסה המלאים של ARCore SDK ל-Android
- נתוני גרסה מלאים של ARCore ל-Android NDK
- נתוני גרסה מלאים של ARCore SDK ל-iOS
- נתוני גרסה מלאים של ARCore SDK ל-Unity
- נתוני הגרסה של ARCore ל-AR Foundation
מה חדש ב-ARCore גרסה 1.23.0
בהמתנה לתמיכה בשתי מצלמות
בשבועות הקרובים נשיק תמיכה ב-Dual Camera. מידע נוסף זמין בדף מכשירים נתמכים.
כלים חדשים לניפוי באגים
המפתחים יכולים להפעיל את התכונה 'כוונת שידור' כדי:
רישום ביומן של קריאות ל-ARCore API ביומן ניפוי הבאגים של Android
שכבת-העל של הביצועים של ARCore
אירוח ופתרון בעיות עוגן בענן
אפליקציות שתומכות ב-AR שפותחו באמצעות ARCore SDK 1.11.0 או גרסאות קודמות לא יכולות יותר לארח או לפענח עוגן של Cloud.
ג: תווי עוגן של ענן שמוחזרים על ידי
ArSession_hostAndAcquireNewCloudAnchor
ו-ArSession_resolveAndAcquireNewCloudAnchor
תמיד יקבלו את המצבAR_CLOUD_ANCHOR_STATE_ERROR_INTERNAL
.Java: מפתחות עוגן בענן שמוחזרים על ידי
Session.hostCloudAnchor(Anchor)
ו-Session.resolveCloudAnchor(String)
תמיד יקבלו את המצבAnchor.CloudAnchorState.ERROR_INTERNAL
.Unity: תגי עוגן של Cloud שמוחזרים על ידי
XPSession.CreateCloudAnchor(Anchor)
ו-XPSession.ResolveCloudAnchor(string)
תמיד יקבלו את המצבCloudServiceResponse.ErrorInternal
.
אפליקציות שפותחו עם ARCore SDK 1.12.0 ואילך לא יושפעו. השימוש שלהם ב-ARCore Cloud Origin API כפוף למדיניות ההוצאה משימוש.
שינויים ועדכונים נוספים
נתוני הגרסה הבאים מפורטים לתיקוני באגים נוספים ולשינויי תוכנה אחרים.
מה חדש ב-ARCore גרסה 1.22.0
בגרסה הזו נוספו ממשקי API להקלטה ולהפעלה וממשקי API חדשים של מסנן הגדרת המצלמה לתוספי ARCore בשביל AR Foundation. פרטים נוספים זמינים בנתוני הגרסה המלאים של תוספי ARCore.
שינויים ועדכונים נוספים
נתוני הגרסה הבאים מפורטים לתיקוני באגים נוספים ולשינויי תוכנה אחרים.
מה חדש ב-ARCore גרסה 1.21.0
בגרסה הזו נוספו ממשקי API חדשים להקלטה ולהפעלה ל-Android, ל-Android NDK ול-Unity.
הקלטה והפעלה
באמצעות ממשקי ה-API להקלטה ולהפעלה, אפשר להקליט נתוני וידאו ו-AR פעם אחת בסביבה מסוימת, ולהשתמש בתוכן הזה כדי להחליף סשן של צילום וידאו בשידור חי למטרות בדיקה. טכנולוגיית ARCore שומרת סשנים מוקלטים בקובצי MP4 שמכילים מספר טראקים של וידאו ונתונים שונים אחרים במכשיר. לאחר מכן תוכלו לכוון את האפליקציה להשתמש בנתונים האלה במקום בסשן של מצלמה בשידור חי. כך תוכלו להפעיל מחדש את התוכן הזה ללא הגבלת זמן, כדי לנסות אפקטים שונים ב-AR בלי לחזור לשדה.
לפרטים נוספים:
Java:
C:
Unity:
מה חדש ב-ARCore גרסה 1.20.0
בגרסה הזו נוספו השינויים החשובים הבאים:
תמיכה חדשה בעוגנים מתמידים של Cloud.
יכולות מעודכנות של מטא-נתונים של תמונות ל-Android ול-Android NDK.
הנחיות חדשות שמחייבות את Gradle מגרסה 5.6.4 ואילך, לתמיכה בתוספי ARCore ל-AR Foundation או ב-ARCore SDK ל-Unity (1.19 ואילך) ב-Unity מגרסה 2018.4 ואילך.
תמיכה חדשה בעוגנים קבועים בענן
לפני ARCore גרסה 1.20, אפשר היה לטפל בעוגנים של Cloud רק עד 24 שעות אחרי האירוח הראשון. בעזרת עוגנים בענן מתמידים אפשר עכשיו ליצור עוגן ב-Cloud עם אורך חיים (TTL) בין יום ל-365 יום. אפשר גם להאריך את משך החיים של העוגן אחרי שהוא כבר מתארח באמצעות Cloud 59 API.
השימוש בעוגנים קבועים של Cloud כפוף למדיניות החדשה בנושא ההוצאה משימוש של Cloud Kens.
ג: מדריך למפתחים,
ArSession_hostAndAcquireNewCloudAnchorWithTtl
, ו-ArSession_estimateFeatureMapQualityForHosting
.Java: מדריך למפתחים,
hostCloudAnchorWithTtl
ו-estimateFeatureMapQualityForHosting
.iOS: מדריך למפתחים,
hostCloudAnchor:TTLDays:error:
ו-estimateFeatureMapQualityForHosting:
.תוספי ARCore ל-AR Foundation: מדריך למפתחים ל-Android, מדריך למפתחים ל-iOS,
ARAnchorManager.HostCloudAnchor(ARAnchor, int)
,ARAnchorManager.SetAuthToken(string)
ו-ARAnchorManager.EstimateFeatureMapQualityForHosting(Pose)
.טירגוט לפי Unity ל-Android: מדריך למפתחים,
XPSession.CreateCloudAnchor(Anchor, int)
ו-XPSession.EstimateFeatureMapQualityForHosting(Pose)
.טירגוט לפי Unity ל-iOS: מדריך למפתחים,
XPSession.SetAuthToken(string)
ו-XPSession.CreateCloudAnchor(UnityARUserAnchorComponent, int)
.
שינויים ועדכונים נוספים
נתוני הגרסה הבאים מפורטים לתיקוני באגים נוספים ולשינויי תוכנה אחרים.
מה חדש ב-ARCore גרסה 1.19.0
בגרסה הזו נוספו השינויים החשובים הבאים:
- ממשק API חדש של מיקום ללא התקנה ל-Android, ל-Android NDK ול-Unity.
- הנחיות חדשות לפיתוח ל-Android 11 באמצעות Unity.
מיקום מודעה מיידית
ה-API של המיקום המיידי מאפשר למשתמשים להציב אובייקט AR על המסך בלי לחכות ש-ARCore יזהה את הגיאומטריה של המשטח. המיקום של האובייקט משתפר בזמן אמת ככל שהמשתמש מתקדם בסביבה. אחרי ש-ARCore מזהה את התנוחה הנכונה באזור שבו ממוקם אובייקט ה-AR, האובייקט הלבן מתעדכן באופן אוטומטי כך שהוא יהיה מדויק.
בקליפ הבא מוצגת דמות וירטואלית של Android על שולחן בעולם האמיתי. הצורה לבנה וקטנה בהרבה כשהיא מוצבת לראשונה. אחרי ש-ARCore מחדד את החישובים של מידות הסצנות, הדמות קופצת למיקום מדויק יותר. כתוצאה מכך, עשויים להיות הבדלים ב'גודל' הנתפס של האובייקט.
לפרטים נוספים:
Android:
Android NDK:
Unity:
מה חדש ב-ARCore גרסה 1.18.0
בגרסה הזו נוספו השינויים החשובים הבאים:
- Depth API חדש ל-Android, ל-Android NDK ול-Unity.
- הנחיות חדשות ליצירת נכסים של פנים משופרות וייבוא שלהם אל Android Studio.
- ב-
4.1.0-preview.2
תהיה תמיכה ב-API של עומק גם ב-AR Foundation
וגם ב-ARCore XR Plugin
.
API של עומק
במכשירים עם תמיכה בעומק, כדי ליצור מפות עומק משתמש ב-Depth API באמצעות מצלמת ה-RGB של המכשיר שתומך ב-ARCore או בחיישן עומק פעיל (אם יש כזה). לאחר מכן אפשר להשתמש בעומק הפיקסלי שמספק מפת עומק כדי להציג אובייקטים וירטואליים בצורה מדויקת לפני או מאחורי אובייקטים בעולם האמיתי, וכך לספק חוויית משתמש סוחפת ומציאותית.
לדוגמה, בתמונות הבאות מוצגת דמות Android וירטואלית במרחב אמיתי שמכיל תא המטען ליד דלת. Depth API מסמן כראוי את הדמות מאחורי קצה Trunk.
לפרטים נוספים:
Android:
Android NDK:
Unity:
מה חדש ב-ARCore גרסה 1.17.0
מצוין ב-ARCore SDK ל-Android
נוספו שיטות חדשות שמאפשרות אגירת נתונים של מספר פריימים של המצלמה. אפשר להשתמש בשיטה הזו כדי לצמצם את השונות בקצבי הפריימים, כמו גם שיטות אחרות, כמו עיבוד מרובה שרשורים.
נוספו שימוש חסר בחיישן עומק ומדדי יעד FPS:
כדאי לעיין גם בנתוני הגרסה המלאים של Android SDK ל-Android.
מצוין ב-ARCore SDK ל-Unity
- נוספה תמיכה בעיבוד מרובה שרשורים ב-Unity מגרסה 2018.2 ואילך. ברוב המקרים, היא תשפר את הביצועים ויכולה לצמצם את השונות בקצבי הפריימים. זוהי הגדרת פרויקט ב-Unity, שנמצאת בהגדרות הפרויקט > נגן > Android > הגדרות אחרות > עיבוד שרשורים מרובים. פרטים נוספים זמינים במדריך למפתחים.
- נוספו
SessionStatus.ErrorCameraNotAvailable
ו-SessionStatus.ErrorIllegalState
כדי לציין מצבי שגיאה ספציפיים בסשן של ARCore.
כדאי לעיין גם בנתוני הגרסה המלאים של ARCore SDK ל-Unity.
מצוין ב-ARCore SDK ל-iOS
הגודל הבינארי של Cloud KST SDK ירד באופן משמעותי.
יש עכשיו תמיכה ב-Bitcode לפניות רבודה.
כדאי לעיין גם בנתוני הגרסה המלאים של ARCore SDK ל-iOS.
מה חדש ב-ARCore גרסה 1.16.0
מצוין ב-ARCore SDK ל-Android וב-Sceneform SDK ל-Android
בגרסה הזו נוספו השינויים החשובים הבאים:
- רוב המכשירים מחזירים עכשיו הגדרות מצלמה נתמכות נוספות עם רזולוציות הטקסטורה של ה-GPU נמוכות יותר מרזולוציית הטקסטורה של ה-GPU שמוגדרת כברירת מחדל במכשיר.
פרטים נוספים זמינים במאמר מכשירים נתמכים ב-ARCore.
אפשר להשתמש ברזולוציות ה-GPU המורחבות דרך ה-API של
getSupportedCameraConfigs(CameraConfigFilter)
.
לעיונך:
בולט בתוספי ARCore ל-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
מה חדש ב-ARCore גרסה 1.15.0
בולט בתוספי ARCore ל-AR Foundation
בגרסה הזו נוספים השינויים החשובים הבאים.
נוספה דוגמה של CloudAnchors שמראה איך ליצור חוויות AR משותפות גם ל-Android וגם ל-iOS. קראו את ההוראות ל-Android או ל-iOS.
Unity 2019.2.17f1 היא עכשיו הגרסה המינימלית המומלצת לשימוש עם ARCore extensions.
מצוין ב-ARCore SDK ל-Unity
הגרסה הזו כוללת את הבעיות הידועות הבאות.
התכונה 'תצוגה מקדימה מיידית' עלולה להקפיא את Unity במהלך שימוש ב-Android 9 ובכבל USB 3. כדי לפתור את הבעיה, צריך לעדכן ל-Android 10 או להשתמש בכבל USB 2.
אם הרזולוציה של תצוגת המשחק ב-Unity גבוהה מדי, יכול להיות שהתצוגה המקדימה המיידית לא תוצג במכשיר. כדי לפתור את הבעיה, אפשר להקטין את רזולוציית הצפייה במשחקים של Unity ב-Editor.
נתוני גרסה מלאים של ARCore SDK ל-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 בהתאם למדיניות הפרטיות של Google ולתנאים ולהגבלות של Google APIs. יש לך אפשרות לבטל את ההסכמה לכך.
מה חדש ב-ARCore גרסה 1.13.0
בגרסה הזו נוספים השינויים החשובים הבאים.
תמיכה בשימוש בתוספי ARCore ל-AR Foundation של Unity לצורך בניית אפליקציות ל-iOS עם Cloud Kens.
נתוני הגרסה הבאים מפורטים לתיקוני באגים נוספים ולשינויי תוכנה אחרים.
מה חדש ב-ARCore גרסה 1.12.0
בגרסה הזו נוספו השינויים הבאים:
הוספת התכונה 'פנים רבודה' ל-iOS. למידע נוסף, ראו סקירה כללית, quickstart ומדריך למפתחים.
תמיכה בשימוש בתוספי ARCore ל-AR Foundation של Unity כדי ליצור אפליקציות ל-Android עם Cloud עוגן.
השינויים הבאים בעוגנים של Cloud:
- כדי לעמוד בדרישות הפרטיות המעודכנות שלנו לשימוש בערכות ARCore SDK מגרסה 1.12 ואילך, צריך להוסיף גילוי נאות לגבי השימוש בעוגנים של Cloud באופן בולט באפליקציה. כדי לעשות זאת, צריך להוסיף את הטקסט הבא (כולל קישור למידע נוסף) במסך ההודעה: "כדי להפעיל את הסשן הזה, Google תעבד נתונים חזותיים מהמצלמה". כדי לעשות את זה, צריך להטמיע את תהליך ההודעה המומלץ למשתמש, שזמין באפליקציות העוגן של Cloud.
לפרטים נוספים, כדאי לעיין במאמר בנושא הדרישות בנושא פרטיות משתמשים.
לפרטים נוספים על מודעות עוגן:
Android:
Android NDK:
iOS:
Unity:
תוספי ARCore:
מה חדש ב-ARCore גרסה 1.11.0
בגרסה הזו נוספו השינויים הבאים:
השם של שירות ARCore השתנה ל-Google Play Services למציאות רבודה. במכשירי Google Play, השירות מופץ עכשיו כחלק מ-Google Play Services.
ההגדרות של המצלמה ב-ARCore מטורגטות ל- 60 FPS במכשירים נתמכים, והן מקבלות עדיפות לפי חיישן העומק במכשירים שבהם יש חיישן כזה. אפשר להשתמש במסננים החדשים של הגדרות המצלמה כדי להגביל את קצב הפריימים של צילום המצלמה ל-30FPS, למנוע מ-ARCore להשתמש בחיישן עומק או לסנן על סמך שתי האפשרויות.
לפרטים נוספים על הגדרות המצלמה:
Android:
Android NDK:
Unity:
מה חדש ב-ARCore גרסה 1.10.0
בגרסה הזו נוספו יכולות חדשות להערכת התאורה של Environmental HDR באמצעות ה-Lighting Estimation API ל-Android, ל-Android NDK ול-Unity.
ממשקי ה-API האלה משתמשים בלמידת מכונה כדי לנתח את התמונה של מצלמת הקלט ולהעריך את התאורה הסביבתית. אפשר להשתמש בנתונים של הערכת התאורה כדי להציג תאורה מציאותית במיוחד, כולל אור כיווני ראשי, צלליות, תאורה סביבתית, הדגשות ספקולטיביות והשתקפויות באובייקטים וירטואליים. התוצאה היא תוכן וירטואלי שנראה מציאותי יותר.
לפרטים נוספים:
Android:
Android NDK:
Unity:
מה חדש ב-ARCore גרסה 1.9.0
חדש ב-ARCore SDK ל-Android
הגרסה הזו כוללת את התכונות וממשקי ה-API החדשים הבאים:
Scene Viewer מאפשר צפייה במציאות רבודה באתר שלכם. הוא מאפשר למשתמשים במכשירים ניידים של Android להציב בקלות מודלים תלת-ממדיים שמתארחים באינטרנט, לצפות בהם ולתקשר איתם.
תכונות חדשות של תמונות רבודה:
עכשיו, ב-ARCore מתבצע מעקב אחרי תמונות מוגדלות שזזות. דוגמאות לתמונות נעות הן פרסומת באוטובוס חולף או תמונה על חפץ שטוח שהמשתמש מחזיק כשהוא מזיז את ידו.
לאחר זיהוי תמונה, ARCore יכול להמשיך לעקוב אחרי המיקום והכיוון של התמונה, גם אם התמונה יצאה מתצוגת המצלמה באופן זמני.
משתמשים ב-
AugmentedImage#getTrackingMethod()
(Java) או ב-ArAugmentedImage_getTrackingMethod()
(NDK) כדי לקבוע אם המצלמה (FULL_TRACKING
) עוקבת כרגע אחרי התמונה המשופרת (FULL_TRACKING
) או אם היא במעקב על סמך המיקום האחרון שלה הידוע (LAST_KNOWN_POSE
).
מסמכי התיעוד של Cloud GCMs כוללים עכשיו הסבר מפורט על אופן האירוח והפתרון של עוגנים.
חדש ב-ARCore SDK ל-Unity
תכונות חדשות של תמונות רבודה:
עכשיו, ב-ARCore מתבצע מעקב אחרי תמונות מוגדלות שזזות. דוגמאות לתמונות נעות יכולות להיות פרסומת באוטובוס חולף או תמונה על חפץ שטוח שהמשתמש מחזיק כשהוא מזיז אותו.
לאחר זיהוי תמונה, ARCore יכול להמשיך לעקוב אחרי המיקום והכיוון של התמונה, גם אם התמונה יצאה מתצוגת המצלמה באופן זמני.
ה-
AugmentedImage.GetTrackingMethod()
של ה-API החדש מאפשר לאפליקציה לזהות אם המצלמה עוקבת אחרי התמונה הרבודה (FullTracking
), או שעוקבים אחרי המיקום האחרון שלה הידוע (LastKnownPose
).
מסמכי התיעוד של Cloud GCMs כוללים עכשיו הסבר מפורט על אופן האירוח והפתרון של עוגנים.
חדש ב-ARCore SDK ל-iOS
תמיכה במכשירים האלה:
iPad Mini דור חמישי
iPad Air דור שלישי
מסמכי התיעוד של Cloud GCMs כוללים עכשיו הסבר מפורט על אופן האירוח והפתרון של עוגנים.