冒险解谜游戏中文网 ChinaAVG

标题: 【汉化相关】显卡三级缓冲开启工具 [打印本页]

作者: shane007    时间: 2009-4-4 13:49
标题: 【汉化相关】显卡三级缓冲开启工具
大家有否发觉玩游戏时开启了同步刷新(v-sync)后帧速率就下降了?目前LCD的主流刷新率为60Hz,按理这样的刷新率玩游戏应该足够了,遗憾的是一旦刷新率稍稍下降帧速率就立刻降到30fps。先不要咒骂同步刷新,这不只是它的错,根源应该是显卡的双缓冲区设计和开启同步刷新同时造成的。
( s5 v: R; Y, T* {  " ~( J& q1 x  F, p$ ]. _) s  ?) g
    一般的显卡都带有两个缓冲区,当前显示的图像来自于第一个缓冲区,而第二个缓冲区则准备下一帧画面的输出。当启用同步刷新后,当前画面需要等到下一个垂直空白周期(对应60Hz就是1/60一秒的时间)出现才能转换到下一帧画面,这样才能实现与显示器的同步刷新。如果你的显卡支持超过60fps的帧速率,保持同步当然不成问题,否则就糟糕了。在1/60一秒的时间内,如果第二个缓冲区还没有准备好第二帧画面,那么就需要等多一个1/60一秒才能够转换,所以帧速率就下降到30fps,这种情况下,画面看起来将会十分拖沓。5 K  ^( y" u* w: g
  ! _5 |% U; z  m& C4 i9 t7 a
    利用三个缓冲区就可以解决这一问题,目前ATI和NVIDIA的显卡驱动都支持开启三个缓冲区实现同步刷新,但这种功能仅对OpenGL游戏有用,对于更为普遍的D3D游戏则无能为力。1 X1 W' \7 C# l" m  e1 h, ]% P
  : M' V8 A/ A) D" {" |, ], k5 c
    不过,利用DirectX Tweaker这一软件就可以通过DirectX API让D3D游戏也支持三个缓冲区,该软件拥有良好的界面,十分容易使用,不过使用前可能要先安装.NET框架。7 Z3 ]2 a! c1 C! ]
[attach]12666[/attach]
. H. [$ A' ]) t2 d4 d( v. W/ N; |; N; X
用户界面 / q: U% {7 x( @* E

7 J. m3 D; J  k9 z2 _, O  D7 S7 a$ d. J( L
    第一步先选择要应用的游戏(上图为F.E.A.R.),输入路径,并勾选“Active”,然后点击"Modules to load"就会看见下面的对话框:* P* k5 ~: n4 B3 i! e. O% l3 F9 ?( O
  [attach]12667[/attach]
! r$ M5 }% R2 U5 f
7 B" A( _- r  e3 t
* N# l# U; D) d! |    勾选"Present Changer",在 "Count"选项里键入“2”,然后返回刚才的“Project(Activ:F.E.A.R)”,点击"Start"就完成了。/ o/ Q  H1 {9 ]% l
  8 D9 x7 g& K& j; ], [% L$ [
    下面是应用该软件前后帧速率的对比:0 W$ m: `' u; P; x4 A7 d4 v2 n

5 \0 f8 |0 M3 R" R8 x应用前
  `; `$ d% ~& E* _( B [attach]12668[/attach] ' Q# U+ N2 W2 l& I: x
& @( B8 W( n' C
" O* G3 _# Z" o) z9 ?
应用后 ' Z, G; l9 Z/ l& V2 s0 e/ F. v
[attach]12669[/attach]
$ i4 X9 V) @4 w; X' P2 \4 J' t4 b
! Q, B$ f( R" f8 f    其它设置为:
% r( W; Q; b8 i. U* m4 H. T  
+ A4 q7 S9 M: g; @' N3 D9 |    分辨率: 1280x1024: C: m' f% _5 d7 p2 o4 ~- O
  
  |; ]3 N7 s/ O1 c9 J    显卡设置: All max, SoftShadow disabled7 Y  O, P  d3 F' z
  
; Y/ j8 G$ A7 R" Q: V0 H, k    AA/AF: 0xAA / 8xAF6 K, Y* K% o% z  ~) w8 U1 ?
  6 m5 h& i& Q/ R5 S9 j1 I
    上两图中“Maximum”一项没有发生变化,这是由于启用同步刷新的结果(最大也只能跟显示器刷新率一致),但另外两项帧速率则大大提高了,游戏变得更加顺畅。6 [( }- x( z" U% ?
  
% R2 K$ A3 ?, |. k' g    注意事项:
* [9 D1 {8 M6 E( x) F, Y  1 ~1 N" b3 H6 C  ]
    三个缓冲区似乎可以带来更流畅的游戏画面,但这是有代价的,比两个缓冲区需要50%的额外缓冲空间。譬如,在1600x1200的分辨率下,每帧画面需要7.32Mb的空间存储,双缓冲区需要14.64Mb的显存,三缓冲区则需要21.96Mb,对于目前的显卡来说只是小菜一碟。但一旦开启4x FSAA后,则需要多达87.84MB的显存,超过一块256Mb的显卡的1/3显存空间,如果游戏需要200Mb的空间存储条纹、光暗、冲击等细节,开启三个缓冲区后游戏玩起来必定经常滞胀。如果你发现玩游戏时系统需要频繁地访问硬盘,这可能就是开启三个缓冲区的负面后果了。
% R" x: D3 \9 [) {$ _5 `$ R% j  
' O9 F- j. L5 I, r" f4 j' b    总结:如果你实在不能忍受同步刷新后帧速率的下降所带来的画面断裂,DirectX Tweaker是一个不错的选择。
ftp://majorgeeks.mirror.internod ... tools/dxtweaker.zip[free][/free]
作者: afish1984    时间: 2009-4-4 14:10
自打会玩CS开始就没开过垂直同步。。。




欢迎光临 冒险解谜游戏中文网 ChinaAVG (https://chinaavg.com/) Powered by Discuz! X3.2