名前文字列

XR_ANDROID_recommended_resolution

拡張機能の種類

インスタンス拡張機能

登録済み拡張機能番号

462

リビジョン

1

批准ステータス

未批准

拡張機能とバージョンの依存関係

OpenXR 1.0

IP ステータス

既知の IP クレームはありません。

寄与者

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

概要

この拡張機能により、現在のシステム パフォーマンス、デバイスの温度、その他の要因に基づいて、推奨解像度が変更されたときにランタイムがアプリケーションに通知できるようになります。

この拡張機能は、次の方法で仕様を変更します。

  • ランタイムは、インスタンスの有効期間中、指定された systemIdviewConfigurationType に対して、xrEnumerateViewConfigurationViews 列挙から同一でないバッファ コンテンツを返す場合があります

XrEventDataRecommendedResolutionChangedANDROID 構造体は次のように定義されます。

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

メンバーの説明

  • type は、この構造体の XrStructureType です。
  • next は、NULL または構造体チェーン内の次の構造体へのポインタです。このような構造体は、コア OpenXR またはこの拡張機能では定義されていません。

XrEventDataRecommendedResolutionChangedANDROID イベント構造体を受信すると、推奨解像度が変更されたことを示します。アプリケーションは、xrEnumerateViewConfigurationViews を使用して、新しい推奨解像度をランタイムにクエリする必要があります

有効な使用方法(暗黙的)

コード例

次のコード例は、推奨解像度の変更イベントをリッスンする方法を示しています。

// 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、2025-04-04(Kenny Vercaemer)

    • 拡張機能の最初の説明