; Forcing Anisotropic Filtering x16 for AMD GPUs doesn't work
; Forcing AFx16 through NVIDIA Control Panel works fine on NVIDIA GPUs (Does not work for RTX 50 series)
; For RTX 50 Series / AMD GPUs with FSR3 use this command instead
r.MipMapLODBias=-2
; For AMD GPUs with FSR1 - Works with FSR On/Off (May cause black screen on login section)
r.FidelityFX.FSR.SecondaryUpscale=1
r.FidelityFX.FSR.MipBias.Method=2
r.FidelityFX.FSR.MipBias.Offset=-2
r.FidelityFX.FSR.RCAS.Enabled=0
The command r.MaxAnisotropy doesn't work properly even when it is set to 16. Changing anisotropic filtering / mip bias improves texture details.
; Lahai Roi uses more VRAM than previous maps, lower the value if you run into issues
; Default - 1.0, higher value = prioritize loading higher resolution textures
; Lower value = less priority loading high resolution textures
r.Streaming.MinBoost=4.0
This fixes the low quality banners and billboards at Septimont. With value 4.0, it increases VRAM usage by around 500MB (1080p) / 1GB (1440p)
; Default view distance / foliage LOD distance value is 1
; Test done near Ragunna
; Default - 145FPS | View distance 2 - 140FPS | View distance 2 + foliage distance 2 - 133FPS
; Test done in Septimont
; Default foliage distance - 97 FPS | Foliage distance 2 - 96 FPS
; Foliage distance 3 - 93 FPS | Foliage distance 4 - 91 FPS | Foliage distance 5 - 85 FPS
r.ViewDistanceScale=2
foliage.LODDistanceScale=2
Didn't notice much difference when using values above 3 for view distance / 5 for LOD distance scale.
; 0: Off, 1: Low, 2: Medium, 3: High, 4: Very High
r.SSR.Quality=3
; 0.0 to 1.0 - Sets roughness level where SSR starts to fade out
; Default value - 0.6
r.SSR.MaxRoughness=1.0
; 0: Use full res scene color, 1: Use half res scene color
r.SSR.HalfResSceneColor=0
; 1: Low precision (default), 3: High precision normals, 5: High precision
r.GBufferFormat=3
Using high precision normals improves SSR reflection quality, high precision is better than default but slightly worse than high precision normals. Another example comparison can be seen on UE4.27 Reflection Environment Documentation
; Lower values increases the amount of shadow
r.Shadow.RadiusThreshold=0.02
; Set shadow resolution, higher costs more FPS
r.Shadow.MaxCSMResolution=2048
r.Shadow.MinResolution=2048
r.Shadow.PerObjectShadowMapResolution=2048
r.Shadow.PerObjectResolutionMax=2048
r.Shadow.PerObjectResolutionMin=2048
Default values used for minimum shadow resolution is low which is the reason why it doesn't look great, using 1024 is enough to make it look decent.
; 0: DFAO Off, 1: DFAO On
r.DistanceFieldAO=1
; 0: Off, 1: Medium, 2: High, 3: Very High
r.DistanceFieldAOQuality=3
Enabled by default for High Quality and Ultra Quality preset, you can enable it manually through Engine.ini if you want.
Full image comparison: DFAO Comparison 1 | DFAO Comparison 2
; 0: Disable fog | 1: Enable fog
r.Fog=0
; 0: Disable volume cloud | 1: Enable volume cloud
; Only applies in newer regions, get rids of the clouds at ground level
r.KuroVolumeCloudEnable=0
In-game “Volumetric Fog” setting doesn’t completely remove fog. To remove the remaining fog, put the commands in Engine.ini.
; Not included in config by default
; 0 = Hardware occlusion (Default), 1 = HZB Occlusion
r.HZBOcclusion=1
Game's default hardware occlusion culling is pretty bad especially in Vault Underground / Minos Sewers. Using HZB Occlusion reduces white spots when turning camera but drops FPS (for example 10 FPS lower in Ragunna), only a few areas maintain similar FPS.
; 0 = Off, 1 = Genshin, 2 = Death Stranding, 3 = Kuro (Default)
r.KuroTonemapping=3
All Comparisons done with default game settings. From left to right: 0 to 3, labels are at the bottom.
Here's some image comparisons when changing in-game Auto Exposure setting to On / Off.
; 0 = Off (Disable Chromatic Abberation), 1 = On (Default)
r.SceneColorFringeQuality=0
; 0 = Disable, 1 = FilmContrast, 2 = Vignette, 4 = Vignette + Film Grain
; Setting it to 0 or 1 disables Film Grain and Vignette
; Don't remember if turning off FilmContrast changes how a game looks
r.Tonemapper.Quality=1
; 0: Low (does not work, will cause textures to not load), 1: High, 2: Medium (Yes the numbers are weird)
r.MaterialQualityLevel=1
r.KuroMaterialQualityLevel=1
; Changes object details, lights and particle effects
; 0 = low, 1 = medium, 2 = high
r.DetailMode=2
; Adjust foliage density type
; 0 = low, 1 = medium, 2 = high
foliage.DensityType=2
; Controls how often the animation updates
; 0 = Use default speed, 1 = Animation updates every frame, fixes low FPS animation for certain NPCs
a.URO.ForceAnimRate=1
; Adjust object details, lower value = better far object detail
r.StaticMeshLODDistanceScale=0.7
; Adjust light shaft resolution
; Value from 1 to 8, higher value = lower resolution
r.LightShaftDownSampleFactor=1
; Enable / disable Screen Space Fog Scattering
; 0 = Off, 1 = On (Default)
r.SSFS=1
; Whether to use low-memory LRU cache for character effects pool (Default true)
Kuro.CppEffectSystem.UseLowMemoryPlayerEffectLruCapacity=false
; Enable water ripples when flying close/casting skill
; 0 = Off, 1 = On (Default)
r.Kuro.InteractionEffect.UseCppWaterEffect=1
; Set distance before grass is culled
r.Kuro.Foliage.GrassCullDistanceMax=20000
r.Kuro.Foliage.Grass3_0CullDistanceMax=20000
; Set height before light turns off / object despawn in flight mode
wp.Runtime.SoraGridBlackListHeight=20000
; Higher value = more objects rendered at a distance
; Values above 1.0 only work if you have 16GB or more VRAM
wp.Runtime.LoadingRangeScale=1.0
wp.Runtime.PlannedLoadingRangeScale=1.0
; Place the commands in Engine.ini under [/Script/Engine.RendererSettings] or [/Script/Engine.RendererRTXSettings]
; Lower values reduce ghosting from characters when near a wall/foliage for RT GI but increase flickering artifacts
; Default - 0.05 (Low & Medium) | 0.03 (High)
r.Lumen.ScreenProbeGather.Temporal.DistanceThreshold=0.03
; Use async compute for reflections, may improve performance for some GPUs
; 0 = Disable (Default), 1 = Enable
r.Lumen.Reflections.AsyncCompute=1
; 0 = Disable, 1 = Enable (Default)
; Turning this off fixes SSR-like problems (e.g. blocky character/object shadows) but some objects do not get reflected anymore
r.Lumen.Reflections.ScreenTraces=0
; Value from 0 to 1 | Default - 0.5
; Global material roughness bias for Lumen Reflections, 1 is fully mirror
r.Lumen.Reflections.SmoothBias=1.0
For the rest of the commands you can find information in AMD / Epic site which can be found in the links below.
All commands listed are placed in Engine.ini under [/Script/Engine.RendererSettings]
; 0 = Off (slightly lower bloom brightness without streak), 1 = On (Default)
r.Kuro.KuroBloomStreak=0
; 0 = Off, 1 = On (Default for Balanced preset and above)
; New bloom used in Lahai-Roi
r.Kuro.KuroEnableFFTBloom=0
; 0 = Disable Lens Flare, 1 = Enable Lens Flare (Default)
r.EnableLensflareSceneSample=0
; 0 = Disable Depth of Field, 1 = Low, 2 = High, 3 = Very High, 4 = Extremely High
r.DepthOfFieldQuality=0
; Set distance before NPC disappears (Default 6000)
r.Kuro.NpcDisappearDistance=20000
; When enabled, blueprint tick is managed by time budget (Default true)
; Turning this off fixes low FPS animation for certain things in Lahai-Roi but disables interactive objects in Honami (e.g., umbrella) and Lahai-Roi (e.g., ball)
Kuro.Blueprint.EnableGameBudget=false
; Reflex Mode - 1 = low latency, 2 = low latency with boost
; Does not work for RTX 40/50 series due to Frame Generation but if you need Reflex only you can delete nvngx_dlssg.dll to disable FG when turned on (Don't open the game with launcher, it will probably verify files and redownload)
t.Streamline.Reflex.HandleMaxTickRate=true
t.Streamline.Reflex.Enable=1
t.Streamline.Reflex.Mode=1
; Force enable DLAA
; Switching to Quality/Balanced/Performance mode in settings doesn't work when using this
r.NGX.DLAA.Enable=1
; To fix stuttering with menus when using DLSS Frame Gen (Increases VRAM usage)
r.Streamline.DLSSG.RetainResourcesWhenOff=1
; Using ReBar increases VRAM usage, so make sure to check
; Choose either option below for "rBAR - Size Limit", FPS boost is similar
0x0000000012C00000 (The Riftbreaker) = 300MB
0x0000000040000000 (Red Dead Redemption 2) = 1GB
Forcing ReBar on for NVIDIA GPUs can help boost FPS a bit, currently using the 300MB option for native 1080p on RTX 3060 6GB Laptop. You can do this via NVIDIA Profile Inspector.
Link to download NVIDIA Profile Inspector: https://github.com/Orbmu2k/nvidiaProfileInspector/releases