OK, I decided not to be lazy and to actually put some effort in myself, and I think it was worth it. Here is the "after" screenshot of the scene from the question. Not quite the right angle and different time of day, but you should be able to get the point.
Notice that the grass goes much further, but also that rocks appears in the far distance and the distant trees that were visible are now of much higher quality. There's even a shrine thing on the left that I couldn't see before. All this with a drop of only ~10FPS to ~40FPS. Very nice.
Here's another shot I took, just to reinforce that this works, before/after the various distance tweaks. Again note the distant trees up the river and through the clearing, but also the bridge up the river and better house on the right:
First, I set the game to it's default Ultra settings. So all the tweaks I make here are based off of that settings group.
In My Documents/My Games/Skyrim
there are two files called SkyrimPrefs.ini
and Skyrim.ini
that we will be tweaking. Back them up before changing anything, or in the worst case delete them if you break them and Skyrim should regenerate new ones.
The most important change: Unlocking the grid
You need to change how many grid cells around the player should be loaded by the game - apparently if a grid cell isn't loaded nothing will make the stuff in that cell render in best quality, so all you'll get are low-quality "big" items like trees/houses/etc and the landscape, at best.
So, in the Skyrim.ini
I have changed the following:
uGridsToLoad=5 → 9
uExterior Cell Buffer=36 → 100
uGridsToLoad
is the important one, it says how much space around the player should be loaded and active (and thus allow things to render). This will increase RAM usage and load times (but not too significantly). From what I read, it must be an odd number and too high values will crash the game (if it runs out of RAM, you can apparently hack the exe
to be large address aware to avoid this, but I didn't fancy messing with that).
I selected 9
as this produced the nice image above, but doesn't (yet) seem to be causing any crashes for me.
uExterior Cell Buffer
should, apparently, be set to (uGridsToLoad+1)²
.
Warning: A saved game cannot be loaded on a lower uGridsToLoad
setting. So if you bump this up to 9
and later try to turn it back down again you will be locked out of your saved game. There is a fix for this, which is to load the game at the higher setting and then do the following lines at the console:
setini "ugridstoload:general" 5
saveini
refreshini
Then save and quit, and change the uGridsToLoad
to the desired value.
Tweaking the Distances
With it set so distant cells can contain high quality items the next step is to up the loading distances.
Now, Ultra seems to sort most of them out already, and just loading the game with uGridsToLoad
increased was an instant improvement (the rocks/trees/etc). If you need to achieve this on lower settings just crank up all the view distance bars in the settings (I'm sure there's ini
settings for them, but didn't bother to investigate).
Grass was still an issue. So in SkyrimPrefs.ini
I did the following:
fGrassStartFadeDistance=7000.0000 → 25000.0000
fGrassMaxStartFadeDistance=7000.0000 → 25000.0000
fGrassMinStartFadeDistance=0.0000 → 10000.0000
I don't know specifically what each of these three items each do, but those three new values provided the results given, so I'm happy with them.
On advice found in various places I also changed the following variable that should allow more high quality trees. I'm not sure I can see the difference, but it didn't seem to hurt performance:
uiMaxSkinnedTreesToRender=20 → 40
Other tweaks for extra pretty
While researching all this I came across various other tweaks that claim to improve the visual appearance of the game slightly.
The most important (and only ones I could really tell the difference over) are these two, which really improved the game's shadows for me - they are much less "blocky" now:
iBlurDeferredShadowMask=3 → 1
iShadowFilter=3 → 4
fShadowLODStartFade=200.0000 → 1000.0000