XDisplayHdrModeInfo
接続されたディスプレイでの HDR (高ダイナミック レンジ) モードに対する最小と最大のトーン マッピング輝度値を指定します。
構文
typedef struct XDisplayHdrModeInfo {
float minToneMapLuminance;
float maxToneMapLuminance;
float maxFullFrameToneMapLuminance;
} XDisplayHdrModeInfo
メンバー
minToneMapLuminance
型: float
最小トーン マッピング輝度 (MinTML) の値 (ニト単位)。
maxToneMapLuminance
型: float
最大トーン マッピング輝度 (MaxTML) の値 (ニト単位)。
maxFullFrameToneMapLuminance
型: float
最大フルフレーム トーン マッピング輝度 (MaxFFTML) の値 (ニト単位)。
解説
XDisplayTryEnableHdrMode 関数からは、接続されたディスプレイの HDR モードを関数で有効にできるかどうかを示す XDisplayHdrModeResult 列挙値が返されます。 XDisplayHdrModeResult::Enabled が返された場合、関数ではディスプレイの HDR モードに関する情報が格納されている XDisplayHdrModeInfo 構造体も提供され、それには HDR モードに対する最小と最大のトーン マッピング輝度値が含まれます。
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 本体