Jump to content
Sign in to follow this  
rory_pamphilon

Why does weapon fire rate vary with FPS?

Recommended Posts

Hi,

A long term niggle in the Arma series that I have often wondered about. Sometimes when the FPS in game dips below a certain level the fire rate of your weapon (on full auto) seems to dip also. And sometimes conversly with an increase in FPS you get an increase in weapon fire rate.

Why are these two things linked?

Cheers

Share this post


Link to post
Share on other sites

I noticed the same thing.

Maybe the same among of bullets are fired but it is the sound that gets buggy?

I never did any true test.

Share this post


Link to post
Share on other sites

Yeah, it's true. The reason is simple, each shot needs at least a frame to draw, so when the fps lower than the rate of fire, the following shots has to be waiting for the following frames.

Most rifle's fire rates is between 800~900rounds/min, equals 13~15rounds/seconds, so if your fps<13, then you will feel the fire rates dip.

If you fire a minigun with a fire rate at 2000rounds/min, you will feel the dip even if your FPS was 30.

Share this post


Link to post
Share on other sites

Interesting, so how do other games get around this? I have never noticed this in other games even though I've had low fps in them.

Is this on BIS list of things to fix or is it not considered a bug?

Share this post


Link to post
Share on other sites

Game programing 101 from a ba of software engineering: Game frame rate should never be linked to vital components such as fire rate.

In other words, it's poor coding on BI's behalf since OFP and haven't bothered to fix it since.

Share this post


Link to post
Share on other sites

I think its a matter of programming solutions. Call of Duty's engine has the same problem (fire rate limiting and oversampling if triggerpulls are higher than framerate) but you will never notice it generally because it never dips below ~50 on todays gaming rigs.

Are there any other games where you could test this out? I doubt Arma is the only one here. It only becomes noticeable because it is such a performance hog.

Share this post


Link to post
Share on other sites
Game programing 101 from a ba of software engineering: Game frame rate should never be linked to vital components such as fire rate.

In other words, it's poor coding on BI's behalf since OFP and haven't bothered to fix it since.

While techically true,I think that's a bit simplistic in it's implication. Video frame rate and game frame rate are two separate things ,entirely, and while video frame rate correlates game FPS, most of the time, the game frame rate is faster than the video FPS.So when you've got low video FPS, you've got actual issues to sort out.Anyway, to the issue.

It's less a case ROF being directly tied to the FPS, more that under high-resource usage the polling rate in the main game tick loop slows and things that are strongly time-sensitive will become less reliable. This leads to the ROF slowing and warping(amongst other things), and while it's not ideal, it's the way more or less all shooters to my knowledge work(can confirm this effect all the way back as far as Duke3D, Goldeneye, all the Unreal Tournaments, Rainbow Six, and as recently as ALL of the Call of Duties and Battlefields). There are ways to compensate, but the returns on them aren't generally massive improvements by themselves and they're tougher to sync in a multiplayer environment( grouping shots that should have happened in a burst results in things like BF4's initial woes with "kill-trading" and other weird nonsense, latency compensation at the extreme leads to rubber banding weapon fire, desyncing it completely leads to.. WELL bad things). Keep in mind, performance is already down and any solution you implement is going impact performance regardless. So yeah, I'm fine with the ROF drop, it's a good signifier of other issues the game is probably dealing with, and it's only really really bad when it gets pronounced enough that you can't function (5-15fps range), and like I said, at that FPS, you have bigger things to be worrying about.

The solution is to mitigate the overall performance drop in the first place; work on improving the software if you're a dev, work on optimising your hardware if you're a player.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×