Name String

XR_ANDROID_recommended_resolution

Loại tiện ích

Tiện ích phiên bản

Số máy nhánh đã đăng ký

462

Bản sửa đổi

1

Trạng thái phê chuẩn

Chưa được phê chuẩn

Phần mở rộng và các phần phụ thuộc vào phiên bản

OpenXR 1.0

Ngày sửa đổi gần đây nhất

Trạng thái IP

Cộng tác viên

Trevor Debrechtabel, Google
Spencer Quin, Google
Lachlan Ford, Google
Vasiliy Baranov, Google

Tổng quan

Tiện ích này cho phép thời gian chạy thông báo cho ứng dụng khi độ phân giải được đề xuất thay đổi, dựa trên hiệu suất hiện tại của hệ thống, nhiệt độ thiết bị hoặc các yếu tố khác.

Tiện ích này sửa đổi quy cách theo cách sau:

  • Thời gian chạy có thể trả về nội dung vùng đệm không giống nhau từ quá trình liệt kê xrEnumerateViewConfigurationViews cho systemIdviewConfigurationType đã cho trong suốt thời gian tồn tại của thực thể.

Cấu trúc XrEventDataRecommendedResolutionChangedANDROID được xác định như sau:

typedef struct XrEventDataRecommendedResolutionChangedANDROID {
    XrStructureType    type;
    const void*        next;
} XrEventDataRecommendedResolutionChangedANDROID;

Nội dung mô tả thành viên

  • typeXrStructureType của cấu trúc này.
  • nextNULL hoặc con trỏ đến cấu trúc tiếp theo trong chuỗi cấu trúc. Không có cấu trúc nào như vậy được xác định trong OpenXR cốt lõi hoặc tiện ích này.

Việc nhận cấu trúc sự kiện XrEventDataRecommendedResolutionChangedANDROID cho biết độ phân giải đề xuất đã thay đổi. Ứng dụng phải truy vấn thời gian chạy để biết độ phân giải được đề xuất mới bằng cách sử dụng xrEnumerateViewConfigurationViews .

Cách sử dụng hợp lệ (ngầm)

Mã ví dụ

Đoạn mã ví dụ sau đây minh hoạ cách theo dõi các sự kiện thay đổi độ phân giải được đề xuất.

// 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;
  }
}

Nhật ký phiên bản

  • Bản sửa đổi 1, ngày 4 tháng 4 năm 2025 (Kenny Vercaemer)

    • Nội dung mô tả ban đầu của tiện ích