وضوح پیشنهادی XR_ANDROID
رشته نام
XR_ANDROID_recommended_resolution
نوع افزونه
افزونه نمونه
شماره داخلی ثبت شده
۴۶۲
بازنگری
۱
وضعیت تصویب
تصویب نشده
وابستگیهای افزونه و نسخه
آخرین تاریخ اصلاح
وضعیت آیپی
مشارکتکنندگان
ترور دبرشتبل، گوگل
اسپنسر کوئین، گوگل
لاکلان فورد، گوگل
واسیلی بارانوف، گوگل
نمای کلی
این افزونه به زمان اجرا اجازه میدهد تا در صورت تغییر وضوح پیشنهادی، بر اساس عملکرد فعلی سیستم، دمای دستگاه یا سایر عوامل، به برنامه اطلاع دهد.
این افزونه مشخصات را به روش زیر تغییر میدهد:
- ممکن است زمان اجرا، محتویات بافر غیر یکسانی را از شمارش xrEnumerateViewConfigurationViews برای
systemIdوviewConfigurationTypeداده شده برای طول عمر نمونه، برگرداند.
The XrEventDataRecommendedResolutionChangedANDROID structure is defined as:
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 = {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;
}
}
تاریخچه نسخه
نسخه ۱، ۲۰۲۵-۰۴-۰۴ (کنی ورکامر)
- توضیحات اولیه افزونه