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ı
Son Değiştirilme Tarihi
IP Durumu
Katkıda bulunanlar
Trevor Debrechtabel, Google
Spencer Quin, Google
Lachlan Ford, Google
Vasiliy Baranov, Google
Genel Bakış
Bu uzantı, çalışma zamanının mevcut sistem performansı, cihazın ısınması veya diğer faktörlere bağlı olarak önerilen çözünürlük değiştiğinde uygulamaya bildirim göndermesine 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. -
nextmust beNULLor a valid pointer to the next structure in a structure chain
Ö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 = {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ı