2012-09-13 40 views
1

我希望藉助我的監視器屏幕依次如何VSYNC WINAPI圖紙

0 1 2 3 4 5 6 7幀號...

每一個物理幀

一個號碼(每秒100次 在100Hz刷新率監視器上)是否有可能根據 winapi/gdi?怎麼做?

+1

每秒100次 - 這是不可能看到的。無論如何,vsync解決方案只存在於DirectX和OpenGL中。也許在Direct2D中 - 我不確定。 –

回答

2

GDI和GDI +都不允許您訪問vsync信號。

不推薦使用的DirectDraw API有一種等待vsync的方法。較新的DirectX API基本上是爲你做的,當你調用適當的Present方法時(雖然我相信有的選項,而不是等待vsync)。

+0

你能否解釋一下「現在的方法」 - 我不明白。如何做一件事情,我要求:第一個監視器框架上的「1」,第二個監視器上的「2」等等......?在GDI下我使用blitting調用,但是我的prog有時會產生1000fps,而其中的900會浪費:/ –

+0

無論如何,超過〜50fps的任何東西都會浪費掉,因爲人類看不到它。 – Deanna

+3

@迪安娜:這不是很清楚。請參閱http://www.100fps.com/how_many_frames_can_humans_see.htm。他們指出可能不適合人類消費。也許這是爲了製作一些時間顯示,可以用高速攝像機拍攝。 –