c++EasyX双缓冲消除闪屏

目录

双缓冲消除闪屏

        用法:

        原理:

        细节:


双缓冲消除闪屏

学了easyx图形库的猿们都知道,我们可以在easyx图形库上面画出连续运动的图形        ,或者通过贴图的方式把每一帧图片连起来达到动态效果,但是我们每次贴完图片或者画完一些图形的时候要进行清屏,然后就会出现闪屏现象,这让我们非常难受,那怎么去消除这种现象呢?

----------双缓冲

用法:

#include <graphics.h>
int main(){
	initgraph(640, 640);
	while(1) {
		BeginBatchDraw();
		cleardevice();
		circle(114, 514, 191);
		EndBatchDraw();
	}
	closegraph();
	return 0;
}

BeginBatchDraw() EndBatchDraw():

        参数:0

        返回值:void

原理:

 BeginBatchDraw 开始运行时,绘制的图形不会直接显示在屏幕上,而是存入到缓冲区里面去,也就是存入到电脑的内存里面。当遇到EndBatchDraw,缓冲区里面存入的图片内容会释放出来,显示到屏幕上,以此实现让每一次循环的每一帧图片可以显示到屏幕上。

类似printf()的输出缓冲。

细节:

cleardevice()一定要在绘制之前写!!!

cleardevice()一定要在绘制之前写!!!

cleardevice()一定要在绘制之前写!!!

不然别问为啥程序运行后一片空白。

我咋知道的?肯定不是掉过坑了......

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值