Skip to main content

Graphical Performance

Submitted by anytus on

As we've all experienced, our framerate seems to take a hit when we travel from Cyrodil to Vvardenfel. I've read the basic performance FAQ but I'd like to understand more about why that happens and what graphical settings maximize quality and performance. This isn't a thread to complain about performance, but rather maybe we can learn a little about how this thing works and what to avoid.  

To start, let me tell you a bit about my PC. I have a pretty mid-range PC as far as gaming goes. Running Windows Vista with 2 GB of RAM, a 2.2 GHz dual-core processor (a poor processor for this game, I realize), and an Nvidia 8800 GTS 1GB.

Usually, my framerate in Morrowind is significantly lower than it is in similar situations in Oblivion. I get 10-15 fps in towns with occasional dips into single digits. In the wilderness my framerate varies with 20-25 common in some areas, whereas other areas I average 40-50 fps. I haven't been able to isolate at all what the source of these discrepancies are. Occasionally, especially after fast-traveling or zoning into a new area through a door I get < 1 fps for a few minutes and it sometimes causes a crash. All of these numbers are for settings with textures set to large, all the draw distances turned all the way up (including distant land, etc.), and basically everythign else off (bloom, HDR, Anti-Aliaising, shadows, reflections). I am running Eloth's visual overhaul. 

I heavily suspect that my CPU is bottlenecking. Performance seems to be completely unrelated to the level of Anti-Aliasing, which I think is controlled almost exclusively by the graphics card. Bloom doesn't seem to reduce performance, but HDR definitely does. I haven't tested the shadows extensively, but water reflections also seem to cause a notable performance hit, depending on the area.

Here are my questions to the morroblivion community, especially the modders working hard on all this stuff. What are the reasons for the performance difference between multiple areas? What kind of a rig are you running and what are your benchmarks? What settings do you think can be tweaked without a change in performance? Do you also get a discrepancy between Cyrodil and Vvardenfel? Have you noticed a performance dip while in Cyrodil since installing Morroblivion? 

Karma: 0 (0 votes)

What are the reasons for the performance difference between multiple areas?

These are discussed in the first post of the project release thread:

* A Massive Worldspace that contains all the cities with all their NPC's
* The entire worldspace is completely without pathgridding (except in cities)
* 3-5 times the number of creatures appearing in the wilderness as Oblivion
* Many more base NPC's to keep track of than Oblivion
* Poorly optimized Meshes
* No small-resolution LOD Meshes

What kind of a rig are you running and what are your benchmarks?

3.0ghz quad core Intel i7, 24 GB RAM, Nvidia GTX 470

I get 15-30 with all graphics options turned on an a ishtload of shaders in OBGE2.  20-30 if I turn off OBGE shaders

What settings do you think can be tweaked without a change in performance?

Don't use any of the visual overhaul stuff or other texture replacers.  Overclock your CPU, memory and GPU.  Lower your in-game settings.  Check out oldblivion, a program for running Oblivion on older computers http://www.oldblivion.com/?page=download

Do you also get a discrepancy between Cyrodil and Vvardenfel?

Yes

Have you noticed a performance dip while in Cyrodil since installing Morroblivion?

No

Karma: 0 (0 votes)

I heard that overclocking your CPU might actually slow down Oblivion. Anyway I can't test that because my power supply is only 300w :(

Karma: 0 (0 votes)

Thermador, I appreciate your reply, but it contains mostly stock answers. Like I said, I read the FAQ type stuff that is posted in the FAQ type pages, I am looking for something a little deeper than that.

 

For instance, 

 

These are discussed in the first post of the project release thread:

* A Massive Worldspace that contains all the cities with all their NPC's
* The entire worldspace is completely without pathgridding (except in cities)
* 3-5 times the number of creatures appearing in the wilderness as Oblivion
* Many more base NPC's to keep track of than Oblivion
* Poorly optimized Meshes
* No small-resolution LOD Meshes

None of this really explains why you would get 50 frames in the wilderness, but only 10 in a city. The worldspace hasn't changed. There IS pathgridding in the cities. There are lots of NPCs to keep track of both in the wilderness and cities (though I bet more in the cities, is this the reason for the difference?). If the meshes are poorly optimized they are porbably poorly optimized everywhere. Same thing for the LOD meshes. So, why the difference? Could it be solely the NPCs?

 

Second:

What settings do you think can be tweaked without a change in performance?

Don't use any of the visual overhaul stuff or other texture replacers.  Overclock your CPU, memory and GPU.  Lower your in-game settings.  Check out oldblivion, a program for running Oblivion on older computers http://www.oldblivion.com/?page=download

I don't think oldblivion is what I am looking for, like I said Oblivion runs fine on my PC. Again, why do the visual overhauls and texture replacers lower performance? What components in the PC do they rely on the most? Obviously lower the in-game settings, but which ones? Like I said, on my machine I get almost identical performance with 0x, 2x, 4x, and 8x Anti-Aliasing. Clearly something is going on there. There must be settings that deliver more performance boosts than others. 

 

Karma: 0 (0 votes)

Offended as I am at the referrence to "stock answers", since I answered each one of your questions individually, I will try and explain in detail, in a fully customized list just for you:

1) Your computer is old and slow, especially your processor.  If it's an off-the-shelf Dell / HP / Acer etc, than it's probably worth dumping it and building a custom box.  Otherwise, your options are: overclock it or upgrade.  Overclocking does NOT slow down Oblivion, especially if your base is only 2.2ghz, you will see a huge improvement IF you can get that up to around 3ghz.  That's a pretty big IF though, it depends on your skill at overclocking and the amount of cooling you have.  You better have a big CPU cooler if you're going to overclock it from 2.2->3.0. 

Otherwise, upgrade time!  You might be able to just swap CPUs.  Assuming you have an Intel socket 775 Core 2 Duo, you can upgrade to a 3.2ghz dual core processor for $83 - here is a link on Amazon.  I have no idea what processor you actually have, but an upgrade shouldn't cost more than $100 or so.  Your ram and video card are probably OK, although doubling your ram to 4gb (if that is possible with your motherboard, it may not be) could help a bit.

2) If you are unwilling to upgrade and/or overclock, then you need to lower your graphics settings, including screen resolution, until you get something that is giving you a frame rate that is acceptable to you.  In any case, not knowing exactly what your graphics settings are now, how can I suggest better settings?  Further, I don't know what you prefer - high resolution so everything is sharp, with the sacrifices made in all the other details, or are you the type of gamer who drops the resolution but keeps everything else?  Just fiddle with the settings until you get something that works.

3) The VERY FIRST bullet point on that list explains the difference between FPS in cities and wilderness.  In Oblivion, the cities are in their own separate worldspaces so they are rendered separately.  Bethesday had to put walls around all of the cities and build separate worldspaces, because open cities were just too slow for most people (note that there is an Open Cities mod that does this, but it requires a fast computer). 

Morroblivion does it the morrowind way, with open cities.  This means that the game has to render all of those polygons and textures in the cities AND keep everything that is nearby (wilderness etc) rendered and loaded into memory.  Further, there is just more stuff in the cities!  People, buildings, boxes, barrels, lights, architecture, gaurds, etc. etc. etc.   It's more work for the game to render and process it all, and it slows down your old machine.

Hopefully that also answers your other question.  Visual overhauls use higher res textures and new meshes with more polygons, which means more work for your old machine to render.  Video games rely heavily on ALL computer components, but the most important is proably the video card.  The 8800 with 1gb is a decent card, but it is old too.  An upgrade to something modern like a nvida 470, 480, 490 or 570, 580, or 590 would be a huge benefit.  You would also have to upgrade your power supply though, and altogether, it's a lot more money than a CPU upgrade, which is probably where your bottleneck is anyway.

 

Karma: 0 (0 votes)

A fully customized list is exactly what I was looking for, thank you. As reasonable or unreasonable as that may sound, I understood what the differences were that ceteris paribus must cause the difference in performance, but now thats to yuor more detailed post I udnerstand more about why those differences are important, why they cause performance differences. I appreciate it. I would never have guessed that cities were that much of an issue. I had no idea why bethesda decided to enclose the cities in Oblivion until now.

Doing something drastic like reducing what gets rendered around a city when you are in it would require major engine changes, I'm sure. There isn't that much more actually on screen in a city than in the wilderness. Certainly more NPCs so I imagine the extra animations take some work to produce. I have no idea what kind of occlusion Oblivion uses but if it was built for closed cities and suddenly you threw it into an open city, I can see why it would have problems. You'd really need some type of occlusion that is built for open cities. There also seems to be a lot of memory hogging going on. Even if the game isn't drawing more things on screen in a city, I wonder how it keep track of all the stuff that is just off screen. It'd be pretty sorry if every time an NPC walked on screen he had to load. I imgine thats what the spike in persistent reference calls is that you get when you walk into a city. How exactly the duties of storing that information are divided I have no idea. There must be some distribution of how those objects and different parts of them are stored in both teh RAM and video RAM. Basically, what I mean to say is that it doesn't seem like actually drawing the stuff is much of a problem. It is just keeping track of and loading everything when it all gets crunched into a small space. If the RAM is being hogged by stuff just off screen then there isn't enough to render what is on screen quickly.     

I'm not super concerned about upgrading my own PC, I'm really more just curious about how all this stuff works with respect to Morroblivion. It is like the perfect testing ground for how the different settings affect framerate and detail. Everything is the same in terms of graphics and engine, but there are the key differences that then must be causal. It definitely will be time for me to get a new PC soon, I bought this one in the summer of 2007, so that's 4 years now. I am starting a new job in August so budgeting is going to be big in terms of seeing what I can save for down the road. All thsi being an adult stuff is like . . . complicated. 

Karma: 0 (0 votes)

When does the Open Cities file come into play during the installation process?

Karma: 0 (0 votes)

haha, that's a slight misunderstanding. Morrowind doesn't have an open cities file. Its cities ARE open, meaning thats the way they came. You don't need to install an open cities esp. Morroblivion's morrowind cities come open. An Open Cities mod for Cyrodiil should have no effect on morroblivion. I hope that makes sense, lol. 

Karma: 0 (0 votes)

Play nice, kids ..

I'm using a 4 year old Dell computer - and not having any of the issues mentioned above. The only thing I've noticed recently is that Morroblivion runs a script for just about everything that happens. There are also a lot of script errors and many scripts are not used or even necessary.  some of the 'Overhaul' mods used in Morroblivion use hi-res textures that take up a lot of space but are not causing crashes for me. 

Yes, the number of objects in the Morro world is huge, but not all are loaded at the same time. Objects load when you enter a cell for the first time, so the 'PCB fix' does help with clearing previously loaded cells but I really don't think it's a cure-all for the random crash issue.

The biggest problem I had (and got people mad at me when I made suggestions) is missing meshes and corrupted or unfinished creatures that caused a ctd when entering a cell that had one or more of them in it.  I fixed all that in my copy of morro and do not have that problem now. 

Currently, (as of v34 esm) the chiten arrow has a missing mesh .. (probably because I don't use or want some of the many add-on official mods that are 'required'.  I just set it to use a different mesh more in keeping with the morrowind world.  The Hailuey Guard shield mesh for guards in Balmora is also missing. I set it to use a different shield so it would not have the yellow missing mesh box.

My Oblivion folder is C:\Oblivion

 

Below are the specs (direct from System Info) for the PC I use in case anyone's interested ..

OS Name    Microsoft Windows XP Professional
Version    5.1.2600 Service Pack 3 Build 2600
OS Manufacturer    Microsoft Corporation
System Name    STEPH-FCD4C2
System Manufacturer    Dell Inc.
System Model    Precision WorkStation 390
System Type    X86-based PC
Processor    x86 Family 15 Model 6 Stepping 5 GenuineIntel ~2992 Mhz
BIOS Version/Date    Dell Inc. 2.2.0, 3/29/2007
SMBIOS Version    2.3
Windows Directory    C:\WINDOWS
System Directory    C:\WINDOWS\system32
Boot Device    \Device\HarddiskVolume2
Locale    United States
Hardware Abstraction Layer    Version = "5.1.2600.5512 (xpsp.080413-2111)"
User Name    STEPH-FCD4C2\Steph
Time Zone    Central Daylight Time
Total Physical Memory    2,048.00 MB
Available Physical Memory    1.28 GB
Total Virtual Memory    2.00 GB
Available Virtual Memory    1.96 GB
Page File Space    3.85 GB
Page File    C:\pagefile.sys

Name    NVIDIA Quadro FX 550
PNP Device ID    PCI\VEN_10DE&DEV_014D&SUBSYS_034910DE&REV_A2\4&11884419&0&0008
Adapter Type    Quadro FX 550, NVIDIA compatible
Adapter Description    NVIDIA Quadro FX 550
Adapter RAM    128.00 MB (134,217,728 bytes)
Installed Drivers    nv4_disp.dll
Driver Version    6.14.11.8120
INF File    oem0.inf (nv4_WSApps_NV3x section)
Color Planes    1
Color Table Entries    4294967296
Resolution    1152 x 864 x 75 hertz
Bits/Pixel    32
Memory Address    0xE8000000-0xEFEFFFFF
Memory Address    0xD8000000-0xDFFFFFFF
Memory Address    0xEE000000-0xEEFFFFFF
IRQ Channel    IRQ 16
I/O Port    0x000003B0-0x000003BB
I/O Port    0x000003C0-0x000003DF
Memory Address    0xA0000-0xBFFFF
Driver    c:\windows\system32\drivers\nv4_mini.sys (6.14.11.8120, 6.01 MB (6,301,344 bytes), 12/26/2008 12:08 AM)

 

Karma: 0 (0 votes)