תוסף OpenXR‏ XR_ANDROID_device_anchor_persistence

Name String

XR_ANDROID_device_anchor_persistence

סוג התוסף

תוסף למכונה

מספר תוסף רשום

458

גרסה

1

תלות בתוספים ובגרסאות

XR_EXT_uuid וכן XR_ANDROID_trackables

תאריך השינוי האחרון

2024-10-10

סטטוס כתובת ה-IP

לא ידוע על תלונות על הפרת זכויות יוצרים בנושא כתובת IP.

שותפים ביצירת התוכן

Nihav Jain, ‏ Google

לבנון צ'ן, Google

ספנסר קווין (Spencer Quin), Google

Kenny Vercaemer, ‏ Google

סקירה כללית

התוסף הזה מאפשר לאפליקציה לשמור, לאחזר ולבטל שמירה של עוגנים במכשיר הנוכחי עבור המשתמש הנוכחי, בין אפליקציות ובין סשנים במכשיר.

בדיקת יכולות המערכת

המבנה XrSystemDeviceAnchorPersistencePropertiesANDROID מוגדר באופן הבא:

typedef struct XrSystemDeviceAnchorPersistencePropertiesANDROID {
    XrStructureType    type;
    void*              next;
    XrBool32           supportsAnchorPersistence;
} XrSystemDeviceAnchorPersistencePropertiesANDROID;

תיאורי חברים

  • type הוא XrStructureType של המבנה הזה.
  • next הוא NULL או הפניה למבנה הבא בשרשרת המבנים. לא מוגדרים מבנים כאלה ב-OpenXR או בהרחבה הזו.
  • supportsAnchorPersistence הוא XrBool32 שמציין אם המערכת הנוכחית תומכת בעקביות של עוגנים במיקומים מרחביים.

אפליקציה יכולה לבדוק אם המערכת מסוגלת לשמור עוגנים מרחביים (ראו xrCreateAnchorSpaceANDROID) על ידי הרחבת XrSystemProperties עם המבנה XrSystemDeviceAnchorPersistencePropertiesANDROID בזמן הקריאה ל-xrGetSystemProperties. לגבי עוגנים נתמכים שניתן לעקוב אחריהם, אפליקציה יכולה להשתמש ב-xrEnumerateSupportedPersistenceAnchorTypesANDROID כדי לשלוח שאילתה לגבי הסוגים הנתמכים.

אם הערך XR_FALSE מוחזר עבור supportsAnchorPersistence, הערך XR_ERROR_FEATURE_UNSUPPORTED יוחזר מפונקציות העקביות של עוגן המכשיר שפועלות על עוגן מרחבי.

שימוש תקין (מרומז)

הפונקציה xrEnumerateSupportedPersistenceAnchorTypesANDROID מוגדרת באופן הבא:

XrResult xrEnumerateSupportedPersistenceAnchorTypesANDROID(
    XrInstance                                  instance,
    XrSystemId                                  systemId,
    uint32_t                                    trackableTypeCapacityInput,
    uint32_t*                                   trackableTypeCountOutput,
    XrTrackableTypeANDROID*                     trackableTypes);

תיאורי פרמטרים

  • session הוא XrSession שיוצר את XrDeviceAnchorPersistenceANDROID.
  • trackableTypeCapacityInput היא הקיבולת של trackableTypes, או 0 כדי לאחזר את הקיבולת הנדרשת.
  • trackableTypeCountOutput הוא הפניה למספר הפריטים במערך, או הפניה לקיבולת הנדרשת במקרה ש-trackableTypeCapacityInput לא מספיק.
  • trackableTypes הוא הפניה למערך של XrTrackableTypeANDROID, אבל יכול להיות NULL אם trackableTypeCapacityInput הוא 0.
  • בקטע פרמטרים של גודל מאגר מפורט תיאור של אחזור הגודל הנדרש של trackableTypes.

האפליקציה יכולה להשתמש ב-xrEnumerateSupportedPersistenceAnchorTypesANDROID כדי לבדוק אם יש תמיכה בשימור של עוגנים בפריטים אחרים למעקב מסוג XrTrackableTypeANDROID.

אם הערך של XrTrackableTypeANDROID לא מוחזר במערך trackableTypes, הערך XR_ERROR_FEATURE_UNSUPPORTED יוחזר מפונקציות העקביות של עוגן המכשיר שפועלות על עוגן מהסוג הזה.

שימוש תקין (מרומז)

קודי החזרה

הצלחה

  • XR_SUCCESS

כישלון

  • XR_ERROR_SYSTEM_INVALID
  • XR_ERROR_VALIDATION_FAILURE
  • XR_ERROR_RUNTIME_FAILURE
  • XR_ERROR_HANDLE_INVALID
  • XR_ERROR_INSTANCE_LOST
  • XR_ERROR_SIZE_INSUFFICIENT
  • XR_ERROR_FUNCTION_UNSUPPORTED

יצירת ידן עקביות (handle) של עיגון למכשיר

XrDeviceAnchorPersistenceANDROID הוא כינוי שמייצג את המשאבים הנדרשים לשמירה ולמעקב אחרי עוגנים שנשמרו.

XR_DEFINE_HANDLE(XrDeviceAnchorPersistenceANDROID)

הפונקציה xrCreateDeviceAnchorPersistenceANDROID מוגדרת בתור:

XrResult xrCreateDeviceAnchorPersistenceANDROID(
    XrSession                                   session,
    const XrDeviceAnchorPersistenceCreateInfoANDROID* createInfo,
    XrDeviceAnchorPersistenceANDROID*           outHandle);

תיאורי פרמטרים

אפליקציה יכולה ליצור אחיזה מסוג XrDeviceAnchorPersistenceANDROID על ידי קריאה ל-xrCreateDeviceAnchorPersistenceANDROID. אפשר להשתמש ב-XrDeviceAnchorPersistenceANDROID בקריאות API הבאות כדי לשמור עוגנים או לבטל את השמירה שלהם. צריך לפנות את הטיפולן של XrDeviceAnchorPersistenceANDROID באמצעות הפונקציה xrDestroyDeviceAnchorPersistenceANDROID.

שימוש תקין (מרומז)

קודי החזרה

הצלחה

  • XR_SUCCESS
  • XR_SESSION_LOSS_PENDING

כישלון

  • XR_ERROR_FUNCTION_UNSUPPORTED
  • XR_ERROR_VALIDATION_FAILURE
  • XR_ERROR_RUNTIME_FAILURE
  • XR_ERROR_HANDLE_INVALID
  • XR_ERROR_INSTANCE_LOST
  • XR_ERROR_SESSION_LOST
  • XR_ERROR_OUT_OF_MEMORY
  • XR_ERROR_LIMIT_REACHED

המבנה XrDeviceAnchorPersistenceCreateInfoANDROID מוגדר כך:

typedef struct XrDeviceAnchorPersistenceCreateInfoANDROID {
    XrStructureType    type;
    void*              next;
} XrDeviceAnchorPersistenceCreateInfoANDROID;

תיאורי חברים

  • type הוא XrStructureType של המבנה הזה.
  • next הוא NULL או הפניה למבנה הבא בשרשרת המבנים. לא מוגדרים מבנים כאלה ב-OpenXR או בהרחבה הזו.

המבנה XrDeviceAnchorPersistenceCreateInfoANDROID מספק אפשרויות יצירה ל-XrDeviceAnchorPersistenceANDROID כשהוא מועבר ל-xrCreateDeviceAnchorPersistenceANDROID.

שימוש תקין (מרומז)

הפונקציה xrDestroyDeviceAnchorPersistenceANDROID מוגדרת כך:

XrResult xrDestroyDeviceAnchorPersistenceANDROID(
    XrDeviceAnchorPersistenceANDROID            handle);

תיאורי פרמטרים

הפונקציה xrDestroyDeviceAnchorPersistenceANDROID משמידה את הידית של עמידות המכשיר.

שימוש תקין (מרומז)

בטיחות בשרשור

  • חובה לסנכרן באופן חיצוני את הגישה ל-handle ואת כל כינויי הילדים

קודי החזרה

הצלחה

  • XR_SUCCESS

כישלון

  • XR_ERROR_FUNCTION_UNSUPPORTED
  • XR_ERROR_HANDLE_INVALID

שמירת עוגן

הפונקציה xrPersistAnchorANDROID מוגדרת כך:

XrResult xrPersistAnchorANDROID(
    XrDeviceAnchorPersistenceANDROID            handle,
    const XrPersistedAnchorSpaceInfoANDROID*    persistedInfo,
    XrUuidEXT*                                  anchorIdOutput);

תיאורי פרמטרים

האפליקציה יכולה לבקש שמיקומי עוגנים יישמרו על ידי קריאה ל-xrPersistAnchorANDROID. האפליקציה אסור להניח שערך ההחזרה של הצלחה מציין שהעוגן נשמר באופן מיידי. האפליקציה צריכה להשתמש ב-xrGetAnchorPersistStateANDROID כדי לבדוק את מצב השמירה של הצ'אנק באמצעות הצ'אנק המוחזר XrUuidEXT. האפליקציה יכולה להשתמש ב-xrUnpersistAnchorANDROID כדי לבטל את השמירה של הצמד.

  • הערך XR_ERROR_ANCHOR_NOT_TRACKING_ANDROID יוחזר אם לא מתבצע מעקב אחרי הצ'אט בזמן הקריאה.
  • הערך של XR_SUCCESS יוחזר אחרי שהעוגן יועבר לתור לשמירה.

שימוש תקין (מרומז)

קודי החזרה

הצלחה

  • XR_SUCCESS
  • XR_SESSION_LOSS_PENDING

כישלון

  • XR_ERROR_ANCHOR_NOT_TRACKING_ANDROID
  • XR_ERROR_FUNCTION_UNSUPPORTED
  • XR_ERROR_VALIDATION_FAILURE
  • XR_ERROR_RUNTIME_FAILURE
  • XR_ERROR_HANDLE_INVALID
  • XR_ERROR_INSTANCE_LOST
  • XR_ERROR_SESSION_LOST
  • XR_ERROR_OUT_OF_MEMORY
  • XR_ERROR_LIMIT_REACHED

המבנה XrPersistedAnchorSpaceInfoANDROID מוגדר באופן הבא:

typedef struct XrPersistedAnchorSpaceInfoANDROID {
    XrStructureType    type;
    void*              next;
    XrSpace            anchor;
} XrPersistedAnchorSpaceInfoANDROID;

תיאורי חברים

  • type הוא XrStructureType של המבנה הזה.
  • next הוא NULL או הפניה למבנה הבא בשרשרת המבנים. לא מוגדרים מבנים כאלה ב-OpenXR או בהרחבה הזו.
  • anchor הוא XrSpace מוגדר קבוע שנוצר קודם לכן על ידי xrCreateAnchorSpaceANDROID.

שימוש תקין (מרומז)

הפונקציה xrGetAnchorPersistStateANDROID מוגדרת כך:

XrResult xrGetAnchorPersistStateANDROID(
    XrDeviceAnchorPersistenceANDROID            handle,
    const XrUuidEXT*                            anchorId,
    XrAnchorPersistStateANDROID*                persistState);

תיאורי פרמטרים

  • handle הוא XrDeviceAnchorPersistenceANDROID.
  • anchorId הוא XrUuidEXT של העוגן.
  • persistState הוא הפניה ל-XrAnchorPersistStateANDROID שבו מוחזר המצב של הצ'אנק.
  • הערך XR_ERROR_ANCHOR_ID_NOT_FOUND_ANDROID יוחזר אם לא נמצאה האחיזה XrUuidEXT.
  • הערך XR_ERROR_PERSISTED_DATA_NOT_READY_ANDROID יוחזר אם הנתונים שנשמרו של anchorId לא מוכנים.

שימוש תקין (מרומז)

קודי החזרה

הצלחה

  • XR_SUCCESS
  • XR_SESSION_LOSS_PENDING

כישלון

  • XR_ERROR_FUNCTION_UNSUPPORTED
  • XR_ERROR_VALIDATION_FAILURE
  • XR_ERROR_RUNTIME_FAILURE
  • XR_ERROR_HANDLE_INVALID
  • XR_ERROR_INSTANCE_LOST
  • XR_ERROR_SESSION_LOST
  • XR_ERROR_ANCHOR_ID_NOT_FOUND_ANDROID

המאפיין XrAnchorPersistStateANDROID מוגדר כך:

typedef enum XrAnchorPersistStateANDROID {
    XR_ANCHOR_PERSIST_STATE_PERSIST_NOT_REQUESTED_ANDROID = 0,
    XR_ANCHOR_PERSIST_STATE_PERSIST_PENDING_ANDROID = 1,
    XR_ANCHOR_PERSIST_STATE_PERSISTED_ANDROID = 2
} XrAnchorPersistStateANDROID;

Enum

תיאור

XR_ANCHOR_PERSIST_STATE_PERSIST_NOT_REQUESTED_ANDROID

האפליקציה לא ביקשה לשמור את ה-anchor.

XR_ANCHOR_PERSIST_STATE_PERSIST_PENDING_ANDROID

נשלחה בקשה לשמירת הצ'אט, אבל היא עדיין לא נשמרה.

XR_ANCHOR_PERSIST_STATE_PERSISTED_ANDROID

ה-anchor נשמר בהצלחה בסביבת זמן הריצה.

יצירת עוגן מנתונים שנשמרו

הפונקציה xrCreatePersistedAnchorSpaceANDROID מוגדרת כך:

XrResult xrCreatePersistedAnchorSpaceANDROID(
    XrDeviceAnchorPersistenceANDROID            handle,
    const XrPersistedAnchorSpaceCreateInfoANDROID* createInfo,
    XrSpace*                                    anchorOutput);

תיאורי פרמטרים

האפליקציה יכולה ליצור עוגן XrSpace מעוגן שנשמר בעבר, על ידי קריאה ל-xrCreatePersistedAnchorSpaceANDROID עם אותו XrUuidEXT. זוהי דרך נוספת ליצירת עוגנים כפי שהם מוגדרים ב-XR_ANDROID_trackables.

  • הערך XR_ERROR_ANCHOR_ID_NOT_FOUND_ANDROID יוחזר אם לא נמצאה האחיזה XrUuidEXT.

שימוש תקין (מרומז)

קודי החזרה

הצלחה

  • XR_SUCCESS
  • XR_SESSION_LOSS_PENDING

כישלון

  • XR_ERROR_FUNCTION_UNSUPPORTED
  • XR_ERROR_VALIDATION_FAILURE
  • XR_ERROR_RUNTIME_FAILURE
  • XR_ERROR_HANDLE_INVALID
  • XR_ERROR_INSTANCE_LOST
  • XR_ERROR_SESSION_LOST
  • XR_ERROR_OUT_OF_MEMORY
  • XR_ERROR_LIMIT_REACHED
  • XR_ERROR_ANCHOR_ID_NOT_FOUND_ANDROID
  • XR_ERROR_PERSISTED_DATA_NOT_READY_ANDROID

המבנה XrPersistedAnchorSpaceCreateInfoANDROID מוגדר בתור:

typedef struct XrPersistedAnchorSpaceCreateInfoANDROID {
    XrStructureType    type;
    void*              next;
    XrUuidEXT          anchorId;
} XrPersistedAnchorSpaceCreateInfoANDROID;

תיאורי חברים

  • type הוא XrStructureType של המבנה הזה.
  • next הוא NULL או הפניה למבנה הבא בשרשרת המבנים. לא מוגדרים מבנים כאלה ב-OpenXR או בהרחבה הזו.
  • anchorId הוא XrUuidEXT של העוגן הקבוע, שממנו יוצרים את העוגן XrSpace.

המבנה XrPersistedAnchorSpaceCreateInfoANDROID מספק אפשרויות יצירה של הצמד כשהוא מועבר ל-xrCreateDeviceAnchorPersistenceANDROID.

שימוש תקין (מרומז)

ספירת עוגנים שנשמרו

הפונקציה xrEnumeratePersistedAnchorsANDROID מוגדרת כך:

XrResult xrEnumeratePersistedAnchorsANDROID(
    XrDeviceAnchorPersistenceANDROID            handle,
    uint32_t                                    anchorIdsCapacityInput,
    uint32_t*                                   anchorIdsCountOutput,
    XrUuidEXT*                                  anchorIds);

תיאורי פרמטרים

  • handle הוא XrDeviceAnchorPersistenceANDROID.
  • anchorIdsCapacityInput הוא הקיבולת של מערך anchorIds, או 0 כדי לציין בקשה לאחזור הקיבולת הנדרשת.
  • anchorIdsCountOutput הוא הפניה למספר הפעמים ש-anchorIds נכתב, או הפניה לקיבולת הנדרשת במקרה ש-anchorIdsCapacityInput לא מספיקה.
  • anchorIds הוא מצביע למערך של מבנים מסוג XrUuidEXT. הערך יכול להיות NULL אם הערך של anchorIdsCapacityInput הוא 0.
  • בקטע פרמטרים של גודל מאגר מפורט תיאור של אחזור הגודל הנדרש של anchorIds.

האפליקציה יכולה למנות את כל ה-anchors הנוכחיים שנשמרו על ידי קריאה ל-xrEnumeratePersistedAnchorsANDROID. המשתנה anchorIds יאחסן את מזהי ה-UUID של ה-anchors שנשמרו עד לקיבולת של המערך. אם הקיבולת לא מספיקה, לאפליקציות אין ערובה לגבי עוגנים שיוחזרו.

שימוש תקין (מרומז)

קודי החזרה

הצלחה

  • XR_SUCCESS
  • XR_SESSION_LOSS_PENDING

כישלון

  • XR_ERROR_PERSISTED_DATA_NOT_READY_ANDROID
  • XR_ERROR_FUNCTION_UNSUPPORTED
  • XR_ERROR_VALIDATION_FAILURE
  • XR_ERROR_RUNTIME_FAILURE
  • XR_ERROR_HANDLE_INVALID
  • XR_ERROR_INSTANCE_LOST
  • XR_ERROR_SESSION_LOST
  • XR_ERROR_SIZE_INSUFFICIENT

ביטול השמירה של עוגן שנשמר

הפונקציה xrUnpersistAnchorANDROID מוגדרת כך:

XrResult xrUnpersistAnchorANDROID(
    XrDeviceAnchorPersistenceANDROID            handle,
    const XrUuidEXT*                            anchorId);

תיאורי פרמטרים

האפליקציה יכולה לבטל את השמירה של עוגן שנשמר על ידי קריאה ל-xrUnpersistAnchorANDROID והעברת הערך של עוגן XrUuidEXT שרוצים לבטל את השמירה שלו.

  • הערך XR_ERROR_PERSISTED_DATA_NOT_READY_ANDROID יוחזר אם הנתונים שנשמרו לא מוכנים.
  • הערך XR_ERROR_ANCHOR_ID_NOT_FOUND_ANDROID יוחזר אם לא נמצאה האחיזה XrUuidEXT.

שימוש תקין (מרומז)

קודי החזרה

הצלחה

  • XR_SUCCESS
  • XR_SESSION_LOSS_PENDING

כישלון

  • XR_ERROR_FUNCTION_UNSUPPORTED
  • XR_ERROR_VALIDATION_FAILURE
  • XR_ERROR_RUNTIME_FAILURE
  • XR_ERROR_HANDLE_INVALID
  • XR_ERROR_INSTANCE_LOST
  • XR_ERROR_SESSION_LOST
  • XR_ERROR_OUT_OF_MEMORY
  • XR_ERROR_LIMIT_REACHED
  • XR_ERROR_ANCHOR_ID_NOT_FOUND_ANDROID
  • XR_ERROR_PERSISTED_DATA_NOT_READY_ANDROID

קוד לדוגמה לשמירה של מודעות עוגן

דוגמת הקוד הבאה ממחישה איך לבדוק את יכולות המערכת, לשמור, למנות ולבטל שמירה של עוגנים, וגם ליצור עוגן מהעוגן השמור XrUuidEXT.

XrSession session; // previously initialized
XrSpace anchor; // previously initialized

// The function pointers are previously initialized using xrGetInstanceProcAddr.
PFN_xrEnumerateSupportedPersistenceAnchorTypesANDROID xrEnumerateSupportedPersistenceAnchorTypesANDROID; // previously initialized
PFN_xrCreateDeviceAnchorPersistenceANDROID xrCreateDeviceAnchorPersistenceANDROID; // previously initialized
PFN_xrDestroyDeviceAnchorPersistenceANDROID xrDestroyDeviceAnchorPersistenceANDROID; // previously initialized
PFN_xrPersistAnchorANDROID xrPersistAnchorANDROID; // previously initialized
PFN_xrGetAnchorPersistStateANDROID xrGetAnchorPersistStateANDROID; // previously initialized
PFN_xrCreatePersistedAnchorSpaceANDROID xrCreatePersistedAnchorSpaceANDROID; // previously initialized
PFN_xrEnumeratePersistedAnchorsANDROID xrEnumeratePersistedAnchorsANDROID; // previously initialized
PFN_xrUnpersistAnchorANDROID xrUnpersistAnchorANDROID; // previously initialized

// Create a device anchor persistence handle
XrDeviceAnchorPersistenceCreateInfoANDROID persistenceHandleCreateInfo;
persistenceHandleCreateInfo.type = XR_TYPE_DEVICE_ANCHOR_PERSISTENCE_CREATE_INFO_ANDROID;
persistenceHandleCreateInfo.next = nullptr;

XrDeviceAnchorPersistenceANDROID persistenceHandle;
CHK_XR(xrCreateDeviceAnchorPersistenceANDROID(session, &persistenceHandleCreateInfo, &persistenceHandle));

/// Persist an anchor
XrPersistedAnchorSpaceInfo anchorSpaceInfo;
anchorSpaceInfo.type = XR_TYPE_PERSISTED_ANCHOR_SPACE_INFO_ANDROID;
anchorSpaceInfo.next = nullptr;
anchorSpaceInfo.anchor = anchor;

XrUuidEXT anchorId;
CHK_XR(xrPersistAnchorANDROID(persistenceHandle, &anchorSpaceInfo, &anchorId));

// ... Update loop ...
// Poll for anchor persist state to confirm if it was successfully persisted
XrAnchorPersistStateANDROID persistState;
CHK_XR(xrGetAnchorPersistStateANDROID(persistenceHandle, &anchorId, &persistState));
if (persistState == XR_ANCHOR_PERSIST_STATE_PERSISTED_ANDROID)  {
  // The anchor was persisted successfully
}

// Enumerate all persisted anchors
uint32_t anchorCountOutput = 0;
std::vector<XrUuidEXT> allAnchors;

CHK_XR(xrEnumeratePersistedAnchorsANDROID(
  persistenceHandle,
  anchorCountOutput,
  &anchorCountOutput,
  nullptr
));
allAnchors.resize(anchorCountOutput, XR_NULL_HANDLE);

// Fetch the actual anchors in an appropriately resized array.
CHK_XR(xrEnumeratePersistedAnchorsANDROID(
  persistenceHandle,
  anchorCountOutput,
  &anchorCountOutput,
  allAnchors.data()
));

// Creating an anchor from a previously persisted anchor using its UUID
XrTime updateTime; // Time used for the current frame's simulation update.
XrUuidEXT anchorId = allAnchors[0];

XrPersistedAnchorSpaceCreateInfo createInfo;
createInfo.type = XR_TYPE_PERSISTED_ANCHOR_CREATE_INFO_ANDROID;
createInfo.next = nullptr;
createInfo.anchorId = anchorId;

XrSpace anchorSpace = XR_NULL_HANDLE;
CHK_XR(xrCreatePersistedAnchorSpaceANDROID(
  persistenceHandle,
  &createInfo,
  &anchorSpace
));

// The anchor was found and retrieved from the local device successfully.
XrSpaceLocation anchorLocation = { XR_TYPE_SPACE_LOCATION };
CHK_XR(xrLocateSpace(anchorSpace, appSpace, updateTime, &anchorLocation));
XrPosef pose = anchorLocation.pose;

// Once app is done with all persistence related tasks
CHK_XR(xrDestroySpace(anchorSpace));
CHK_XR(xrDestroyDeviceAnchorPersistenceANDROID(persistenceHandle));

סוגי אובייקטים חדשים

קבועים חדשים של Enum

המניין XrObjectType הורחב עם:

  • XR_OBJECT_TYPE_DEVICE_ANCHOR_PERSISTENCE_ANDROID

המניין XrResult הורחב עם:

  • XR_ERROR_ANCHOR_ID_NOT_FOUND_ANDROID
  • XR_ERROR_ANCHOR_ALREADY_PERSISTED_ANDROID
  • XR_ERROR_ANCHOR_NOT_TRACKING_ANDROID
  • XR_ERROR_PERSISTED_DATA_NOT_READY_ANDROID

המניין XrStructureType הורחב עם:

  • XR_TYPE_PERSISTED_ANCHOR_ANDROID
  • XR_TYPE_PERSISTED_ANCHOR_SPACE_CREATE_INFO_ANDROID
  • XR_TYPE_PERSISTED_ANCHOR_SPACE_INFO_ANDROID
  • XR_TYPE_DEVICE_ANCHOR_PERSISTENCE_CREATE_INFO_ANDROID

משתני Enum חדשים

מבנים חדשים

פונקציות חדשות

בעיות

היסטוריית הגרסאות

  • גרסה 1, 10 באוקטובר 2024 (Kenny Vercaemer)
    • תיאור ראשוני של התוסף