V-Sync , có thể bạn ko biết ?? - vozForums
vozForums
Go Back   vozForums > Máy tính để bàn > Đồ họa máy tính
Closed Thread
 
Thread Tools
  #1  
Old 09-02-2007, 12:52
amdbarton's Avatar
amdbarton amdbarton is offline
Team "thèm tít"
 
Join Date: 07-2006
Location: khoa "hết thuốc chữa" của "viện tâm thần"...
Posts: 2,893
V-Sync , có thể bạn ko biết ??

Cái này nếu ai biết rồi thì ko bàn , còn ai chưa biết thì xin tham khảo



Tôi ko fải là dân chuyên gia hay hiểu biết gì nhiều , nên chỉ dùng những lời lẽ sao cho pà kon dễ hiểu nhất , còn về những thứ chuyên môn thì tôi mù tịt. Pà kon có thể google để tự đọc

Nói cho dễ nhất , V-sync có nghĩa là "đồng bộ fps trong game với độ làm tươi của màn hình" (Refresh rate)

nói nhỏ : V-Sync = Vertical Synchronization , fps là frame per second trong game !!!



Mỗi màn hình đều có Refresh rate của nó , hay ta còn gọi là độ làm tươi , đc tính theo Hertz. Là số lần màn hình thay đổi trong 1 giây. Nếu Refresh rate của bạn là 60Hz thì trong 1 giây màn hình sẽ thay đổi 60 lần để cho ra hình ảnh (cho dù là ảnh động hay ảnh tĩnh !!!)


Vấn đề nảy sinh khi ta chơi game. Lấy vd màn hình bạn set Refresh rate = 60Hz. Nhưng khi chơi game fps lúc này = 80 , có nghĩa là hơn Refresh rate tới 20 fps. Hay còn gọi là "không đồng bộ"
Lúc này nếu chú ý ta sẽ thấy những hình ảnh bị "rách hay bóng mờ" trong lúc chơi game. Đó là do fps của game quá cao nên màn hình refresh ko kịp , dẫn đến tình trạng khó chịu trên.

ps : nếu chơi game với fps thấp và nhịp độ chậm , tình trạng trên sẽ ko nhận thấy đc bằng mắt thường , nhưng nếu những game tốc độ ta sẽ dễ dàng thấy ngay



Double-buffering (bộ đệm đôi) đc sinh ra để khắc fục tình trạng này. Cơ bản là nó có 2 bộ đệm. Khi màn hình tự refresh thì bộ đệm thứ nhất là frame buffer có chứa năng đưa hình ảnh ra màn hình hiển thị , bộ đệm thứ 2 đc gọi là back buffer sẽ nạp trước hình ảnh sau đó và copy hình ảnh này tới frame buffer
Có nghĩa là cứ mỗi lần màn hình refresh là frame buffer sẽ cho ra hình ảnh , back buffer nạp trước và copy vào frame buffer .....

Tuy nhiên quá trình copy này vẫn tốn thời gian và nếu màn hình refresh ngay trong lúc quá trình copy diễn ra thì hình ảnh sẽ bị "rách"

V-sync có nghĩa là đồng bộ fps của game sao cho chỉ max bằng với refresh rate của màn hình. fps lúc này sẽ ko bao giờ qua đc hơn 60 (với Refresh rate =60Hz). Và tất nhiên sẽ ko gây ra tình trạng xé hình trên nữa.

V-sync sẽ bắt back buffer ko đc copy tới frame buffer cho đến khi màn hình refresh. Có nghĩa là chỉ sau khi 1 hình ảnh đc frame buffer đưa ra hiển thị rồi thì back buffer mới copy tới frame buffer , sẽ tránh đc tình trạng chậm trễ hay ùn tắt trong quá trình copy liên tục.

Với những game có fps cao hơn Refresh rate , điều này là ok.
Lúc này back buffer sẽ luôn có đc hình ảnh , chờ đến khi màn hình refresh và copy hình ảnh này tới frame buffer , sau đó lại tiếp tục lưu hình ảnh và đợi lần refresh tiếp theo.


Trường hợp khác là khi ta set Refresh rate = 75Hz , chơi 1 game và chỉ đạt đc 50fps (thấp hơn 33% Refresh rate của màn hình)
Có nghĩa là mỗi lần màn hình refresh , Vid card chỉ đưa ra đc 2/3 của hình kế tiếp.

Chi tiết hơn là khi màn hình refresh (lần1), hình ảnh thứ nhất (A) đc copy tới frame buffer , 2/3 của hình ảnh thứ 2 (B) đc đưa vào back buffer. Và khi màn hình refresh lần kế đó (lần 2), frame buffer sẽ vẫn đưa ra hình ảnh trước đó (A) vì 1/3 còn lại của hình ảnh thứ 2 (B) đang đc nạp vào back buffer để cùng với 2/3 (của B) đã nạp trước kia hợp thành 1 hình ảnh (B). Và hình ảnh (B) này fải đợi thêm xong hết lần refresh này (lần2) để copy vào frame buffer ......
Khi màn hình refresh lần nữa (lần 3), quá trình lại xảy ra như trên ..... và sau 4 lần màn hình refresh thì chỉ có 2 hình đc hiển thị ra. Và với refresh rate là 75Hz , ta chỉ có thể thấy game đang chạy ở 37.5fps

Vì vậy V-Sync chỉ có tác dụng ở những game cho fps cao hơn refresh rate nhằm ko gây trường hợp xé hình , bóng mờ ....


Tuy nhiên cũng có kĩ thuật Triple-Buffering (bộ đệm 3) để khắc fục V-Sync và Double-Buffering. Nói nôm na dễ hiểu nó tạo thêm 1 cái back buffer ( tổng cộng là 1 frame buffer và 2 back buffer ) giúp cho 1/3 hình ảnh lúc copy sẽ đc nạp vào và đưa ra frame buffer ngay sau đó. Tuy nhiên ko fải game nào cũng hỗ trợ triple-buffering , và nó sẽ làm giảm performance game chút ít cũng như cần Ram nhiều hơn để họat động.




Qua những điều trên thì ta thấy , game có nên bật V-sync hay ko cái đó tùy vào cảm nhận mắt của mỗi người cũng như Refresh rate ta set.
Nên nhớ là khi benchmark luôn tắt V-Sync



updated:
Where to config V-Sync?
-->

Trong ATI Catalyst Control Center :
3D --> All setting --> wait for V-Sync

Còn Nvidia Control Panel thì :
Manage 3D Setting --> Global Setting --> V-Sync

- Sẽ có các option : force always off, force always on, hoặc tùy theo game 3D mình chỉnh trong khi vào game



Thank all for reading.
Source : ......... net
  #2  
Old 09-02-2007, 13:14
bemeoa7's Avatar
bemeoa7 bemeoa7 is offline
mèo già gian ác
 
Join Date: 07-2006
Location: Sài Gòn thân yêu
Posts: 7,614
Re: V-Sync , có thể bạn ko biết ??

vậy bật chức năng ngày chắc sẽ kéo hệ thống chậm đi 1 chút fải ko anh barton ?
  #3  
Old 09-02-2007, 13:19
Mr.Katze's Avatar
Mr.Katze Mr.Katze is offline
Senior Member
 
Join Date: 08-2006
Location: unidentified
Posts: 12,209
Re: V-Sync , có thể bạn ko biết ??

Bài viết rất có giá trị tham khảo ! Bravo !
Nhưng em toàn chiến popcapgames thì không biết có cần thiết phải set cái này không nữa ?
<lâu lâu lâu lắm rồi mới thấy anh tái xuất giang hồ đoá>
  #4  
Old 09-02-2007, 13:20
amdbarton's Avatar
amdbarton amdbarton is offline
Team "thèm tít"
 
Join Date: 07-2006
Location: khoa "hết thuốc chữa" của "viện tâm thần"...
Posts: 2,893
Re: V-Sync , có thể bạn ko biết ??

Quote:
Originally Posted by bemeoa7
vậy bật chức năng ngày chắc sẽ kéo hệ thống chậm đi 1 chút fải ko anh barton ?
nếu mắt mình cảm giác game khi fps trong game cao hơn refresh rate mà ko thấy gì bất thường thì ko cần enable V-Sync. Khi enable nó với game cho fps > refresh rate thì sẽ ko bị vụ hình ảnh bất thường nhưng tất nhiên fps sẽ giảm xuống , max của fps lúc này sẽ = refresh rate mà thôi

Với game có fps thấp hơn refresh rate thì disable V-Sync cho lành
  #5  
Old 09-02-2007, 13:26
amdbarton's Avatar
amdbarton amdbarton is offline
Team "thèm tít"
 
Join Date: 07-2006
Location: khoa "hết thuốc chữa" của "viện tâm thần"...
Posts: 2,893
Re: V-Sync , có thể bạn ko biết ??

mới edit lại vụ back buffer copy hình vào frame buffer

còn đây là hình ảnh khi bị "rách hình" để pà kon nhận biết






@ Katze : danke em :-) Game Popcap muốn set sao cũng đc
  #6  
Old 09-02-2007, 13:32
ndtrung25's Avatar
ndtrung25 ndtrung25 is offline
Senior Member
 
Join Date: 07-2006
Posts: 1,520
Re: V-Sync , có thể bạn ko biết ??

hì hì, đó pà con bít hình đó là trong game gì?
  #7  
Old 09-02-2007, 13:35
duycom's Avatar
duycom duycom is offline
Senior Member
 
Join Date: 07-2006
Posts: 1,210
Re: V-Sync , có thể bạn ko biết ??

Nhưng mà hình như chỉ có 1 số game bật V-Sync lên thì mới có tác dụng thì phải. Vd như PES6 chẳng hạn, khi không bật V-sync thì sẽ có 1 đường sọc ngang chạy từ dưới lên trên.
  #8  
Old 09-02-2007, 13:51
bemeoa7's Avatar
bemeoa7 bemeoa7 is offline
mèo già gian ác
 
Join Date: 07-2006
Location: Sài Gòn thân yêu
Posts: 7,614
Re: V-Sync , có thể bạn ko biết ??

hình như trong CSS cũng có cái này,để bật thử lên xem thế nào
  #9  
Old 09-02-2007, 14:10
Avenger's Avatar
Avenger Avenger is offline
Senior Member
 
Join Date: 10-2006
Location: Đất Phương Nam
Posts: 563
Re: V-Sync , có thể bạn ko biết ??

Bài viết rất hay và thiết thực Thanks anh Amdbarton nhìu nhìu, và hy vọng sắp tới sẽ có nhìu bài viết như thế này nữa để mọi người cùng tham khảo
Vote cho 5 sao!!!
  #10  
Old 09-02-2007, 14:11
lizard's Avatar
lizard lizard is offline
Senior Member
 
Join Date: 02-2007
Location: Planet.Earth
Posts: 2,577
Re: V-Sync , có thể bạn ko biết ??

cám ơn bro giờ mới biết rõ vụ này.trước giờ chỉ biết tắt cái này FPS tăng dữ lắm
Closed Thread

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT +7. The time now is 13:30.
Steam Powered by vBulletin® 0.1 pre-alpha
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.