Skip to content

Commit 04ef5c2

Browse files
committed
Merge branch 'REMIX-4728-rtx-option-exploration' into 'main'
[REMIX-4728] Fixing a small bug in auto-adjusting min/max ranges on the debug view evMin/evMax. Additionally making sure that when adding a run-time option layer that it is initialized with the current highest priority layer value. This prevents min/max value clamp limit changes from dirtying an option. Moving some indiscriminate RtxOption setting to be triggered by state changes. See merge request lightspeedrtx/dxvk-remix-nv!1796
2 parents 977d5ef + 8595ff0 commit 04ef5c2

File tree

3 files changed

+13
-8
lines changed

3 files changed

+13
-8
lines changed

src/dxvk/rtx_render/rtx_debug_view.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1685,10 +1685,12 @@ namespace dxvk {
16851685
}
16861686

16871687
void DebugView::evMinValueOnChange(DxvkDevice* device) {
1688-
evMaxValueObject().setMinValue(evMaxValue());
1688+
// Adjust valid range on evMax to prevent inverted values
1689+
evMaxValueObject().setMinValue(evMinValue());
16891690
}
16901691

16911692
void DebugView::evMaxValueOnChange(DxvkDevice* device) {
1692-
evMinValueObject().setMaxValue(evMinValue());
1693+
// Adjust valid range on evMin to prevent inverted values
1694+
evMinValueObject().setMaxValue(evMaxValue());
16931695
}
16941696
} // namespace dxvk

src/dxvk/rtx_render/rtx_neural_radiance_cache.cpp

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -540,11 +540,12 @@ namespace dxvk {
540540
// when changing resolutions
541541
|| frameBeginCtx.downscaledExtent.width != m_nrcCtxSettings->frameDimensions.x
542542
|| frameBeginCtx.downscaledExtent.height != m_nrcCtxSettings->frameDimensions.y;
543-
544-
NrcCtxOptions::enableDebugBuffers.setDeferred(m_delayedEnableDebugBuffers);
545-
NrcCtxOptions::enableCustomNetworkConfig.setDeferred(m_delayedEnableCustomNetworkConfig);
546543

547544
if (reinitializeNrcContext) {
545+
546+
NrcCtxOptions::enableDebugBuffers.setDeferred(m_delayedEnableDebugBuffers);
547+
NrcCtxOptions::enableCustomNetworkConfig.setDeferred(m_delayedEnableCustomNetworkConfig);
548+
548549
m_nrcCtx = new NrcContext(*ctx->getDevice());
549550

550551
if (m_nrcCtx->initialize() != nrc::Status::OK) {
@@ -1115,8 +1116,10 @@ namespace dxvk {
11151116
return;
11161117
}
11171118

1118-
m_resetHistory = false;
1119-
NrcOptions::resetHistory.setDeferred(false);
1119+
if (m_resetHistory) {
1120+
NrcOptions::resetHistory.setDeferred(false);
1121+
m_resetHistory = false;
1122+
}
11201123

11211124
m_nrcCtx->endFrame();
11221125
}

src/dxvk/rtx_render/rtx_option.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ namespace dxvk {
283283
GenericValue& RtxOptionImpl::getGenericValue(const ValueType valueType) {
284284
// Insert runtime layer if it's missing and user request runtime changes.
285285
if (optionLayerValueQueue.size() > 0 && optionLayerValueQueue.begin()->second.priority != RtxOptionLayer::s_runtimeOptionLayerPriority) {
286-
insertEmptyOptionLayer(RtxOptionLayer::s_runtimeOptionLayerPriority, 1.0f, 1.0f);
286+
insertOptionLayerValue(optionLayerValueQueue[0].value, RtxOptionLayer::s_runtimeOptionLayerPriority, 1.0f, 1.0f);
287287
}
288288

289289
// Reuse the const overload to avoid duplicating switch logic.

0 commit comments

Comments
 (0)