Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable portal related RTX options by default #50

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions RtxOptions.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ Tables below enumerate all the options and their defaults set by RTX Remix. Note
|rtx.di.disocclusionFrames|int|8||
|rtx.di.disocclusionSamples|int|4|The number of spatial reuse samples in disocclusion areas\.|
|rtx.di.enableBestLightSampling|bool|True|Whether to include a single best light from the previous frame's pixel neighborhood into initial sampling\.|
|rtx.di.enableCrossPortalLight|bool|True||
|rtx.di.enableCrossPortalLight|bool|False||
|rtx.di.enableDenoiserConfidence|bool|True||
|rtx.di.enableDiscardEnlargedPixels|bool|True||
|rtx.di.enableDiscardInvisibleSamples|bool|True|Whether to discard reservoirs that are determined to be invisible in final shading\.|
Expand Down Expand Up @@ -232,7 +232,7 @@ Tables below enumerate all the options and their defaults set by RTX Remix. Note
|rtx.enableUnorderedEmissiveParticlesInIndirectRays|bool|False|A flag to enable or disable unordered resolve emissive particles specifically in indirect rays\.<br>Should be enabled in higher quality rendering modes as emissive particles are fairly important in reflections, but may be disabled to skip such interactions which can improve performance on lower end hardware\.<br>Note that rtx\.enableUnorderedResolveInIndirectRays must first be enabled for this option to take any effect \(as it will control if unordered resolve is used to begin with in indirect rays\)\.|
|rtx.enableUnorderedResolveInIndirectRays|bool|True|A flag to enable or disable unordered resolve approximations in indirect rays\.<br>This allows for the presence of unordered approximations in resolving to be overridden in indirect rays and as such requires separate unordered approximations to be enabled to have any effect\.<br>This option should be enabled if objects which can be resolvered in an unordered way in indirect rays are expected for higher quality in reflections, but may come at a performance cost\.<br>Note that even with this option enabled, unordered resolve approximations are only done on the first indirect bounce for the sake of performance overall\.|
|rtx.enableVolumetricLighting|bool|False|Enabling volumetric lighting provides higher quality ray traced physical volumetrics, disabling falls back to cheaper depth based fog\.<br>Note that disabling this option does not disable the froxel radiance cache as a whole as it is still needed for other non\-volumetric lighting approximations\.|
|rtx.enableVolumetricsInPortals|bool|True|Enables using extra frustum\-aligned volumes for lighting in portals\.<br>Note that enabling this option will require 3x the memory of the typical froxel grid as well as degrade performance in some cases\.<br>This option should be enabled always in games using ray portals for proper looking volumetrics through them, but should be disabled on any game not using ray portals\.<br>Additionally, this setting must be set at startup and changing it will not take effect at runtime\.|
|rtx.enableVolumetricsInPortals|bool|False|Enables using extra frustum\-aligned volumes for lighting in portals\.<br>Note that enabling this option will require 3x the memory of the typical froxel grid as well as degrade performance in some cases\.<br>This option should be enabled always in games using ray portals for proper looking volumetrics through them, but should be disabled on any game not using ray portals\.<br>Additionally, this setting must be set at startup and changing it will not take effect at runtime\.|
|rtx.enableVsync|int|2|Controls the game's V\-Sync setting\. Native game's V\-Sync settings are ignored\.|
|rtx.fallbackLightAngle|float|5|The spread angle to use for the fallback light \(used only for Distant light types\)\.|
|rtx.fallbackLightConeAngle|float|25|The cone angle to use for the fallback light shaping \(used only for non\-Distant light types with shaping enabled\)\.|
Expand Down Expand Up @@ -422,7 +422,7 @@ Tables below enumerate all the options and their defaults set by RTX Remix. Note
|rtx.playerModel.backwardOffset|float|18||
|rtx.playerModel.enableInPrimarySpace|bool|False||
|rtx.playerModel.enablePrimaryShadows|bool|True||
|rtx.playerModel.enableVirtualInstances|bool|True||
|rtx.playerModel.enableVirtualInstances|bool|False||
|rtx.playerModel.eyeHeight|float|64||
|rtx.playerModel.horizontalDetectionDistance|float|34||
|rtx.playerModel.intersectionCapsuleHeight|float|68||
Expand Down Expand Up @@ -614,7 +614,7 @@ Tables below enumerate all the options and their defaults set by RTX Remix. Note
|rtx.usePartialDdsLoader|bool|True|A flag controlling if the partial DDS loader should be used, true to enable, false to disable and use GLI instead\.<br>Generally this should be always enabled as it allows for simple parsing of DDS header information without loading the entire texture into memory like GLI does to retrieve similar information\.<br>Should only be set to false for debugging purposes if the partial DDS loader's logic is suspected to be incorrect to compare against GLI's implementation\.|
|rtx.usePostFilter|bool|True|Uses post filter to remove fireflies in the denoised result\.|
|rtx.useRTXDI|bool|True|A flag indicating if RTXDI should be used, true enables RTXDI, false disables it and falls back on simpler light sampling methods\.<br>RTXDI provides improved direct light sampling quality over traditional methods and should generally be enabled for improved direct lighting quality at the cost of some performance\.|
|rtx.useRayPortalVirtualInstanceMatching|bool|True||
|rtx.useRayPortalVirtualInstanceMatching|bool|False||
|rtx.useReSTIRGI|bool|True|A flag indicating if ReSTIR GI should be used, true enables ReSTIR GI, false disables it and relies on typical GI sampling\.<br>ReSTIR GI provides improved indirect path sampling over typical importance sampling and should usually be enabled for better indirect diffuse and specular GI quality at the cost of some performance\.|
|rtx.useVertexCapture|bool|True|When enabled, injects code into the original vertex shader to capture final shaded vertex positions\. Is useful for games using simple vertex shaders, that still also set the fixed function transform matrices\.|
|rtx.useVertexCapturedNormals|bool|True|When enabled, vertex normals are read from the input assembler and used in raytracing\. This doesn't always work as normals can be in any coordinate space, but can help sometimes\.|
Expand Down
6 changes: 3 additions & 3 deletions src/dxvk/rtx_render/rtx_options.h
Original file line number Diff line number Diff line change
Expand Up @@ -274,7 +274,7 @@ namespace dxvk {
RTX_OPTION("rtx.viewModel", bool, enable, false, "If true, try to resolve view models (e.g. first-person weapons). World geometry doesn't have shadows / reflections / etc from the view models.");
RTX_OPTION("rtx.viewModel", float, rangeMeters, 1.0f, "[meters] Max distance at which to find a portal for view model virtual instances. If rtx.viewModel.separateRays is true, this is also max length of view model rays.");
RTX_OPTION("rtx.viewModel", float, scale, 1.0f, "Scale for view models. Minimize to prevent clipping.");
RTX_OPTION("rtx.viewModel", bool, enableVirtualInstances, true, "If true, virtual instances are created to render the view models behind a portal.");
RTX_OPTION("rtx.viewModel", bool, enableVirtualInstances, false, "If true, virtual instances are created to render the view models behind a portal.");
RTX_OPTION("rtx.viewModel", bool, perspectiveCorrection, true, "If true, apply correction to view models (e.g. different FOV is used for view models).");
RTX_OPTION("rtx.viewModel", float, maxZThreshold, 0.0f, "If a draw call's viewport has max depth less than or equal to this threshold, then assume that it's a view model.");
} viewModel;
Expand Down Expand Up @@ -329,7 +329,7 @@ namespace dxvk {
"The near plane value to use for the Camera when the near plane override is enabled.\n"
"Only takes effect when rtx.enableNearPlaneOverride is enabled, see that option for more information about why this is useful.");

RTX_OPTION("rtx", bool, useRayPortalVirtualInstanceMatching, true, "");
RTX_OPTION("rtx", bool, useRayPortalVirtualInstanceMatching, false, "");
RTX_OPTION("rtx", bool, enablePortalFadeInEffect, false, "");

RTX_OPTION_ENV("rtx", bool, useRTXDI, true, "DXVK_USE_RTXDI",
Expand Down Expand Up @@ -627,7 +627,7 @@ namespace dxvk {
"The single scattering albedo (otherwise known as the particle albedo) representing the ratio of scattering to absorption.\n"
"While color-like in many ways this value is assumed to be more of a mathematical albedo (unlike material albedo which is treated more as a color), and is therefore treated as linearly encoded data (not gamma).");
RTX_OPTION("rtx", float, volumetricAnisotropy, 0.0f, "The anisotropy of the scattering phase function (-1 being backscattering, 0 being isotropic, 1 being forward scattering).");
RTX_OPTION("rtx", bool, enableVolumetricsInPortals, true,
RTX_OPTION("rtx", bool, enableVolumetricsInPortals, false,
"Enables using extra frustum-aligned volumes for lighting in portals.\n"
"Note that enabling this option will require 3x the memory of the typical froxel grid as well as degrade performance in some cases.\n"
"This option should be enabled always in games using ray portals for proper looking volumetrics through them, but should be disabled on any game not using ray portals.\n"
Expand Down
2 changes: 1 addition & 1 deletion src/dxvk/rtx_render/rtx_rtxdi_rayquery.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ namespace dxvk {
void setRaytraceArgs(Resources::RaytracingOutput& rtOutput) const;
bool getEnableDenoiserConfidence() const { return enableTemporalReuse() && enableDenoiserConfidence(); }

RTX_OPTION("rtx.di", bool, enableCrossPortalLight, true, "");
RTX_OPTION("rtx.di", bool, enableCrossPortalLight, false, "");
RTX_OPTION("rtx.di", bool, enableInitialVisibility, true, "Whether to trace a visibility ray for the light sample selected in the initial sampling pass.");
RTX_OPTION("rtx.di", bool, enableBestLightSampling, true, "Whether to include a single best light from the previous frame's pixel neighborhood into initial sampling.");
RW_RTX_OPTION("rtx.di", bool, enableRayTracedBiasCorrection, true, "Whether to use ray traced bias correction in the spatial reuse pass.");
Expand Down
Loading