Triple Buffering for Direct3D?

  • Thread starter Thread starter The Berzerker
  • Start date Start date
T

The Berzerker

Is there any kind of triple buffering for Direct3D? When enabled (for
OpenGL) I can run doom 3 at exactly the same framerate with v-sync on, as I
could with triple buffering disabled, and v-sync off, before. So what I'm
saying is that v-sync had no effect on my framerate.

Is there something like this for Direct3D? I'd love to have v-sync on in my
Direct3D games.

Thanks...
 
The said:
Is there any kind of triple buffering for Direct3D? When enabled (for
OpenGL) I can run doom 3 at exactly the same framerate with v-sync
on, as I could with triple buffering disabled, and v-sync off,
before. So what I'm saying is that v-sync had no effect on my
framerate.

Is there something like this for Direct3D? I'd love to have v-sync on
in my Direct3D games.

Thanks...

vsync basicly caps your framerate your to vertical refresh rate, so if you
run your monitor at 85hz you can't get more than 85fps, this good, becuase
you don't get tearing, you get fools saying they can get 250fps in quake,
thing is, they don't even see half of those frames, so imo you only need to
turn v-sync off for benchmarking, otherwise leave it on

tripple buffering has bug all to do with vsync, maybe you are getting
confused ??
it basicly makes the output smoother (i don't know for sure though, you
might wananread up instead of simply guessing like me)
 
The Berzerker wrote:



vsync basicly caps your framerate your to vertical refresh rate, so if you
run your monitor at 85hz you can't get more than 85fps, this good, becuase
you don't get tearing, you get fools saying they can get 250fps in quake,
thing is, they don't even see half of those frames, so imo you only need to
turn v-sync off for benchmarking, otherwise leave it on

tripple buffering has bug all to do with vsync, maybe you are getting
confused ??
it basicly makes the output smoother (i don't know for sure though, you
might wananread up instead of simply guessing like me)
triple buffering has everything to do with vsync. If you have VSync
enabled and your monitor is at 85 Hz and no triple buffering and your
videocard is only capable of outputting 84 fps or whatever is less than
85 fps, then all you get is 42.5 fps.
With triple buffering enabled your card can ready those extra frames in
a second frame buffer eliminating the halving of performance that happens.
If you have an LCD monitor with 60 Hz refresh rate and are getting 55
fps with VSync off, you'd have to agree that it might not be worth it to
turn VSync on without triple buffering and knock yourself down to 30 fps.

To the original poster's question, triple buffering can't be forced in
Direct3D, it has to be an option in the game's settings.

What game do you want to turn triple buffering on in?
 
LymanAlpha said:
triple buffering has everything to do with vsync. If you have VSync
enabled and your monitor is at 85 Hz and no triple buffering and your
videocard is only capable of outputting 84 fps or whatever is less than
85 fps, then all you get is 42.5 fps.
With triple buffering enabled your card can ready those extra frames in
a second frame buffer eliminating the halving of performance that happens.
If you have an LCD monitor with 60 Hz refresh rate and are getting 55
fps with VSync off, you'd have to agree that it might not be worth it to
turn VSync on without triple buffering and knock yourself down to 30 fps.

To the original poster's question, triple buffering can't be forced in
Direct3D, it has to be an option in the game's settings.

What game do you want to turn triple buffering on in?

Well, nothing really specific. Just figured if I could turn it on with no
loss of performance, where would the harm be? (I know it uses slightly more
memory, but whatever)

Although as of late I am playing Half-life 2 and Painkiller...... both of
which are Direct3D, and both suffer very little from tearing, however.....
if it could be done, I'd do it.
 
Well, nothing really specific. Just figured if I could turn it on with no
loss of performance, where would the harm be? (I know it uses slightly more
memory, but whatever)

Although as of late I am playing Half-life 2 and Painkiller...... both of
which are Direct3D, and both suffer very little from tearing, however.....
if it could be done, I'd do it.

Seems to me that triple buffering is working with HL2. I do have a DVI
LCD that's locked at 60Hz. I have VSync on and I don't see just 30 and
60 fps with cl_showfps 1. I see a range high 40s low 50s.
I'm using the 4.12 beta drivers.
Don't have Painkiller. And it seems like triple buffering doesn't work
with CS:S, I'm not sure.
 
LymanAlpha said:
Seems to me that triple buffering is working with HL2. I do have a DVI
LCD that's locked at 60Hz. I have VSync on and I don't see just 30 and
60 fps with cl_showfps 1. I see a range high 40s low 50s.
I'm using the 4.12 beta drivers.
Don't have Painkiller. And it seems like triple buffering doesn't work
with CS:S, I'm not sure.

"Seems to me that triple buffering is working with HL2."

I'm confused, I thought Half-life 2 was direct3d, right? So why are you
talking about triple buffering, when you just denied that it's available
with direct3d?

I'm still using the omega drivers that are based on the 4.10 betas. I'm
hoping the 4.11/4.12 will be used for the next omega release. Hopefully
whatever he does, it'll be released soon.
 
"Seems to me that triple buffering is working with HL2."

I'm confused, I thought Half-life 2 was direct3d, right? So why are you
talking about triple buffering, when you just denied that it's available
with direct3d?

I'm still using the omega drivers that are based on the 4.10 betas. I'm
hoping the 4.11/4.12 will be used for the next omega release. Hopefully
whatever he does, it'll be released soon.
You can't turn on triple buffering in the control panel or CCC with
Direct3D, however the game engine designers can enable triple buffering
in their code and include it as an option in the game settings.
For example, with the Unreal Engine (UT2003, UT2004) you can enable
triple buffering by going into the System/UT2004.ini and changing the
setting UseTripleBuffering=True. Another D3D engine, the Lithtech
engine (TRON 2.0, No One Lives Forever), right there in the set-up
screen there's a check box to enable or disable triple buffering.
There very well may be a CVAR in the HL2 config.cfg that turns it on or
off, or it could be just on or off with no way for the user to change it.
In Far Cry you have to create a file called systemoverride.cfg and put:
d3d9_TripleBuffering = "1"
in it to enable triple buffering.

Many 3D games have the setting somewhere but most just opt to leave it
disabled and have VSync off by default.
You may have noticed that HL2 recommended default settings have VSync
disabled. It just doesn't work well, vsync off, with my LCD, though I
used to never notice the whole tearing issue when I had a CRT monitor.
 
Geoff said:
vsync basicly caps your framerate your to vertical refresh rate, so if you
run your monitor at 85hz you can't get more than 85fps,

Then howcome games that don't even run as smoothly as
60fps run even slower after I enable vsync? To me it seems
that in any case vsync drops fps.
 
Is this an "instanenous" framerate when you stand stationary in one spot, or
an average from a timedemo? In a timedemo, having Vsync enabled will
"attenuate" high framerate spikes so you end up with a lower average fps.
 
First of One said:
Is this an "instanenous" framerate when you stand stationary in one spot,
or
an average from a timedemo? In a timedemo, having Vsync enabled will
"attenuate" high framerate spikes so you end up with a lower average fps.

At least with old and slow video card like GF2 MX
keeping vsync enabled percepibly dropped performance.
It was like fillrate suffered from vsync and an irritating
"rubber band"-effect appeared to mouse movement.
 
Back
Top