XR_ANDROID_recommended_resolution
Name String
XR_ANDROID_recommended_resolution
Uzantı Türü
Örnek uzantısı
Kayıtlı Uzantı Numarası
462
Düzeltme
1
Onay durumu
Onaylanmadı
Uzantı ve Sürüm Bağımlılıkları
IP Durumu
Bilinen IP hak talebi yok.
Katkıda bulunanlar
Trevor Debrechtabel, Google
Spencer Quin, Google
Lachlan Ford, Google
Vasiliy Baranov, Google
Genel Bakış
Bu uzantı, mevcut sistem performansı, cihazın ısınması veya diğer faktörlere bağlı olarak önerilen çözünürlük değiştiğinde çalışma zamanının uygulamayı bilgilendirmesine olanak tanır.
Bu uzantı, spesifikasyonu aşağıdaki şekilde değiştirir:
- Çalışma zamanı, örneğin ömrü boyunca verilen
systemIdveviewConfigurationTypeiçin xrEnumerateViewConfigurationViews numaralandırmasından aynı olmayan arabellek içerikleri döndürebilir.
XrEventDataRecommendedResolutionChangedANDROID yapısı şu şekilde tanımlanır:
typedef struct XrEventDataRecommendedResolutionChangedANDROID {
XrStructureType type;
const void* next;
} XrEventDataRecommendedResolutionChangedANDROID;
Üye Açıklamaları
type, bu yapının XrStructureType'ıdır.next,NULLveya bir yapı zincirindeki sonraki yapının işaretçisidir. Temel OpenXR'de veya bu uzantıda bu tür yapılar tanımlanmamıştır.
XrEventDataRecommendedResolutionChangedANDROID etkinlik yapısının alınması, önerilen çözünürlüğün değiştiğini gösterir. Uygulama, xrEnumerateViewConfigurationViews kullanarak yeni önerilen çözünürlük için çalışma zamanına sorgu göndermelidir .
Geçerli Kullanım (Dolaylı)
-
XR_ANDROID_recommended_resolutionuzantısı, XrEventDataRecommendedResolutionChangedANDROID kullanılmadan önce etkinleştirilmelidir. -
typeXR_TYPE_EVENT_DATA_RECOMMENDED_RESOLUTION_CHANGED_ANDROIDolmalıdır. -
nextzorunlu olarakNULLveya bir yapı zincirindeki sonraki yapıya yönelik geçerli bir işaretçi olmalıdır.
Örnek kod
Aşağıdaki örnek kod, önerilen çözünürlük değişikliği etkinliklerinin nasıl dinleneceğini gösterir.
// 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;
}
}
Sürüm Geçmişi
1. düzeltme, 04.04.2025 (Kenny Vercaemer)
- İlk uzantı açıklaması