Beyond 4K image quality ultra settings - request for a guide

With a 4K OLED HDR monitor wanted to know how to manually tune the game settings beyond the default ULTRA settings for the maximum visual quality possible and beyond 4K if possible as well.
Some posts/guides for pre-Odyssey exists but for new players and as a service for the whole community, requesting a new step by step guide
In addition to the generic graphics settings beyond ultra are their any recommendation for the following:
1) OLED specific improvements?
2) HDR specific improvements ? is it better we let the game run in Auto HDR mode? (using win11)
3) cockpit HUD improvements for OLED - e.g using EDMH-UI

@Morbad will appreciate your help

o7 CMDRs
 
FWIW, I run my game on maximum settings, but I really ought to install Morbad's tweaks again.

I do run on a 4090 and have set up DLDSR to give me a 5760x3240 render buffer which is displayed at 4k/60Hz. Except for some aliasing it does look very good on my 4k OLED.

Edit: Actually the OLED is running at 120Hz, but I am limiting the frames per seconds of the game to 60. My 12900k+4090 doesn't quite manage 120 fps at such a high resolution, I prefer the higher resolution so limit fps. 60 fps is good enough for me and also reduces power consumption somewhat.
 
Last edited:
FWIW, I run my game on maximum settings, but I really ought to install Morbad's tweaks again.

I do run on a 4090 and have set up DLDSR to give me a 5760x3240 render buffer which is displayed at 4k/60Hz. Except for some aliasing it does look very good on my 4k OLED.

Edit: Actually the OLED is running at 120Hz, but I am limiting the frames per seconds of the game to 60. My 12900k+4090 doesn't quite manage 120 fps at such a high resolution, I prefer the higher resolution so limit fps. 60 fps is good enough for me and also reduces power consumption somewhat.
that is a good idea thank u, do you use the game built in scaler to reach this res? my screen can do 4K144 (samsung S90C) but i agree 60 is good enough.
looking forward for full guide/steps from Morbad and anyone else , as well as for the other points mention in the original post.

o7
 
I use the built-in DSR functionality of the nvidia driver to add display modes higher than the native 4k of the screen, the game renders in this higher resolution and then the driver resamples it to the proper resolution for output. In my case I use the included 2.5X DLDSR mode (DL for deep learning), allegedly 2.5X with AI help should be equal to 4X.

I don't limit the framerate in the game, but do it with some extra software, MSI Afterburner + RivaTunerStatisticsServer. But I guess it probably works with letting the game handle that too.
 
I don't really have the inclination to write a step by step guide right now, but most of the pre-Odyssey information still applies. Namely texture resolutions and the galaxy map/skybox stuff has been essentially unchanged since 2014. Shadows (which I have separate threads for), bloom, and HBAO settings are different between Legacy and Odyssey, at least in their details. Just swapping out shadow tables, tuning the galaxy map settings (which are used to generate the skybox) and jacking up texture resolutions will account for the overwhelming bulk of what can be done via the game itself.

Most of these alterations are done via GraphicsConfigurationOverride.xml, which is a file located in the user directory ("%LocalAppData%\Frontier Developments\Elite Dangerous\Options\Graphics"). The settings in this file map to and override those in the main GraphicsConfiguration.xml file in the main game directory. However, there are some modifications that cannot be done via the override. My shadow tables are an example; because I'm adding frustums that aren't in the main file, they can't be correctly parsed via the override, thus I have to edit/replace the main file directly.

When it comes to OLEDs, the main thing is preventing burn-in. Tools like the aforementioned EDMH-UI make it easy to load UI profiles and there are some made with the intention of reducing burn-in. In general, you want static elements to be neutral colors and as dim as is comfortable. This thread has some relevant information: https://forums.frontier.co.uk/threa...scheme-for-elite-dangerous-pc-version.564493/

As for HDR, the game has no native HDR support and the autoHDR injectors I've dabbled with cannot upgrade the game's render targets and do not work. Windows 11 AutoHDR might work, but I haven't tried it. The HDR settings in GraphicsConfiguration.xml aren't referring to 10-bit per channel color or any external HDR standard, but simply the game's internal tonemapper.
 
I don't really have the inclination to write a step by step guide right now, but most of the pre-Odyssey information still applies. Namely texture resolutions and the galaxy map/skybox stuff has been essentially unchanged since 2014. Shadows (which I have separate threads for), bloom, and HBAO settings are different between Legacy and Odyssey, at least in their details. Just swapping out shadow tables, tuning the galaxy map settings (which are used to generate the skybox) and jacking up texture resolutions will account for the overwhelming bulk of what can be done via the game itself.

Most of these alterations are done via GraphicsConfigurationOverride.xml, which is a file located in the user directory ("%LocalAppData%\Frontier Developments\Elite Dangerous\Options\Graphics"). The settings in this file map to and override those in the main GraphicsConfiguration.xml file in the main game directory. However, there are some modifications that cannot be done via the override. My shadow tables are an example; because I'm adding frustums that aren't in the main file, they can't be correctly parsed via the override, thus I have to edit/replace the main file directly.

When it comes to OLEDs, the main thing is preventing burn-in. Tools like the aforementioned EDMH-UI make it easy to load UI profiles and there are some made with the intention of reducing burn-in. In general, you want static elements to be neutral colors and as dim as is comfortable. This thread has some relevant information: https://forums.frontier.co.uk/threa...scheme-for-elite-dangerous-pc-version.564493/

As for HDR, the game has no native HDR support and the autoHDR injectors I've dabbled with cannot upgrade the game's render targets and do not work. Windows 11 AutoHDR might work, but I haven't tried it. The HDR settings in GraphicsConfiguration.xml aren't referring to 10-bit per channel color or any external HDR standard, but simply the game's internal tonemapper.
Thanks, can you please attach or link the mentioned files "GraphicsConfigurationOverride.xml" and shadow tables so will have a single location for this info
 
I have a question along these lines.

To me the biggest issue I had with Odyssey, was the massive drop in shadow quality in cockpit. And yes I get it, lighting model changed it etc etc.

Buuuuuut, is there a way to increase the resolution of the shadow maps at least?
Thanks in advance to you guys
 
Thanks, can you please attach or link the mentioned files "GraphicsConfigurationOverride.xml" and shadow tables so will have a single location for this info
I have a question along these lines.

To me the biggest issue I had with Odyssey, was the massive drop in shadow quality in cockpit. And yes I get it, lighting model changed it etc etc.

Buuuuuut, is there a way to increase the resolution of the shadow maps at least?
Thanks in advance to you guys

Regarding shadows...

Legacy (and some background theory) -- https://forums.frontier.co.uk/threads/graphics-settings-beyond-ultra-shadows.507620/
Odyssey -- https://forums.frontier.co.uk/threads/shadow-quality.587551/

Links to the posts, and their attachments, with my most current released profiles are still correct. Read the instructions.

What can be done with Odyssey's shadows, at least with out breaking things, is more limited than with Legacy. Some cockpits are quite tricky, especially the more cramped ones.

As for GraphicsConfigurationOverride.xml there isn't going to be a one size fits all file for all the subjective options available, but if you want a template of the basics, I'll attach one that has only texture resolutions and galaxy map settings. Note that these settings, the galaxy map nebulae resolution and sample counts in particular, require a relatively high-end GPU to to work well. Most GPUs can handle even extreme texture resolutions fine, but the nebulae stuff will dramatically increase hyperspace load times anywhere near any large nebulae if there isn't enough cache on the GPU.

XML:
<?xml version="1.0" encoding="UTF-8" ?>
<GraphicsConfig>
    <Planets>
        <Ultra>
            <TextureSize>16384</TextureSize>
            <WorkPerFrame>1024</WorkPerFrame>
        </Ultra>
    </Planets>
    <GalaxyBackground>
        <High>
            <TextureSize>8192</TextureSize>
        </High>
    </GalaxyBackground>
    <GalaxyMap>
        <High>
            <HighResNebulasCount>4</HighResNebulasCount>
            <LowResNebulaDimensions>256</LowResNebulaDimensions>
            <HighResNebulaDimensions>2048</HighResNebulaDimensions>
            <LowResSamplesCount>64</LowResSamplesCount>
            <HighResSamplesCount>112</HighResSamplesCount>
            <MilkyWayInstancesCount>64000</MilkyWayInstancesCount>
            <MilkywayInstancesBrightness>1.0</MilkywayInstancesBrightness>
            <MilkywayInstancesSize>0.25</MilkywayInstancesSize>
            <StarInstanceCount>16000</StarInstanceCount>
        </High>
    </GalaxyMap>
</GraphicsConfig>

Remove the .txt extension from the attachment before using it, or just paste the contents into your existing file.
 

Attachments

  • GraphicsConfigurationOverride.xml.txt
    847 bytes · Views: 98
Have been messing around with HDR via Special K a bit. Still need to tune a few things, but results are good so far:
Source: https://youtu.be/Q1jnK_m8xWw?t=120


You'll need an HDR capable display, OS, and browser (Chromium) to view YouTube's HDR transcodes.

I made a post here with a workaround for the Special K UI crashing in Odyssey.
 
Have been further tuning my shadows, lighting, and HDR settings.

Since it takes days for YouTube to produce HDR transcodes, a few examples I could squeeze into 300MB:
https://www.sendspace.com/file/j2jx39

I've also significantly reduced the game's brightness adaptation, which didn't make it into those examples.

This is what my current GraphicsConfigurationOverride.xml looks like:
XML:
<?xml version="1.0" encoding="UTF-8" ?>
<GraphicsConfig>
    <HDRNode>
        <HistogramSampleWidth>164.000000</HistogramSampleWidth>
        <ExposureType>2</ExposureType>
        <ManualExposure>0.0</ManualExposure>
        <ShoulderStrength>0.491000</ShoulderStrength>
        <LinearStrength>0.707000</LinearStrength>
        <LinearAngle>0.704000</LinearAngle>
        <ToeStrength>1.185000</ToeStrength>
        <ToeNumerator>1.377000</ToeNumerator>
        <ToeDenominator>1.976000</ToeDenominator>
        <LinearWhite>5.242000</LinearWhite>
    </HDRNode>
    <HDRNode_Reference>
        <HistogramSampleWidth>164.000000</HistogramSampleWidth>
        <ExposureThreshold>1.000000</ExposureThreshold>
        <Percentiles>0.010000,0.540000,0.999000</Percentiles>
        <ManualExposure>0.0</ManualExposure>
        <GlareCompensation>1.2</GlareCompensation>
        <ShoulderStrength>0.491000</ShoulderStrength>
        <LinearStrength>0.707000</LinearStrength>
        <LinearAngle>0.704000</LinearAngle>
        <ToeStrength>1.185000</ToeStrength>
        <ToeNumerator>1.377000</ToeNumerator>
        <ToeDenominator>1.976000</ToeDenominator>
        <LinearWhite>5.242000</LinearWhite>
        <ACES_A>2.51</ACES_A>
        <ACES_B>0.03</ACES_B>
        <ACES_C>2.43</ACES_C>
        <ACES_D>0.59</ACES_D>
        <ACES_E>0.14</ACES_E>
    </HDRNode_Reference>
    <HBAO>
        <High>
            <HBAO_RadiusInMeters>8.4</HBAO_RadiusInMeters>
            <HBAO_NearRadiusInMeters>2.1</HBAO_NearRadiusInMeters>
            <HBAO_NearDistance>200.0</HBAO_NearDistance>
            <HBAO_PowExponent>2.5</HBAO_PowExponent>
            <HBAO_Bias>0.35</HBAO_Bias>
            <HBAO_BlurSharpness>0.75</HBAO_BlurSharpness>
            <HBAO2_PowExponent>2.5</HBAO2_PowExponent>
            <HBAO2_Bias>0.15</HBAO2_Bias>
            <HBAO2_BlurSharpness>4.0</HBAO2_BlurSharpness>
            <ResolutionScale>1.5</ResolutionScale>
        </High>
    </HBAO>
    <SpotShadows_Ultra>
        <CacheShadowAtlasSize>16384</CacheShadowAtlasSize>
        <CacheShadowSize>2048</CacheShadowSize>
    </SpotShadows_Ultra>
    <Planets>
        <Ultra>
            <TextureSize>16384</TextureSize>
            <WorkPerFrame>1024</WorkPerFrame>
        </Ultra>
    </Planets>
    <GalaxyBackground>
        <High>
            <TextureSize>8192</TextureSize>
        </High>
    </GalaxyBackground>
    <Bloom>
        <Ultra>
            <GlareScale>0.025</GlareScale>
            <FilterRadius>1.0</FilterRadius>
            <FilterRadiusWide>3.0</FilterRadiusWide>
        </Ultra>
    </Bloom>
    <Envmap>
        <High>
            <TextureSize>2048</TextureSize>
            <NumMips>12</NumMips>
        </High>
    </Envmap>
    <GalaxyMap>
        <High>
            <HighResNebulasCount>4</HighResNebulasCount>
            <LowResNebulaDimensions>256</LowResNebulaDimensions>
            <HighResNebulaDimensions>2048</HighResNebulaDimensions>
            <LowResSamplesCount>64</LowResSamplesCount>
            <HighResSamplesCount>112</HighResSamplesCount>
            <MilkyWayInstancesCount>64000</MilkyWayInstancesCount>
            <MilkywayInstancesBrightness>1.0</MilkywayInstancesBrightness>
            <MilkywayInstancesSize>0.25</MilkywayInstancesSize>
            <StarInstanceCount>16000</StarInstanceCount>
        </High>
    </GalaxyMap>
    <Debris>
        <High>
            <DebrisLimit>2000</DebrisLimit>
        </High>
    </Debris>
    <Terrain>
        <UltraPlus>
            <WindVectorFieldResolution>2048</WindVectorFieldResolution>
        </UltraPlus>
    </Terrain>
    <Volumetrics>
        <Ultra>
            <StepsPerPixel>16</StepsPerPixel>
            <DownscalingFactor>2</DownscalingFactor>
            <BlurSamples>3</BlurSamples>
            <StepMultiplier>4.0</StepMultiplier>
        </Ultra>
    </Volumetrics>
</GraphicsConfig>

And my current HDR settings:
LgMbseB.png


Note that most OLEDs won't be able to do 1000 nits, so you might need different settings if you use SpecialK. NVIDIA's TrueHDR is another alternative that might be superior to Windows 11's AutoHDR.

Also, those tone map curves in the override won't look very good on most non-HDR setups.
 
Have been further tuning my shadows, lighting, and HDR settings.

Since it takes days for YouTube to produce HDR transcodes, a few examples I could squeeze into 300MB:
https://www.sendspace.com/file/j2jx39

I've also significantly reduced the game's brightness adaptation, which didn't make it into those examples.

This is what my current GraphicsConfigurationOverride.xml looks like:
XML:
<?xml version="1.0" encoding="UTF-8" ?>
<GraphicsConfig>
    <HDRNode>
        <HistogramSampleWidth>164.000000</HistogramSampleWidth>
        <ExposureType>2</ExposureType>
        <ManualExposure>0.0</ManualExposure>
        <ShoulderStrength>0.491000</ShoulderStrength>
        <LinearStrength>0.707000</LinearStrength>
        <LinearAngle>0.704000</LinearAngle>
        <ToeStrength>1.185000</ToeStrength>
        <ToeNumerator>1.377000</ToeNumerator>
        <ToeDenominator>1.976000</ToeDenominator>
        <LinearWhite>5.242000</LinearWhite>
    </HDRNode>
    <HDRNode_Reference>
        <HistogramSampleWidth>164.000000</HistogramSampleWidth>
        <ExposureThreshold>1.000000</ExposureThreshold>
        <Percentiles>0.010000,0.540000,0.999000</Percentiles>
        <ManualExposure>0.0</ManualExposure>
        <GlareCompensation>1.2</GlareCompensation>
        <ShoulderStrength>0.491000</ShoulderStrength>
        <LinearStrength>0.707000</LinearStrength>
        <LinearAngle>0.704000</LinearAngle>
        <ToeStrength>1.185000</ToeStrength>
        <ToeNumerator>1.377000</ToeNumerator>
        <ToeDenominator>1.976000</ToeDenominator>
        <LinearWhite>5.242000</LinearWhite>
        <ACES_A>2.51</ACES_A>
        <ACES_B>0.03</ACES_B>
        <ACES_C>2.43</ACES_C>
        <ACES_D>0.59</ACES_D>
        <ACES_E>0.14</ACES_E>
    </HDRNode_Reference>
    <HBAO>
        <High>
            <HBAO_RadiusInMeters>8.4</HBAO_RadiusInMeters>
            <HBAO_NearRadiusInMeters>2.1</HBAO_NearRadiusInMeters>
            <HBAO_NearDistance>200.0</HBAO_NearDistance>
            <HBAO_PowExponent>2.5</HBAO_PowExponent>
            <HBAO_Bias>0.35</HBAO_Bias>
            <HBAO_BlurSharpness>0.75</HBAO_BlurSharpness>
            <HBAO2_PowExponent>2.5</HBAO2_PowExponent>
            <HBAO2_Bias>0.15</HBAO2_Bias>
            <HBAO2_BlurSharpness>4.0</HBAO2_BlurSharpness>
            <ResolutionScale>1.5</ResolutionScale>
        </High>
    </HBAO>
    <SpotShadows_Ultra>
        <CacheShadowAtlasSize>16384</CacheShadowAtlasSize>
        <CacheShadowSize>2048</CacheShadowSize>
    </SpotShadows_Ultra>
    <Planets>
        <Ultra>
            <TextureSize>16384</TextureSize>
            <WorkPerFrame>1024</WorkPerFrame>
        </Ultra>
    </Planets>
    <GalaxyBackground>
        <High>
            <TextureSize>8192</TextureSize>
        </High>
    </GalaxyBackground>
    <Bloom>
        <Ultra>
            <GlareScale>0.025</GlareScale>
            <FilterRadius>1.0</FilterRadius>
            <FilterRadiusWide>3.0</FilterRadiusWide>
        </Ultra>
    </Bloom>
    <Envmap>
        <High>
            <TextureSize>2048</TextureSize>
            <NumMips>12</NumMips>
        </High>
    </Envmap>
    <GalaxyMap>
        <High>
            <HighResNebulasCount>4</HighResNebulasCount>
            <LowResNebulaDimensions>256</LowResNebulaDimensions>
            <HighResNebulaDimensions>2048</HighResNebulaDimensions>
            <LowResSamplesCount>64</LowResSamplesCount>
            <HighResSamplesCount>112</HighResSamplesCount>
            <MilkyWayInstancesCount>64000</MilkyWayInstancesCount>
            <MilkywayInstancesBrightness>1.0</MilkywayInstancesBrightness>
            <MilkywayInstancesSize>0.25</MilkywayInstancesSize>
            <StarInstanceCount>16000</StarInstanceCount>
        </High>
    </GalaxyMap>
    <Debris>
        <High>
            <DebrisLimit>2000</DebrisLimit>
        </High>
    </Debris>
    <Terrain>
        <UltraPlus>
            <WindVectorFieldResolution>2048</WindVectorFieldResolution>
        </UltraPlus>
    </Terrain>
    <Volumetrics>
        <Ultra>
            <StepsPerPixel>16</StepsPerPixel>
            <DownscalingFactor>2</DownscalingFactor>
            <BlurSamples>3</BlurSamples>
            <StepMultiplier>4.0</StepMultiplier>
        </Ultra>
    </Volumetrics>
</GraphicsConfig>

And my current HDR settings:
LgMbseB.png


Note that most OLEDs won't be able to do 1000 nits, so you might need different settings if you use SpecialK. NVIDIA's TrueHDR is another alternative that might be superior to Windows 11's AutoHDR.

Also, those tone map curves in the override won't look very good on most non-HDR setups.
Is that file usable if you're not using HDR?
 
Is that file usable if you're not using HDR?

The core tone map changes in the overrides will probably result in the game looking too dark without HDR.

The videos can be watched without HDR in applications that can tone map them back to SDR, but they won't look as good as an SDR game recorded in SDR.

The ACES tone mapper stuff does work without HDR, but it's effect is much more subtle.
 
Back
Top Bottom