Jump to content

Actor/NPC optimization?


1Mac

Recommended Posts

hey this is interesting

just now I test spawn 300++ NPCs in front of me

and I set 600 clip view distance --> setclipdist 600

you know what ?

the fps is still safe at 11 - 15

and I can still run the game just fine...

so now we know that the top fps eater is 3D rendering process.

the script and background script and high process actors is not the main fps eater in Oblivion

Link to comment
Share on other sites

I'm not sure how many gamers consider 11-15 FPS to be playable for very long. From my reading the major FPS sucker in Gamebryo's engine is animation, not because it's graphics-intensive but because it's handled mostly by the CPU. Try having your 300+ NPC's move (even wander) and see what happens to FPS. :)

 

A while back we stumbled on a few oblivion.ini settings that I've not seen mentioned in tweak guides, and that appear to make a performance difference with multiple animations:

 

[OPENMP]

iThreads=20

iOpenMPLevel=20

 

[Combat]

iMaxHiPerfNPCTargetCount=8

iMaxHiPerfPCTargetCount=8

iMaxHiPerfCombatCount=8

 

[HAVOK]

iNumHavokThreads=4 (Set to # of physical cores on your CPU.)

 

[General]

iNumHWThreads=4 (Set to # of physical cores on your CPU.)

 

 

The three Combat variables default to 4 in oblivion.ini, I haven't tried anything higher than 8 yet.

 

Also, according to Bethesda the engine can and does use numbers up to 6 for iNumHWThreads.

 

If you're having game lag problems, one trick is to go into Nvidia's profile for Oblivion and lower the "Maximum pre-rendered frames" from its default (3) to 2, or even 1 or 0 if you like instantaneous mouse/keyboard response. None of these tweaks will fix other sources of FPS and lag problems (inadequate CPU power, wireless device delays etc).

Edited by TheMastersSon
Link to comment
Share on other sites

I agree

the animation is super costly in Oblivion, it is handled very badly... it is not efficient at all unlike Morrowind (one file for all animations)

this rendering thing is actually can be solved

if somehow OR mod could upgrade that framerate feature to support line of sight -- that would be very delight :) I'm pretty sure it will help thousands Oblivion player

Link to comment
Share on other sites

I'm not sure how many gamers consider 11-15 FPS to be playable for very long. From my reading the major FPS sucker in Gamebryo's engine is animation, not because it's graphics-intensive but because it's handled mostly by the CPU. Try having your 300+ NPC's move (even wander) and see what happens to FPS. :smile:

 

A while back we stumbled on a few oblivion.ini settings that I've not seen mentioned in tweak guides, and that appear to make a performance difference with multiple animations:

 

[OPENMP]

iThreads=20

iOpenMPLevel=20

 

[Combat]

iMaxHiPerfNPCTargetCount=8

iMaxHiPerfPCTargetCount=8

iMaxHiPerfCombatCount=8

 

[HAVOK]

iNumHavokThreads=4 (Set to # of physical cores on your CPU.)

 

[General]

iNumHWThreads=4 (Set to # of physical cores on your CPU.)

 

 

The three Combat variables default to 4 in oblivion.ini, I haven't tried anything higher than 8 yet.

 

Also, according to Bethesda the engine can and does use numbers up to 6 for iNumHWThreads.

 

If you're having game lag problems, one trick is to go into Nvidia's profile for Oblivion and lower the "Maximum pre-rendered frames" from its default (3) to 2, or even 1 or 0 if you like instantaneous mouse/keyboard response. None of these tweaks will fix other sources of FPS and lag problems (inadequate CPU power, wireless device delays etc).

Thanks! I tried these (though not the combat ones, since I'm not testing combat; plus I don't have an NVidia card) and saw a bit of a performance boost, plus this time I could at least load the area outside of Cheydinhal I've been fast travelling to. Alas it still crashes shortly thereafter. (Fwiw, Alenet says Oblivion doesn't even use the OPENMP settings.)

 

I also tried Akreontage's trick of setting bUseFaceGenHeads to 0. The results are pretty funny and not at all useable (headless NPCs!), but I could fast travel to all the Open Cities (namely Cheydinhal and Skingrad) that were previously crashing. That suggests that faces are a big part of the problem. I should try Celestia's trick of exporting NPC face textures in CS, to the extent that I understand it.

Edited by 1Mac
Link to comment
Share on other sites

Fwiw, Alenet says Oblivion doesn't even use the OPENMP settings.)

Ask Alenet if he's looked at Oblivion's source code to check his claim.

 

As for your crashing problems, my previous experience with Open Cities and other large mods that add lots of NPCs has been the same as yours, invariably my saves have wound up either horribly bloated or altogether corrupt. But there's no shortage of other potential culprits for crashing problems, e.g. have you checked your GPU/CPU temps while playing? Etc. If nothing else works and you get this problem even with a brand new game, I'd suggest a clean reinstall of both the game and mods, and try it after each mod is installed to see when or if the crashing starts. I'm guessing it won't.

Edited by TheMastersSon
Link to comment
Share on other sites

 

Fwiw, Alenet says Oblivion doesn't even use the OPENMP settings.)

Ask Alenet if he's looked at Oblivion's source code to check his claim.

This is precisely what he claims to have done. He's the main Oblivion Reloaded dev, so I bet he has.

 

 

hmm... why in my oblivion ini file that 'iNumHWThreads' is not exist ?

You have to type it in, under [General].

 

Promising news: I first backed up the original Data/Textures/Faces/Oblivion.esm folder. Then I opened CS, loaded Oblivion.esm and OCO2, setting no master file. I then selected "Export NPC Face Textures" from the Character menu. I got some error messages, which I dismissed. Then I ran the game. Results: Successful fast travel to the stables outside both Skingrad and Cheydinhal, where I had crashes before! But alas, only at night. In the day (presumably when there are more actors around), I still got crashes almost as soon as I fast traveled.

 

Next attempt: exporting face textures with all plugins uploaded. I also need to try it with CSE, which apparently corrects some bugs related to facegen.

Link to comment
Share on other sites

I see... so that iNumHWThreads is something like hidden setting huh ?

even after I got three years of modding experience but I still miss some things out it seems XD haha

how many of this hidden settings out there ? (in case there is still more..)

 

hey 1Mac, for fast travel maybe you should try this --> https://www.nexusmods.com/oblivion/mods/48150

it is fast travel alternative

Link to comment
Share on other sites

This is precisely what he claims to have done. He's the main Oblivion Reloaded dev, so I bet he has.

Please refer to my posting history. Been there, done that, years ago. Last I knew the correct answer was either that Alenet hasn't seen the source code, or has seen only portions of it. He lists himself on one site as a TES Developer, it's been a few years so if he's now employed by Bethesda he should have access to it or know someone who does. Not to diss Alenet (don't even know him) but for the record he's been proven incorrect before, e.g. Oblivion's multi-core processing support, which isn't extensive but it's more substantial than he claimed for years.

Edited by TheMastersSon
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...