Last active
December 11, 2025 19:57
-
-
Save FairlySadPanda/dcab44f138794d1736754358b0a9d6c6 to your computer and use it in GitHub Desktop.
Engine.ini for DNA (for Reddit)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Credits to DragonPhase for the base file for this. Comments below starting with ; are theirs. | |
| # No link here to the original to avoid breaking TOS (I sourced it from a mod-hosting site). | |
| # My main changes were some auditing of changes to make sure they | |
| # actually decreased (or did not increase) frametime. | |
| # I also did a sweep to remove changes that changed visual quality for the worse; | |
| # you can absolutely make DNA look worse than this. | |
| # Warning: this version may cause nasty blurriness when FSR is enabled. | |
| # This was made using the 1.0 Fina patch, 11th Dec 2025. | |
| # Important: the devs can and will change optimization over time! | |
| # HOW THIS WORKS | |
| # Unreal Engine has internal settings that are controlled via text-based settings, called cvars. | |
| # These settings add overrides to what some of the settings do. Most of these changes are benign tweaks. | |
| # INSTALLATION INSTRUCTIONS | |
| # Find your Engine.ini file - [DNA install location]\DNA Game\EM\Saved\Config\WindowsNoEditor\Engine.ini | |
| # Open it, copy-and-paste the below in to overwrite what's already there, then save the file. | |
| # Maybe back-up the original version first. | |
| # UNINSTALLATION INSTRUCTIONS | |
| # Literally just delete the Engine.ini file above. The game will regenerate it from its internal defaults when it boots up next. | |
| [Core.System] | |
| Paths=../../../Engine/Content | |
| Paths=%GAMEDIR%Content | |
| Paths=../../../EM/Plugins/DynamicAtlas/Content | |
| Paths=../../../Engine/Plugins/Runtime/WebBrowserWidget/Content | |
| Paths=../../../Engine/Plugins/Nvidia/DLSS/Content | |
| Paths=../../../Engine/Plugins/Runtime/HoudiniEngine/Content | |
| Paths=../../../EM/Plugins/DBTween/Content | |
| Paths=../../../EM/Plugins/JJYYNiagaraUIParticle/Content | |
| Paths=../../../Engine/Plugins/FX/Niagara/Content | |
| Paths=../../../Engine/Plugins/Experimental/PythonScriptPlugin/Content | |
| Paths=../../../EM/Plugins/FMODStudio/Content | |
| Paths=../../../EM/Plugins/HeroUSDKPlugin/Content | |
| Paths=../../../EM/Plugins/HeroMarket/Content | |
| Paths=../../../Engine/Plugins/BlueprintFileUtils/Content | |
| Paths=../../../EM/Plugins/MotionWarping/Content | |
| Paths=../../../EM/Plugins/EM_LipSync/Content | |
| Paths=../../../Engine/Plugins/BackgroundBlurWithMask/Content | |
| Paths=../../../Engine/Plugins/MovieScene/SequencerScripting/Content | |
| Paths=../../../Engine/Plugins/Experimental/ControlRig/Content | |
| Paths=../../../Engine/Plugins/Experimental/FullBodyIK/Content | |
| Paths=../../../Engine/Plugins/Experimental/CommonUI/Content | |
| Paths=../../../Engine/Plugins/VirtualProduction/Takes/Content | |
| Paths=../../../Engine/Plugins/Enterprise/DatasmithContent/Content | |
| Paths=../../../Engine/Plugins/FSR3/Content | |
| Paths=../../../Engine/Plugins/Marketplace/VertexPaintDetectionPlugin/Content | |
| Paths=../../../EM/Plugins/ACLPlugin/Content | |
| Paths=../../../EM/Plugins/AIHelpForUE/Content | |
| Paths=../../../EM/Plugins/ChangeAnimRunTimeConst/Content | |
| Paths=../../../EM/Plugins/CompareSMBone/Content | |
| Paths=../../../EM/Plugins/CopyAllSourceCurves/Content | |
| Paths=../../../EM/Plugins/CreatAnimCompose/Content | |
| Paths=../../../EM/Plugins/CreateBlendSpace/Content | |
| Paths=../../../EM/Plugins/CreateMontageInPath/Content | |
| Paths=../../../EM/Plugins/ELuaProfiler/Content | |
| Paths=../../../EM/Plugins/UnLua/Content | |
| Paths=../../../EM/Plugins/EMDeviceProfileMatch/Content | |
| Paths=../../../EM/Plugins/EMHeaderTool/Content | |
| Paths=../../../EM/Plugins/EMNiagaraTool/Content | |
| Paths=../../../EM/Plugins/EM_K2Node/Content | |
| Paths=../../../EM/Plugins/EM_LiveLink/Content | |
| Paths=../../../EM/Plugins/HeroNewBDCPlugin/Content | |
| Paths=../../../EM/Plugins/HotPatcher/Content | |
| Paths=../../../EM/Plugins/LowEntryExtStdLib/Content | |
| Paths=../../../EM/Plugins/NiagaraUIRenderer/Content | |
| Paths=../../../EM/Plugins/SideFX_Labs/Content | |
| Paths=../../../EM/Plugins/SpinePlugin/Content | |
| Paths=../../../EM/Plugins/StoryCreator/Content | |
| Paths=../../../EM/Plugins/TapCommon/Content | |
| Paths=../../../EM/Plugins/TapLogin/Content | |
| Paths=../../../EM/Plugins/UESVON/Content | |
| Paths=../../../EM/Plugins/UIParticleSystem/Content | |
| Paths=../../../EM/Plugins/UnLuaExtensions/LuaProtobuf/Content | |
| Paths=../../../EM/Plugins/UnLuaExtensions/LuaRapidjson/Content | |
| Paths=../../../EM/Plugins/WeLingPipeSDK/Content | |
| Paths=../../../Engine/Plugins/2D/Paper2D/Content | |
| Paths=../../../Engine/Plugins/Developer/AnimationSharing/Content | |
| Paths=../../../Engine/Plugins/Editor/GeometryMode/Content | |
| Paths=../../../Engine/Plugins/Editor/SpeedTreeImporter/Content | |
| Paths=../../../Engine/Plugins/MagicLeap/MagicLeapPassableWorld/Content | |
| Paths=../../../Engine/Plugins/MagicLeap/MagicLeap/Content | |
| Paths=../../../Engine/Plugins/Media/MediaCompositing/Content | |
| Paths=../../../Engine/Plugins/MegascansPlugin/Content | |
| Paths=../../../Engine/Plugins/Experimental/GeometryProcessing/Content | |
| Paths=../../../Engine/Plugins/Runtime/Synthesis/Content | |
| Paths=../../../Engine/Plugins/Runtime/AudioSynesthesia/Content | |
| [WindowsApplication.Accessibility] | |
| StickyKeysHotkey=False | |
| ToggleKeysHotkey=False | |
| FilterKeysHotkey=False | |
| StickyKeysConfirmation=False | |
| ToggleKeysConfirmation=False | |
| FilterKeysConfirmation=False | |
| [ConsoleVariables] | |
| bEnableMouseSmoothing=0 ; allow higher mouse DPI input ; | |
| bViewAccelerationEnabled=0 | |
| RawMouseInputEnabled=1 | |
| bOptimizeAnimBlueprintMemberVariableAccess=1 | |
| bAllowMultiThreadedAnimationUpdate=1 | |
| bAllowMultiThreadedShaderCompile=1 | |
| bEnableMultiCoreRendering=1 | |
| AttemptStuckThreadResuscitation=True | |
| D3D12.AdjustTexturePoolSizeBasedOnBudget=1 | |
| D3D11.AdjustTexturePoolSizeBasedOnBudget=1 | |
| foliage.MaxOcclusionQueriesPerComponent=10 ; minimize foliage that appears at one time ; | |
| foliage.MinOcclusionQueriesPerComponent=1 | |
| r.NumBufferedOcclusionQueries=2 | |
| r.Streaming.UsePerTextureBias=1 | |
| r.Streaming.DefragDynamicBounds=1 | |
| r.GPUDefrag.MaxRelocations=4 | |
| r.PreTileTextures=1 | |
| r.UseShaderCaching=1 | |
| r.UseShaderPredraw=1 | |
| bDisableAILogging=1 | |
| LogTelemetry=off | |
| LogAnalytics=off | |
| [/Script/Engine.RendererSettings] | |
| # FSR3 costs 2-5ms of frametime to be switched on! It's not free! | |
| # 0 = 1.0x scaling (Functions as anti-aliasing - see SteamOS's "Sharp" image scaling option as an example) | |
| # 1 = 1.5x scaling ("Quality" mode.) | |
| # 2 = 1.7x scaling ("Balanced" mode.) | |
| # 3 - 2.0x scaling ("Performance" mode. Recommended for small screens like the Deck or Legion Go S.) | |
| # 4 - 3.0x scaling ("Ultra Performance" mode. e.g. 360p -> 1080p. It will look bad. You shall become potato.) | |
| r.FidelityFX.FSR3.QualityMode=3 ; 0 value for native AA ; | |
| r.FidelityFX.FSR3.Sharpness=0.0 | |
| r.FidelityFX.FSR3.AdjustMipBias=1 ; fix blurry FSR3 ; | |
| r.FidelityFX.FSR3.DeDither=1 | |
| r.FidelityFX.FSR3.ReactiveMaskRoughnessScale=0 | |
| r.FidelityFX.FSR3.ReactiveMaskTranslucencyLumaBias=0 | |
| r.FidelityFX.FSR3.ReactiveMaskTranslucencyBias=0 | |
| r.FidelityFX.FSR3.ReactiveHistoryTranslucencyBias=0 | |
| r.FidelityFX.FSR3.ReactiveHistoryTranslucencyLumaBias=0 ; reduce FSR jagged lines issue ; | |
| r.FidelityFX.FSR3.ReactiveMaskPreDOFTranslucencyScale=0 | |
| r.FidelityFX.FSR3.ForceVertexDeformationOutputsVelocity=1 | |
| r.FidelityFX.FSR3.CreateReactiveMask=1 | |
| r.FidelityFX.FSR3.HistoryFormat=0 | |
| r.FidelityFX.FSR.RCAS.Sharpness=0.0 ; fix directx11 FSR blurry issue ; | |
| r.FidelityFX.FSR.Post.FilmGrain=0 | |
| r.Reflections.Denoiser=2 | |
| r.Reflections.Denoiser.TemporalAccumulation=1 | |
| r.MultithreadedRendering=1 | |
| r.AllowMultiThreadedShaderCreation=1 | |
| r.SSR.HalfResSceneColor=1 ; lower SSR res ; | |
| r.HighQualityShafts=0 | |
| r.LightShaftDownSampleFactor=7 ; lower shaft ; | |
| r.DistanceFieldAO=0 | |
| r.Shadow.DistanceField=0 | |
| r.DistanceFieldLighting=0 | |
| r.DistanceFieldShadowing=0 | |
| r.SubsurfaceScattering=0 | |
| r.EnableMultiThreadedRendering=1 | |
| r.ThreadedShaderCompilation=1 | |
| r.TextureStreaming.DiscardUnusedMips=1 | |
| r.ThreadPool.EnableBackgroundThreads=1 | |
| r.ThreadPool.EnableHighPriorityThreads=0 | |
| r.AlsoUseSphereForFrustumCull=1 | |
| r.OptimizedWPO=1 | |
| r.Shaders.Optimize=1 | |
| r.Streaming.Threaded=1 | |
| r.Shadow.CSMCaching=1 | |
| r.ShaderCompiler.AllowDistributedCompilation=0 | |
| r.CreateShadersOnLoad=1 | |
| niagara.CreateShadersOnLoad=1 | |
| r.Cache.UpdateEveryFrame=1 | |
| r.Cache.DrawInterpolationPoints=1 | |
| FX.SkipVectorVMBackendOptimizations=1 | |
| FX.MaxCPUParticlesPerEmitter=1000 | |
| FX.EnableCircularAnimTrailDump=0 | |
| FX.ParticlePerfStats.Enabled=0 | |
| FX.Niagara.DebugDraw.Enabled=0 | |
| # Everything in this section below this comment messes with the post-processing stack. | |
| # This sacrifices artist intent for sweet, delicious frames. | |
| r.BlurGBuffer=0 | |
| r.DepthOfField=0 | |
| r.DepthOfField.MaxSize=0 | |
| r.DOF.TemporalAAQuality=0 | |
| r.DOF.Scatter.NeighborCompareMaxColor=0 | |
| r.DOF.Kernel.MaxBackgroundRadius=0.0001 | |
| r.DOF.Kernel.MaxForegroundRadius=0.0001 | |
| r.DOF.Recombine.EnableBokehSettings=0 | |
| r.DOF.Recombine.Quality=0 | |
| r.DOF.Gather.RingCount=0 | |
| r.DepthOfField.FarBlur=0 | |
| r.SceneColorFringeQuality=0 | |
| r.SceneColorFringe.Max=0 | |
| sdk.DisableCutsceneCA=1 | |
| r.MeshParticle.MinDetailModeForMotionBlur=0 | |
| r.MotionBlurIntensityOverride=0.000000 | |
| r.MotionBlurLimitationOverride=0.000000 | |
| r.MotionBlurRestrainOverride=0.000000 | |
| r.MotionBlurScatter=0 | |
| r.Tonemapper.Sharpen=0 | |
| r.Tonemapper.Quality=0 | |
| r.Tonemapper.GrainQuantization=0 | |
| r.DefaultFeature.LensFlare=0 | |
| r.DefaultFeature.MotionBlur=0 | |
| r.DefaultFeature.DOF=0 | |
| r.MotionBlurQuality=0 | |
| [SystemSettings] | |
| foliage.DiscardDataOnLoad=1 | |
| # Touch grass, but not infinitely. This applies distance culling to grass. | |
| # Most noticeable on the cliff overlooking the village on Purgatorio Island. | |
| # Set this to 500000 (five-hundred thousand) for an FPS boost at the cost of making Pan Studio's artists sad. | |
| # Set it to 50000 (fifty thousand) for an even more aggressive removal of grass. | |
| # Set this to 0 to completely disable all foliage, but this will result in certain bushes with collision being turned invisible! | |
| foliage.MaxTrianglesToRender=5000000 | |
| r.ParallelGraphics=1 | |
| r.ParallelRendering=1 | |
| r.ParallelParticleUpdate=1 | |
| r.ParallelPhysicsScene=1 | |
| r.ParallelDistanceField=0 | |
| r.ParallelShaderCompile=1 | |
| r.ParallelPostProcessing=0 | |
| r.ParallelSkeletalClothSimulate=1 | |
| r.ParallelSkeletalClothUpdateVerts=1 | |
| r.ParallelDistributedScene=1 | |
| r.ParallelMeshBuildUseJobCulling=1 | |
| r.ParallelMeshBuildUseJobMerging=1 | |
| r.ParallelMeshDrawCommands=1 | |
| r.ParallelMeshMerge=1 | |
| r.ParallelMeshProcessing=1 | |
| r.ParallelLandscapeLayerUpdate=1 | |
| r.ParallelLandscapeSplineUpdate=1 | |
| r.FastVRam.GBufferVelocity=1 | |
| r.FastVRam.ShadowPerObject=1 ; optimized VRAM and reduce stuttering ; | |
| r.FastVRam.ShadowPointLight=1 | |
| r.FastVRam.ShadowCSM=1 | |
| r.FastVRam.SSR=1 | |
| r.FastVRam.CustomDepth=1 | |
| r.FastVRam.GBufferA=1 | |
| r.FastVRam.GBufferB=1 | |
| r.FastVRam.GBufferC=1 | |
| r.FastVRam.GBufferD=1 | |
| r.FastVRam.GBufferE=1 | |
| r.ShaderPipelineCache.PreOptimizeEnabled=1 | |
| r.ShaderPipelineCache.LazyLoadShadersWhenPSOCacheIsPresent=1 ; better loading time ; | |
| r.ShaderPipelineCache.SaveAfterPSOsLogged=5 | |
| r.ShaderPipelineCache.BackgroundBatchSize=8 | |
| r.ShaderPipelineCache.BackgroundBatchTime=1.0 | |
| r.FrustumCullNumWordsPerTask=1024 | |
| r.Streaming.LimitPoolSizeToVRAM=1 | |
| r.Streaming.AmortizeCPUToGPUCopy=0 | |
| r.Streaming.NumStaticComponentsProcessedPerFrame=20 ; minimize static components ; | |
| r.Streaming.MaxNumTexturesToStreamPerFrame=15 ; minimize textures ; | |
| r.Streaming.AllowFastForceResident=0 | |
| r.Shadow.UnbuiltPreviewInGame=0 | |
| r.Shadow.CacheNonWholeSceneShadows=1 | |
| [CrashReportClient] | |
| bAgreeToCrashUpload=0 | |
| bImplicitSend=0 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment