Silgrad Tower from the Ashes

Full Version: [GAME/PERFORMANCE] Manipulating grass distance
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Based on an ESF post by Regnaw on ESF, March 23rd 2006. Edited by Razorwing.
The file being referenced here is located on your computer, at My Documents\My games\Oblivion\Oblivion.ini

black[/hr]

If you're having FPS problems this may help. If your grass distance is at maximum and you're still running smooth, the only thing you can grab from all this is that you can increase the density even more.

Keep in mind that settings are relative to your computer, but the portion in the .ini file that looks like this is what you should find:

[blockquote][Grass]
iMinGrassSize=80
fGrassEndDistance=3000.0000
fGrassStartFadeDistance=2000.0000[/blockquote]

I've found that grass and HDR are the two biggest hogs of FPS in Oblivion. HDR is a must. Leave this on if you can. It cannot be sacrified for FPS and you'll find out why later. And Bloom doesn't cut it. And AA is not a worthy excuse. That leaves grass.

Some people have turned grass off or lowered the distance but there is a better solution where you will actually increase the grass draw distance.

What you must do is first decrease the density of the grass. By default Oblivion draws extremely thick grass and this causes enourmous amounts of FPS drop when travelling the through the grass because thousands of sprites are covering the entire viewpoint.

To reduce the density of the grass, edit the iMinGrassSize setting. Change it to a fairly high number, ranging between 120-300. The higher the number the less dense the grass is. I changed mine to 200. This makes the grass very thin and sparse.

Now that the grass is very thin, you get a huge increase in FPS. This increase is absolutely massive. It's almost like playing with no grass at all. Since we got a huge boost in FPS we can now increase the draw distance of the grass significantly. Do so by increasing the fGrassEndDistance and fGrassStartFadeDistance settings to higher numbers. I changed to fGrassEndDistance to 10000.0000 and fGrassStartFadeDistance to 5000.0000.

Now here's where HDR comes in. When HDR is disabled then the grass pops in making the fGrassStartFadeDistance command useless. But when HDR is enabled the grass smoothly fades in and out. So you can see why HDR is needed for optimal grass drawing.

Okay, there is an alternative to HDR. You can turn HDR off... and because HDR is such a hog and you just freed alot of GPU power you can then set the fGrassEndDistance and fGrassStartFadeDistance to some to a value like 15000.0000 or higher so the grass goes all the way to view distance clipping thing. And even still increase the density by a little bit. It all depends on the computer setup, but on my Athlon 64 4000+ and 6800GT the HDR takes up a lot of juice.


There are huge advantages to using these commands. Because the grass is thin, your view isn't occluded by a mass of swarming grass sprites while trekking through the countryside. Now you can see the wolves that are attacking you plus your FPS isn't at 5-10 anymore. Ding ding ding! The grass also fades in and out with distance and it blends into the ground textures. "Suspension of disbelief" factor... rising!

Disadvantage is that it doesn't look as lush and full. Can't have everything, I guess. If you have a super-computer with an SLI rig, you're free to put the density at whatever you want. Atleast now you know how to increase it. Try putting it at 20 Tongue

Here are a few screenshots to illustrate what the effect looks like.

#1 [RW: attached as first screenshot]
#2 [RW: attached as secondscreenshot]
#3 [RW: not attached]

Without HDR but increased distance [RW: attached as third screenshot]




This is what the author of the original post recommended you set the three Grass settings to:
[blockquote][Grass]
iMinGrassSize=200
fGrassEndDistance=10000.0000
fGrassStartFadeDistance=5000.0000[/blockquote]
Another poster noted:

[blockquote]iMinGrassSize=
Determines how thick the grass is. 80 is default, setting higher will increase performance, but cause thinner grass. Anything above 150 causes the grass to appear in patches. I find 110 or 120 to be a good middle ground on performance and quality.

fGrassEndDistance=
Determines how far out grass will draw. Set this farther for grass to be drawn far away, but this will impact performance.

fGrassStartFadeDistance=
This will determine the distance at which grass starts to fade out, but only if you have HDR enabled. Otherwise, this setting is useless.[/blockquote]
Hi there,

I tried these settings (P4 3.00 Ghz, 1024 Mb, X550 Ati).

[Grass]
iMinGrassSize=120
fGrassEndDistance=5000.000
fGrassStartFadeDistance=3500.0000

It worked very well.
It gave me great boost in performance (ok, less grass density).

Thanks for this advise.

I forgot to mention the resolution. I played with 1024*768. Now 1152*864 goes very smooth. 1280*960 is also acceptable.
For some reason, Oblivion doesn't let me use HDR..
Even though it supports it(I know because I can play with in games like Half-Life2).