我用VC编辑了一个小游戏,但是屏幕总是闪烁。

双缓冲意味着在后台构建两个位图。其中一个作为前台缓冲,当屏幕需要重绘时,将缓冲的内容直接复制到屏幕上。另一个作为背景缓冲区,用来绘制游戏需要显示的内容。后台缓冲区绘制完成后,两个缓冲区互换,前台缓冲区变成后台缓冲区。此时,屏幕被强制重绘,新的前台缓冲区被更新到屏幕。

这样可以消除闪烁,因为不会清屏,新内容总是直接覆盖。

但在窗口模式下写撕是必然的,但这里有可能跑题。