How can I extend the view distances further?

OK, I'm lucky enough to have the game run smoothly enough for my tastes on the Ultra settings - so with all the game-provided settings set to maximum.

Most of the time it looks brilliant. However, once you find a large open space, and then can see the distance rendering cut-offs, such as these disappearing grasses just past the road and the smudge of a texture up the hill in the distance:

Screenshot of TESV:Skyrim, showing wide space and obvious item fade out

Since I'm getting just under 50 FPS from the above location (according to Fraps), and that or more elsewhere, I'd like to sacrifice a few of those to improve the visual quality a little bit by making the game draw things further away.

After a quick web search I see lots of talk of modifying ini files, but many of these talk about options without really explaining them. I get the feeling that the other recent Bethesda games have been tweaked like this before and so the tweakers write guides for those already in the know roughly how all this works.

Unfortunately, I'm not one of those people, and I don't really want to wade through tonnes of info and test tonnes of tweaks until I find the right combination.

So, what ini changes (or any other method!) should I use to extend the draw distance further that the defaults the game provides?


Solution 1:

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.

enter image description here

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:

enter image description here enter image description here


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

Solution 2:

So open up that SkyrimPrefs.ini file!
For windows 7:
/Users/[your username]/My Documents/My Games/Skyrim

First thing is to create a backup. Simply save a copy with a different name. "SkyrimPrefsBackup.ini" will suffice. This way if you mess up the settings, you have a backup to fall back on.

Look for lines that contain "Distance", "Dist", "Level", or "LOD". (LOD stands for level of detail.) These are the lines that will control how far out objects and detail are rendered.

For your grass example, bump up these lines:

fGrassStartFadeDistance=XX.0000
fGrassMaxStartFadeDistance=XX.0000
fGrassMinStartFadeDistance=XX.0000

Solution 3:

I've read that the peak for grass distance is 20000. I find 7200 works for me. I find that 7800 and higher tends to make the game load in chunks instead of the fade effect they have. I really don't want Skyrim running like Minecraft.

What really irked me was the ~3000 plant draw distance. You can change it by doing this in skyrimprefs:

fMeshLODLevel2FadeDist=12288.0000
fMeshLODLevel1FadeDist=16384.0000

I chose those numbers because they are 4 times the original value, making them quite stable. There doesn't seem to be a difference after about 9600 anyways.

As for the regular ini:

fdefaultfov=95
uGridsToLoad=9
uInterior Cell Buffer=16
uExterior Cell Buffer=128

Yes, uExterior set to 204 looks better, but I think it was messing with my game, though that could have been the 4xAA/8xAF. Anyway, I knocked both back, 128 cell buff, NoAA and 4xAF. (AA is essentially a useless frame waster with the mods and/or resolution I'm using.)

I noticed that anything remotely building-related will drop my frame rate from 50 to 36. Just something to keep in mind. I think if your highest FPS is 30, you might be in for a rough ride when ever theres a single structure within your FoV.

Anyway, I hope this was helpful. I suppose I should actually play the game now.