Unreal Engine 4 allows one to control various performance-related features through the FSystemSettings class, which is initialized from the [SystemSettings] section of Engine.ini.
The following sections detail the various settings that can be controlled through [SystemSettings]. The .ini setting is literally the string name of the variable, and the type of the variable determines the values that are supported. See EngineIni[SystemSettings] for an example.
Texture LOD Settings
A great description of the settings for controlling texture resolution and detail can be found in the Texture Support and Settings page.
World Detail Settings
$ DetailMode: (int32) (1-3) Current detail mode; determines whether components of Actors should be updated/ ticked. Corresponds to the EDetailMode enum in Scene.uc, also set in PrimitiveComponent, and returned by WorldSettings.GetDetailMode(). $ SpeedTreeLeaves: (bool) Whether to allow rendering of SpeedTree leaves. $ SpeedTreeFronds: (bool) Whether to allow rendering of SpeedTree fronds. $ StaticDecals: (bool) Whether to allow static decals. $ DynamicDecals: (bool) Whether to allow dynamic decals. $ UnbatchedDecals: (bool) Whether to allow decals that have not been placed in static draw lists and have dynamic view relevance. $ DecalCullDistanceScale: (float) Scale factor for distance culling decals. $ DynamicLights: (bool) Whether to allow dynamic lights. $ CompositeDynamicLights: (bool) Whether to composte dynamic lights into light environments. $ HighQualityLightmaps: (bool) Whether to allow directional lightmaps, which use the material's normal and specular. $ MotionBlur: (bool) Whether to allow motion blur. $ MotionBlurPause: (bool) Whether to allow motion blur to be paused. $ DepthOfField: (bool) Whether to allow depth of field. $ AmbientOcclusion: (bool) Whether to allow ambient occlusion. $ Bloom: (bool) Whether to allow bloom. $ UseHighQualityBloom: (bool) Whether to use high quality bloom or fast versions. $ Distortion: (bool) Whether to allow distortion. $ FilteredDistortion: (bool) Whether to allow distortion to use bilinear filtering when sampling the scene color during its apply pass.
$ DropParticleDistortion: (bool) Whether to allow dropping distortion on particles based on WorldSettings::bDropDetail.
$ LensFlares: (bool) Whether to allow rendering of LensFlares. $ FogVolumes: (bool) Whether to allow fog volumes. $ OneFrameThreadLag: (bool) Whether to allow the rendering thread to lag one frame behind the game thread. $ SkeletalMeshLODBias: (int32) LOD bias for skeletal meshes. $ ParticleLODBias: (int32) LOD bias for particle systems.
Fractured Detail Settings
$ bAllowFracturedDamage: (bool) Whether to allow fractured meshes to take damage. $ NumFracturedPartsScale: (float) Scales the game-specific number of fractured physics objects allowed. $ FractureDirectSpawnChanceScale: (float) Percent chance of a rigid body spawning after a fractured Static Mesh is damaged directly. [0-1] $ FractureRadialSpawnChanceScale: (float) Percent chance of a rigid body spawning after a fractured Static Mesh is damaged by radial blast. [0-1] $ FractureCullDistanceScale: (float) Distance scale for whether a fractured Static Mesh should actually fracture when damaged.
Shadow Detail Settings
$ DynamicShadows: (bool) Whether to allow dynamic shadows. $ MinShadowResolution: (int32) min dimensions (in texels) allowed for rendering shadow subject depths. $ MaxShadowResolution: (int32) max square dimensions (in texels) allowed for rendering shadow subject depths. $ ShadowTexelsPerPixel: (float) The ratio of subject pixels to shadow texels. $ ShadowDepthBias: (float) Depth bias that is applied in the depth pass for all types of projected shadows except VSM. $ ShadowFadeResolution: (int32) Resolution in texel below which shadows are faded out. $ ShadowFadeExponent: (float) Controls the rate at which shadows are faded out.
Texture Detail Settings
$ OnlyStreamInTextures: (bool) If enabled, texture will only be streamed in, not out. $ MaxAnisotropy: (int32) Maximum level of anisotropy used. $ FoliageDrawRadiusMultiplier: (float) Foliage draw distance scalar.
VSync Settings
$ UseVSync: (bool) Whether to use VSync or not.
Screen Percentage Settings
$ ScreenPercentage: (float) Percentage of screen main view should take up. $ UpscaleScreenPercentage: (bool) Whether to upscale the screen to take up the full front buffer.
Resolution Settings
$ ResX: (int32) Screen X resolution. $ ResY: (int32) Screen Y resolution. $ Fullscreen: (bool) Fullscreen.
Mesh Settings
$ bForceCPUAccessToGPUSkinVerts: (bool) Whether to force CPU access to GPU skinned vertex data.