Arqade is a question and answer site for passionate videogamers on all platforms. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

So I have a pretty good PC. I'm getting a smooth 60 FPS in most places, at highest settings, and I have the FPS setting in Options set to cap at 60.

However, the game is frequently setting the FPS cap to 30 (as verified by my FRAPS readout in the corner of my screen). It's not so much that I'm entering an area my computer can't handle (though that may provide some input for the problem), but that the game is simply taking my framecap from 60, down to 30. Sometimes it goes back up. It seems to be largely irregular.

I don't have any resource-intensive programs running in the background. What's going on here?

EDIT: Setting all of my video settings down to Low (I typically run at highest) has no effect. I still get frequent slowdowns to a smooth 30 FPS.

share|improve this question
Check Physx settings. Also, cutscenes are at 30 fps – NickSuperb Sep 20 '12 at 5:55
Just so it is said, you're not recording with FRAPS at those points with it set at 30 FPS right? – Jeff Mercado Sep 20 '12 at 6:43
@Jeff: Hah, no. – Christopher Berman Sep 20 '12 at 14:15
this also sounds like vsync is enabled. Very basically, with vsync, if the frame rate drops below the refresh rate (often 60hz), it will drop to 1/2 the current refresh – horatio Sep 20 '12 at 21:29
@horatio: Interesting. I didn't know that was how that worked. Submit it as an answer and I'll upvote it. – Christopher Berman Sep 20 '12 at 21:41
up vote 3 down vote accepted

While it certainly could be an enforced cap by design (dynamic shadows are "expensive"), this sounds like it could be vsync as well.

Basically (and inaccurately), there is a frame which you see, and a frame which is drawn on. When the drawn one is complete, the contents are passed to the screen for you to see while a new frame is drawn.

In the "olden" days, video was drawn line by line at the upper corner and moving to the lower corner and then there was a delay when the "cursor" reset to the upper corner. The reset happens during a "wait state" (aka swap interval, vertical sync command etc) and the frame would be swapped during this very brief window.

vsync ON means wait for this to swap frames. You get FPS capped at the refresh rate of the monitor, a very stable picture, but fast movement feels choppy.

vsync OFF means don't wait. You get FPS capped at the computer's ability to render it, but you get frames being swapped out while the image is partially rendered (aka "tearing"), but fast movement feels smoother.

With vsync on, if you can't meet or exceed the refresh rate, then the hardware has to pause and wait for the next cycle. This means you wait 2 frames-worth of time to swap. In games, this tends to happen in extended bursts because large amounts of staffage, explosions, etc. taxes hardware. The result is the FPS appears to drop from locked 60 to locked 30.

Plenty of psuedo-technical info here, but that's the gist of it.

share|improve this answer
Accepted for identifying the underlying cause of the issue – Christopher Berman Oct 1 '12 at 21:57

Documents/My Games/Borderlands 2/WillowGame/Config

Open willowengine.ini in notepad and search for DynamicShadows under [SystemSettings]. Change it to false will give you your 60 fps back. Had the same with the annoying drops to 30 but this pretty much eliminated it. Smooth as butter.

share|improve this answer
Weirdly enough, that solved it. Thanks! – Christopher Berman Sep 20 '12 at 15:45

protected by Community Oct 7 '12 at 3:38

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.