Far Cry 3 Stutter

adrift02

Limp Gawd
Joined
Jan 10, 2006
Messages
467
Curious if anyone else is getting some buggy stutter in Far Cry 3 DX11. I'm talking about 60 fps all low, yet still if I stand in Earnhardt's house and spin (for example), certain light sources (or just "spots") will cause a small stutter. Running around will do it too but this example is repeatable. In DX9 this doesn't seem to happen.

Latest 12.11 beta 8 drivers btw.
 
How are you guys playing this? Is there some type of demo or something? I own the game... why aren't I playing it?

I had stutter in Skyrim with a 7970 with high framerates. If you play Black Mesa or Ep.2 you'll have stutter around fire effects.
 
Could be a driver issue but try lowering the GPU buffered frames to 1 or 2. Increasing it more than that causes massive stuttering on my rig. If you are having vsync issues use D3Doverrrider to force vsync and TB together.
 
Could be a driver issue but try lowering the GPU buffered frames to 1 or 2. Increasing it more than that causes massive stuttering on my rig. If you are having vsync issues use D3Doverrrider to force vsync and TB together.


where do I adjust the "buffered frames"?
 
I think he means triple buffering, which goes along with vsync.
 
where do I adjust the "buffered frames"?

Yeah they give you the option in Video. You can adjust it without vsync turned on but that's the only situation where I think it's used (it basically renders additional frames ahead of time to keep your fps from tanking if you drop under 60).
 
actually, its to stop screen tearing with vsync.

When you activate vsync, and you manage to maintain 60fps, the renderer is too fast, and the 2 exsisting buffers become outdated, so you get screen tearing.

Triple buffering adds a third buffer, so when the image goes to be displayed it takes the most recently rendered image of the 3 and displays it, discarding the older ones.

Its pointless if you cant render at 60fps, as the buffer will never be outdated, and vsync will introduce input lag if left enabled. This is why Dynamic vsync was invented. That way when you can render 60fos, it enables. When you cant, it disables.
 
There is an option in-game to set the maximum frames the GPU is allowed to buffer. Set that to 1 or 2. I had stuttering due to this as I had set it to 5 but now its fine for me. Plus Vsync+Triple Buffering is useless if you cant get frame rates that exceed your monitor`s refresh rate.
 
Try using the frame limiter within MSI's Afterburner OSD.
I have several games that stutter without it, but it works like a charm...even better than games that have their own internal framerate limiters or even Nvidia Inspector.
Don't worry - any card can use it, not just MSI cards.
 
Radeon pro is better.

You can force vsync/triple buffering/Dynamic vsync/Dynamic frame rate/limiter
 
So i tried the new drivers (12.11 beta 11) and they improved the dx11 stuttering. It's still there but after setting the frame buffer to 3 I'd say it's running pretty good. Subjectively, I think dx9 is still smoother (in dx11 there's still bits of stutter here and there that the frame buffer didnt iron out), but it's enjoyable.

Also, performance is better. I'm running about 45-60 fps (75% 50-60) with no AA, almost everything maxed. Post fx is medium because it kills fps with little improvement and water is high to remove the odd shimmer at far distances. Will look into injecting some FXAA but otherwise I think I'm done tweaking.
 
did you install the cap?

there is a single gpu AA performance profile...
 
Yeah tried with/without the cap. It's playable/enjoyable though not as stutter-free as dx9.
 
I'm struggling to get higher than 60 with max quality no MSAA 1920x1200 with 12.11 B11 and CAP2. 7970 GHz clocks. Anyone else getting higher fps.

The stuttering is there for me in DX11 but it's very minor.
 
I don't think anyone is hitting that at max quality on a single card. Post FX just destroys fps and the IQ boost doesn't justify it IMO. I suggest dropping that to medium with everything maxed and you should be hitting 60 most times considering my 6970 does well at those settings. You can always force FXAA in the ini to get some of the IQ back.
 
i lowered my gpu buffer from 3 to 1, i set to 3 initially thinking it was good
but later on i noticed alot of stuttering.

stutter consistantly in one spot, until i changed it, and the change was immediate and noticable.
i'll have to test more though. 560ti non-oc/beta .64 drivers (non amd i know, but i think its an issue across all cards)
 
Umm... You're wrong. :p

vSync stops screen tearing.

Triple buffering was created so the video card doesn't sit idle while it's waiting for the screen refresh to catch up.

It literally buffers 3 frames ahead while it waits for the screen to catch up. This is the reason why input lag is sometimes experienced when triple buffering is enabled.

actually, its to stop screen tearing with vsync.

When you activate vsync, and you manage to maintain 60fps, the renderer is too fast, and the 2 exsisting buffers become outdated, so you get screen tearing.

Triple buffering adds a third buffer, so when the image goes to be displayed it takes the most recently rendered image of the 3 and displays it, discarding the older ones.

Its pointless if you cant render at 60fps, as the buffer will never be outdated, and vsync will introduce input lag if left enabled. This is why Dynamic vsync was invented. That way when you can render 60fos, it enables. When you cant, it disables.
 
sorry, i misspoke i was describing TB, not vsync.

Vsync is indeed to stop screen tearing.

Everything else i said is correct, TB was instituted to reduce input lag when using vsync. It has the added benefit fo smoothing out performance in certain cases, while increasing GPU usage.

for a more technical description, read here:

http://www.anandtech.com/show/2794
 
Last edited:
That article is wrong.

TB often increases input lag.

TB was instituted to increase the framerate when vSync is enabled.


sorry, i mispoke.

Vsync is indeed to stop screen tearing.

Everything else i said is correct, TB was instituted to reduce input lag when using vsync. It has the added benefit fo smoothing out performance in certain cases, while increasing GPU usage.

for a more technical description, read here:

http://www.anandtech.com/show/2794
 
you cant increase framerate with vsync, maximum framerate is locked at your refresh (hense vertical sync). Usually 60fps.

That article is no way wrong,

I suggest you read it more thoughly.

Vsync introduces the lag by having outdated frames in the buffer. When vblank goes to pull the next frame from the buffer for display, too much time has passed between when you hit something on the keyboard, and when it shows up on your monitor. Thats your lag.

Adding the 3rd buffer gives the vblank engine 2 frames to choose from, reducing the input lag by choosing the most recently rendered and discarding the older frame.

What you are describing is "Flip Que" or "Render Ahead" (even the stupid games devs call flip que TB sometimes, as it technically uses 3 buffers). this introduces MASSIVE lag (but reduced micro-stutter), as the frames are even more outdated than double buffering. If TB is casuing big lag, reduce the flip que, and it will go away. Just bear in mind you will trade off less stuttering for the reduced lag.

With TB, the GPU is never idle because its always updating one of the 2 back buffers. If the vblank isnt ready for the next frame, the renderer just overwrites the next oldest frame in one of the two back buffers effectively severing the interdependence of the renderer and the display engine.

where as with double buffering (or flip que once its caught up to vblank) the gpu is always waiting to update the next frame until vblank releases the front buffer and begins to display next frame.
 
Last edited:
I'm telling you man, that article is wrong. ;)

Perhaps you should look into some other sources.



you cant increase framerate with vsync, maximum framerate is locked at your refresh (hense vertical sync). Usually 60fps.

That article is no way wrong,

I suggest you read it more thoughly.

Vsunc introduces the lag by having outdated frames in the 2nd buffer.

Adding the 3rd buffer gives the vblank engine a newer frame to choose from, reducing the input lag.
 
and im telling you its not,

you are talking about flip que, NOT TB.

i have updated my prior post to be clearer.

google it. and flip queue. That was just the first link i came accross.

ive sited a valid professional source, i have plenty more.

wheres yours? Ad Verecundiam is not valid logic.

im starting to smell a troll....
 
Last edited:
Back
Top