来了来了,这两天在渲效果图,一直没空上来,今天中午趁吃了饭有点空隙~~
有两种情况,请LZ对号入坐:
1、背景是纯色:这个很好解决,graphics.lib中有画实矩形函数bar:
void far bar(int x1, int y1, int x2, int y2);
你只要设置好相应的填充颜色模式(设置为背景色),然后用bar()函数去覆盖要擦除的区域,要擦多大范围可以通过bar()的参数决定;
2、背景是图形:这就需要将背景先保存起来,比如你要画一个移动的小球,可以先用保存区域函数:
void far getimage(int xl,int yl, int x2,int y2,void far *mapbuf);
将要画小球的地方先进行保存,再画上小球,停顿一下,要擦除小球时,将之前保存的内容用下面函数覆盖到原处:
void far putimge(int x,int,y,void * mapbuf, int op);
此时屏幕就恢复完整了。然后再保存下一个画球位置先,然后画球,停顿,覆盖……