• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Triple buffering in Counterstrike: Source

SonicIce

Diamond Member
I tried to enable it though the nvidia driver but I still got that framerate halving thing when vsync is on. Do you need to enable it in the game somehow?
 
Okay, I've done some research on this too and am still trying to come up with a solution.

Basically, drivers can only force triple buffering in OpenGL mode, NOT in Direct3D, which is what CS:S uses. The game also doesn't have a setting for triple buffering built in, so the only way to enable triple buffering is through an external program:

http://www.nonatainment.de/web/DirectXTweaker/Download/tabid/58/Default.aspx

So, download DirectX Tweaker and extract and run it. Then, setup a profile for the Steam.exe file, and go down to the plugins and activate "Present Charger" and set the "Count" to 2. That should do it, and just make sure vsync is enabled in-game and in your drivers and then run the game through the DirectX Tweaker program.

I just tried it and it works! My framerate stays steady at 60fps w/ no tearing, and it drops to 45-50fps, meaning that triple buffering is working.
 
Originally posted by: Trevelyan
Okay, I've done some research on this too and am still trying to come up with a solution.

Basically, drivers can only force triple buffering in OpenGL mode, NOT in Direct3D, which is what CS:S uses. The game also doesn't have a setting for triple buffering built in, so the only way to enable triple buffering is through an external program:

http://www.nonatainment.de/web/DirectXTweaker/Download/tabid/58/Default.aspx

So, download DirectX Tweaker and extract and run it. Then, setup a profile for the Steam.exe file, and go down to the plugins and activate "Present Charger" and set the "Count" to 2. That should do it, and just make sure vsync is enabled in-game and in your drivers and then run the game through the DirectX Tweaker program.

I just tried it and it works! My framerate stays steady at 60fps w/ no tearing, and it drops to 45-50fps, meaning that triple buffering is working.

you obviously put some work into your reply! thanks i'll try it
 
nvidia's drivers also allow triple buffering to work
although im not so sure they had been working for me, so maybe strike that 😉
 
Originally posted by: destrekor
nvidia's drivers also allow triple buffering to work
although im not so sure they had been working for me, so maybe strike that 😉

did u read my original post?
 
Nvidia's Triple Buffering works for both API's. However, if you lack the video memory to enable Triple Buffering(which you most likely due with a 128MB and CS:S), then it will disable itself instead of giving you stuttering performance. By lowering your settings, it should enable itself.

I'll try it on my 7800GT for you.
 
Nvidia's triple buffering option works great for OpenGL games, but I have never seen it change anything in D3D. Also, I'm not sure using DirectXTweaker would be a good idea on VAC servers, it might look like a hack to the anti-cheat software.
 
Doesn't seem like it works, but the only thing that could really bring it to it's knees was 1152x862 with SSTRA 8xAA 16xAF. There was one part where it gave me half the framerate that I was using.

Triple Buffering never really worked for me in D3D games like FEAR as well. I'v never used it on OPenGL game either though. When I contacted the FEAR team, I think it was them, they said that I needed to lower my resolution so that I could get Triple Buffering to work. THey cited the reason I spat in my last post.
 
I've never bothered to use Vsync...I have never had tearing in my games...so I don't know...is there any reason you are using it?
 
Originally posted by: VIAN
Doesn't seem like it works, but the only thing that could really bring it to it's knees was 1152x862 with SSTRA 8xAA 16xAF. There was one part where it gave me half the framerate that I was using.

Triple Buffering never really worked for me in D3D games like FEAR as well. I'v never used it on OPenGL game either though. When I contacted the FEAR team, I think it was them, they said that I needed to lower my resolution so that I could get Triple Buffering to work. THey cited the reason I spat in my last post.
I think that is just tech support being stupid and pushing the problem off on whatever they can come up with. The obvious solution is to patch the game to make triple buffering a toggleable option like it is in Unreal Engine games and such.
 
Originally posted by: RampantAndroid
I've never bothered to use Vsync...I have never had tearing in my games...so I don't know...is there any reason you are using it?
Tearing always happens without vsync, but only some of us notice it. But yeah, stopping tearing is pretty much all vsync is for, if tearing doesn't bother you then you are best leaving it off.
 
Fraps records a full frame at a time, so it tearing can't be recorded onto a video like that. Besides, even if was captured on a video it wouldn't look any different than it does in game so if you don't notice it in game you surely wouldn't notice it in the video either.
 
well...describe it then please? I know what tearing is supposed to be...but for the life of me I cannot remember ever seeing it...(when the framerate goes above the refresh rate, right?)

Thanks.
 
It happens any time the framerate isn't syncronized with the vertical refresh rate. Above, below, or right on framerate; all the same you will get tearing if the frames don't swap at the exact same moment as a new refresh starts.
 
Originally posted by: TheSnowman
It happens any time the framerate isn't syncronized with the vertical refresh rate. Above, below, or right on framerate; all the same you will get tearing if the frames don't swap at the exact same moment as a new refresh starts.

you're right
 
Originally posted by: VIAN
Nvidia's Triple Buffering works for both API's. However, if you lack the video memory to enable Triple Buffering(which you most likely due with a 128MB and CS:S), then it will disable itself instead of giving you stuttering performance. By lowering your settings, it should enable itself.

I'll try it on my 7800GT for you.

it will enable itself? i will test this

edit: your right it doesn't work.
it would be completely stupid though because if you lowered the settings to get triple buffering to work then you would be getting high framerates anyway and you wouldn't even need it anymore 😕😕
 
Trevelyan's tip indeed worked for me, but performance was still a tad lower than without vsync. but tearing was eleminated and the framerate was not a multiple or my refresh rate.
 
Originally posted by: SonicIce
Trevelyan's tip indeed worked for me, but performance was still a tad lower than without vsync. but tearing was eleminated and the framerate was not a multiple or my refresh rate.

Great! Glad you got it working.

Of course, game developers really need to get into the habit of having not only Vsync options, but triple buffering options as well. The two go hand in hand...
 
Back
Top