0 of 0

File information

Last updated

Original upload

Created by

P40L0

Uploaded by

P40L0X

Virus scan

Safe to use

Tags for this mod

About this mod

Definitive Unreal "Engine.ini" changes with the goal to remove most stutters, improve performance and stability, decrease input latency, improve picture clarity. All with no visual loss.

Permissions and credits
Changelogs
Donations


Silent Hill 2 (2024) - Ultimate Engine Tweaks

After weeks of research and testing, I would like to share my definitive custom "Engine.ini" changes for the game.

My goal was to just include as many optimizations as possible (both for CPU/GPU/RAM/SSD) in order to remove most stuttering (except for specific traversal stuttering which is impossible to fix except by the devs themselves), improve performance, reduce input latency and improve picture clarity (by removing Film Grain & Chromatic Aberration) all without any visual loss nor introducing glitches or crashes.

You can directly download my Engine.ini to replace or just copy all the lines below inside and at the bottom of your game Engine.ini, which is located in:


%localappdata%\SilentHill2\Saved\Config\Windows


Please pay attention to some comment lines after ";" which may be related to specific configurations (e.g. VRR usage, VRAM amount etc.), so change them accordingly to your hardware.

[SystemSettings]
r.MaxAnisotropy=16
r.Tonemapper.GrainQuantization=0
r.FilmGrain=0
r.NT.Lens.ChromaticAberration.Intensity=0
r.SceneColorFringeQuality=0
niagara.CreateShadersOnLoad=1
r.OneFrameThreadLag=0
r.VSync=0 ; Only if you have VRR enabled on your display, otherwise delete it
r.TemporalAACurrentFrameWeight=0.15
r.TemporalAASamples=8
r.TemporalAASharpness=0.9
r.Tonemapper.Sharpen=0.8
r.RHICmdBypass=0
r.GPUCrashDebugging=0
r.AllowMultiThreadedShaderCreation=1
t.MaxFPS=120 ; Only if your max refresh rate is 120hz, otherwise change it accordingly
r.D3D11.UseAllowTearing=1 ; Only if you have VRR enabled on your display, otherwise delete it
r.D3D12.UseAllowTearing=1 ; Only if you have VRR enabled on your display, otherwise delete it
D3D11.ForceThirtyHz=0
D3D12.ForceThirtyHz=0
D3D12.AFRUseFramePacing=1
D3D12.MaximumFrameLatency=3
D3D11.AFRUseFramePacing=1
D3D12.PSO.DiskCache=1
D3D12.PSO.DriverOptimizedDiskCache=1
D3D12.AsyncDeferredDeletion=1
D3D11.AsyncDeferredDeletion=1
FX.AllowAsyncTick=1
FX.BatchAsync=1
FX.BatchAsyncBatchSize=8
FX.EarlyScheduleAsync=1
AllowAsyncRenderThreadUpdates=1
AllowAsyncRenderThreadUpdatesDuringGamethreadUpdates=1
AllowAsyncRenderThreadUpdatesEditor=1
AudioThread.BatchAsyncBatchSize=9999999
 
[/Script/Engine.RendererSettings]
niagara.CreateShadersOnLoad=1
D3D11.ForceThirtyHz=0
D3D12.ForceThirtyHz=0
D3D12.AFRUseFramePacing=1
D3D12.MaximumFrameLatency=3
D3D11.AFRUseFramePacing=1
D3D12.PSO.DiskCache=1
D3D12.PSO.DriverOptimizedDiskCache=1
r.AsyncCompute=1
r.UseAsyncShaderPrecompilation=1
D3D12.AsyncDeferredDeletion=1
D3D11.AsyncDeferredDeletion=1
FX.AllowAsyncTick=1
FX.BatchAsync=1
FX.BatchAsyncBatchSize=8
FX.EarlyScheduleAsync=1
AllowAsyncRenderThreadUpdates=1
AllowAsyncRenderThreadUpdatesDuringGamethreadUpdates=1
AllowAsyncRenderThreadUpdatesEditor=1
AudioThread.BatchAsyncBatchSize=9999999
r.AsyncCreateLightPrimitiveInteractions=1
r.RDG.AsyncCompute=1
r.AsyncPipelineCompile=1
r.AmbientOcclusion.AsyncComputeBudget=1
r.EnableAsyncComputeVolumetricFog=1
r.UseAsyncShaderPrecompilation=1
r.Streaming.UseAsyncRequestsForDDC=1
 
[ConsoleVariables]
niagara.CreateShadersOnLoad=1
D3D11.ForceThirtyHz=0
D3D12.ForceThirtyHz=0
D3D12.AFRUseFramePacing=1
D3D12.MaximumFrameLatency=3
D3D11.AFRUseFramePacing=1
D3D12.PSO.DiskCache=1
D3D12.PSO.DriverOptimizedDiskCache=1
D3D12.AsyncDeferredDeletion=1
D3D11.AsyncDeferredDeletion=1
FX.AllowAsyncTick=1
FX.BatchAsync=1
FX.BatchAsyncBatchSize=8
FX.EarlyScheduleAsync=1
AllowAsyncRenderThreadUpdates=1
AllowAsyncRenderThreadUpdatesDuringGamethreadUpdates=1
AllowAsyncRenderThreadUpdatesEditor=1
AudioThread.BatchAsyncBatchSize=9999999
 
[Core.System]
r.XGEShaderCompile=1
r.XGEShaderCompile.Mode=2
 
[TextureStreaming]
r.TextureStreaming=1
r.Streaming.PoolSize=12288 ; Only for 16GB VRAM. If you have 12GB use 9216, if you have 8GB use 6144, if you have 6GB use 4608
r.Streaming.LimitPoolSizeToVRAM=1
r.Streaming.FullyLoadUsedTextures=1
r.Streaming.FullyLoadUsedTextures_Always=1
r.Streaming.MipBias=0
r.Streaming.DefragDynamicBounds=1
r.Streaming.FramesForFullUpdate=1
r.Streaming.HLODStrategy=0
r.Streaming.UseAllMips=1
 
[/Script/Engine.StreamingSettings]
s.AsyncLoadingThreadEnabled=True
s.AsyncLoadingThreadEnabled=1
s.AsyncLoadingUseFullTimeLimit=0
s.MinBulkDataSizeForAsyncLoading=0
s.PriorityAsyncLoadingExtraTime=0
s.AsyncLoadingTimeLimit=4
 
[Engine.HardwareTargeting]
TargetedHardwareClass=PC
 
[System.IO]
r.IoDispatcher.IoStoreSyncRead=1
r.IoDispatcher.CacheSize=2048
r.IoDispatcher.SyncReadSizeKB=512
r.IoDispatcher.AsyncReadSizeKB=1024
r.IoDispatcher.CriticalReadSizeKB=4096
 
[/Script/Engine.Engine]
bAllowMultiThreadedShaderCompile=True
 
[Engine.ErrorHandling]
bPromptForRemoteDebugging=False
bPromptForRemoteDebugOnEnsure=False
 
[/script/akaudio.aksettings]
bEnableMultiCoreRendering=True
 
[/Script/Engine.InputSettings]
bEnableMouseSmoothing=False
 
[CrashReportClient]
bAgreeToCrashUpload=false
bImplicitSend=False
 
[Core.System]
+Suppress=Scriptwarning
+Suppress=Error
+Suppress=Scriptlog
+Suppress=Warning
 
[Core.Log]
LogPluginManager=all off
LogOnlineIdentity=all off
LogOnlineSession=all off
LogMemory=all off
LogPakFile=all off
LogTemp=all off
LogLinker=all off
LogOnline=all off
LogOnlineGame=all off
LogAnalytics=all off
LogConfig=all off
LogInteractiveProcess=all off
LogInput=all off
LogOnlineEntitlement=all off
LogOnlineEvents=all off
LogOnlineFriend=all off
LogOnlinePresence=all off
LogOnlineTitleFile=all off
LogOnlineUser=all off
Global=off


If you found this useful, please consider to support my work on Patreon 🙏🏻

Enjoy!
-P