HDR rendering always on (Classic lighting fallback); HDR switch = HDR display output, default on #1326
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#1326
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Request (revised by the owner)
Split the old "HDR and Emissive" switch in two:
Settings migration: existing users with
RenderDisableVintageModeoff (vintage) get the new rendering anyway; their old value doesn't map to Classic lighting. Classic lighting is opt-in only.Today
The renderer works in linear HDR internally and tonemaps (ACES / AgX / filmic / Reinhard / LUT) down to SDR. The swapchain is always
B8G8R8A8_UNORMinSRGB_NONLINEAR(indra/newview/vkgfx/vk_swapchain.cpp, the format choice prefers that pair). HDR10 and scRGB are only recognised for logging (vkColorSpaceName), never requested. So an HDR monitor gets SDR.Scope
VK_EXT_swapchain_colorspaceavailable, prefer HDR10 (A2B10G10R10_UNORM_PACK32+HDR10_ST2084), else scRGB (R16G16B16A16_SFLOAT+EXTENDED_SRGB_LINEAR), else fall back to SDR. SetVK_EXT_hdr_metadatafrom the display's reported luminance. Recreate the swapchain when the setting changes or the window moves to a display with different capabilities.cICPchunk (PQ / Rec.2020). Only offered when HDR output is active.vkColorSpaceName).Notes
HDR display output (HDR10 / scRGB), controlled by "HDR and Emissive"to HDR rendering always on (Classic lighting fallback); HDR switch = HDR display output, default on