HDR トーン マップ効果
この効果により、画像のダイナミック レンジが調整され、その内容が出力ディスプレイの機能により適切に調整されます。
この効果のプロパティは 、D2D1_HDRTONEMAP_PROP列挙によって識別され、CLSID が CLSID_D2D1HdrToneMap。
効果のプロパティ
表示名とインデックス列挙 | 型と既定値 | 説明 |
---|---|---|
InputMaxLuminance、D2D1_HDRTONEMAP_PROP_INPUT_MAX_LUMINANCE | FLOAT | イメージの最大ライト レベル (または MaxCLL) (nits 単位)。 |
OutputMaxLuminance、D2D1_HDRTONEMAP_PROP_OUTPUT_MAX_LUMINANCE | FLOAT | 出力ターゲットでサポートされる MaxCLL (nits 単位) は、通常、ディスプレイの MaxCLL に設定されます。 |
DisplayMode、D2D1_HDRTONEMAP_PROP_DISPLAY_MODE | D2D1_HDRTONEMAP_DISPLAY_MODE | _HDRに設定すると、一般的な HDR ディスプレイの動作に合わせてトーン マッピング曲線が調整されます。 |
解説
の InputMaxLuminance
値は通常、イメージ メタデータから派生します。 メタデータが存在しない場合は、 D2DAdvancedColorImagesRenderer::ComputeHdrMetadata 関数 ( Direct2D 高度なカラー イメージ レンダリング サンプル) を使用して、イメージの最大ライト レベル (MaxCLL) を nits で計算できます。
の OutputMaxLuminance
値は、 DXGI_OUTPUT_DESC1::MaxLuminance を使用してディスプレイから派生するように設計されています。
HDR トーン マップ効果は、ディスプレイが HDR ディスプレイか SDR/WCG ディスプレイかに応じて異なるトーン マップ曲線を持ちます。
この効果は、適切なカラー管理とトーン マッピングを使用して Direct2D で HDR イメージをレンダリングできるように 、ホワイト レベル調整効果 と組み合わせることを目的としています。 これは、すべての Windows HDR イメージ形式を処理し、ディスプレイの機能 (HDR または WCG/SDR) に適応する、クラス最高の HDR 画像表示エクスペリエンスを提供する任意のフレームワークを対象としています。 効果は、以下に説明するように、順番に一緒に連結されることを意図している。
- コーデックによって定義された色空間を持つ入力イメージを取得します。 メタデータでは whitePoint を指定できます。 メタデータでは、入力輝度レベルを指定できます。
- カラー管理効果を適用します。 scRGB (CCCS) 領域に変換します。
- HDR トーン マップ効果を適用します。 イメージのライト レベルを目的のレベルに下げます。
- 白レベル調整効果を適用します。 イメージの白レベルを、スワップ チェーンに必要な白レベルにスケーリングします。
- 色管理効果をもう一度適用します。 8bpc にレンダリングする場合は、sRGB に変換します。
必要条件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 Version 1809 (10.0;ビルド 17763) [デスクトップ アプリ |UWP アプリ] |
ヘッダー | d2d1effects_2.h |
ライブラリ | d2d1.lib、dxguid.lib |