XR_ANDROID_recommended_resolution
מחרוזת שם
XR_ANDROID_recommended_resolution
סוג התוסף
הרחבת המכונה
מספר שלוחה רשום
462
Revision
1
סטטוס האישור
לא אושר
תלות בתוסף ובגרסה
סטטוס כתובת ה-IP
לא ידוע על תלונות בנושא זכויות יוצרים שקשורות לכתובות IP.
שותפים ביצירת התוכן
Trevor Debrechtabel, Google
Spencer Quin, Google
Lachlan Ford, Google
Vasiliy Baranov, Google
סקירה כללית
התוסף הזה מאפשר לסביבת זמן הריצה להודיע לאפליקציה כשהרזולוציה המומלצת משתנה, על סמך ביצועי המערכת הנוכחיים, הטמפרטורה של המכשיר או גורמים אחרים.
התוסף הזה משנה את המפרט באופן הבא:
- הפונקציה בזמן הריצה עשויה להחזיר תוכן מאגר שאינו זהה מהספירה xrEnumerateViewConfigurationViews עבור
systemIdו-viewConfigurationTypeהנתונים למשך משך החיים של המופע.
המבנה XrEventDataRecommendedResolutionChangedANDROID מוגדר כך:
typedef struct XrEventDataRecommendedResolutionChangedANDROID {
XrStructureType type;
const void* next;
} XrEventDataRecommendedResolutionChangedANDROID;
תיאורים של חברי הקבוצה
-
typeהוא XrStructureType של המבנה הזה. -
nextהואNULLאו מצביע למבנה הבא בשרשרת מבנים. לא מוגדרים מבנים כאלה ב-OpenXR הבסיסי או בתוסף הזה.
קבלת מבנה האירוע XrEventDataRecommendedResolutionChangedANDROID מציינת שהרזולוציה המומלצת השתנתה. האפליקציה צריכה לשלוח שאילתה לזמן הריצה כדי לקבל את הרזולוציה המומלצת החדשה באמצעות xrEnumerateViewConfigurationViews .
שימוש תקף (משתמע)
-
XR_ANDROID_recommended_resolutionהתוסף חייב להיות מופעל לפני השימוש ב-XrEventDataRecommendedResolutionChangedANDROID -
typeחייב להיותXR_TYPE_EVENT_DATA_RECOMMENDED_RESOLUTION_CHANGED_ANDROID -
nextחייב להיותNULLאו מצביע תקין אל המבנה הבא בשרשרת המבנים
קוד לדוגמה
בדוגמת הקוד הבאה אפשר לראות איך להאזין לאירועים של שינוי רזולוציה מומלץ.
// Created at app startup time.
XrInstance instance;
XrSystemId systemId; // Previously initialized.
uint32_t viewCountOutput; // Previously initialized.
// View configuration type the application uses.
XrViewConfigurationType viewConfigType;
// Poll events for recommended resolution changes.
XrEventDataBuffer event = {
.type = XR_TYPE_EVENT_DATA_BUFFER,
};
XrResult result = xrPollEvent(instance, &event);
if (result == XR_SUCCESS) {
switch (event.type) {
case XR_TYPE_EVENT_DATA_RECOMMENDED_RESOLUTION_CHANGED_ANDROID: {
uint32_t viewCapacityInput = viewCountOutput;
std::vector<XrViewConfigurationView> views(viewCapacityInput);
result = xrEnumerateViewConfigurationViews(instance, systemId,
viewConfigType, viewCapacityInput, &viewCountOutput, views.data());
if(!XR_SUCCEEDED(result)) {
// Handle error
}
// New recommended resolution is found in
// views.recommendedImageRectWidth and views.recommendedImageRectHeight
// Change the resolution for the viewConfigType
break;
}
default:
break;
}
}
היסטוריית הגרסאות
גרסה 1, 04.04.2025 (Kenny Vercaemer)
- תיאור ראשוני של התוסף