summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTriang3l <triang3l@yandex.ru>2026-01-19 21:08:15 +0300
committerTriang3l <triang3l@yandex.ru>2026-01-19 21:08:15 +0300
commit0a19234b4e6905f2cd249b4af6172ca4656c92de (patch)
tree114d7d61765a9ec093385e3800aa28b1fff4935b
parentcec9ca0ef2f1343070e6211478db37d4b4a8ad95 (diff)
[GPU/D3D12] Add forgotten gamma conversion format check
-rw-r--r--src/xenia/gpu/d3d12/d3d12_render_target_cache.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/xenia/gpu/d3d12/d3d12_render_target_cache.cc b/src/xenia/gpu/d3d12/d3d12_render_target_cache.cc
index aeee74b43..b7468e867 100644
--- a/src/xenia/gpu/d3d12/d3d12_render_target_cache.cc
+++ b/src/xenia/gpu/d3d12/d3d12_render_target_cache.cc
@@ -3652,9 +3652,12 @@ D3D12RenderTargetCache::GetOrCreateTransferPipelines(TransferShaderKey key) {
dxbc::Src::R(1, dxbc::Src::kYYYY));
} else {
color_packed_in_r1x = true;
- for (uint32_t i = 0; i < 3; ++i) {
- DxbcShaderTranslator::PreSaturatedLinearToPWLGamma(a, 1, i, 1, i,
- 2, 0, 2, 1);
+ if (source_color_format ==
+ xenos::ColorRenderTargetFormat::k_8_8_8_8_GAMMA) {
+ for (uint32_t i = 0; i < 3; ++i) {
+ DxbcShaderTranslator::PreSaturatedLinearToPWLGamma(
+ a, 1, i, 1, i, 2, 0, 2, 1);
+ }
}
a.OpMAd(dxbc::Dest::R(1), dxbc::Src::R(1), dxbc::Src::LF(255.0f),
dxbc::Src::LF(0.5f));