XDisplayHdrModePreference
XDisplayTryEnableHdrMode を呼び出すときに使用する優先モードを指定します。
構文
enum class XDisplayHdrModePreference : uint32_t
{
PreferHdr = 0,
PreferRefreshRate = 1
}
定数
定数 | 説明 |
---|---|
PreferHdr | ディスプレイで HDR とより高いリフレッシュ レートの両方が同時にサポートされていない場合は、HDR が優先されます。 |
PreferRefreshRate | ディスプレイで 120 Hz リフレッシュ レートと HDR の両方が同時にサポートされていない場合は、120 Hz リフレッシュ レートが優先されます。 |
解説
HDR サポートの詳細については、「ハイ ダイナミック レンジ (HDR) 出力 (NDA トピック)認可が必須です」を参照してください。
HDR の輝度値とトーン マッピングの情報については、HDR Gaming Interest Group の Web サイトのよりよい HDR ゲーム エクスペリエンスに関するプレゼンテーションを参照してください。
例
次のコード例は、接続されたディスプレイの HDR モードを有効にする方法を示しています。
XDisplayHdrModeInfo::Enabled が返されると、ディスプレイの HDR モードが有効になり、ゲームは返された XDisplayHdrModeInfo
構造からの輝度値を使用して、レンダリングされた HDR 画像を接続されたディスプレイの機能に合わせて最適化することを選択できます。 それ以外の場合、HDR モードは使用できないか無効になっており、ゲームは標準ダイナミックレンジ (SDR) モードで初期化されます。
void Game::InitializeHDRMode()
{
// Attempt to enable HDR mode, then initialize based on the
// result of the attempt.
XDisplayHdrModeInfo displayModeHdrInfo;
if (XDisplayHdrModeResult::Enabled == XDisplayTryEnableHdrMode(XDisplayHdrModePreference::PreferHdr, &displayModeHdrInfo))
{
// HDR mode is enabled for the attached display.
InitializeAsHDR(
displayModeHdrInfo.minToneMapLuminance,
displayModeHdrInfo.maxToneMapLuminance,
displayModeHdrInfo.maxFullFrameToneMapLuminance);
}
else
{
// Either HDR mode is disabled for the attached display, or the
// attached display does not support HDR.
InitializeAsSDR();
}
}
要件
ヘッダー: XDisplay.h
サポートされているプラットフォーム: Windows、Xbox One ファミリ本体と Xbox Series 本体
関連項目
XDisplayTryEnableHdrMode
XDisplay
ハイ ダイナミック レンジ (HDR) 出力 (NDA トピック)認可が必須です