首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

求大神解答编贪吃蛇中出现的有关问题

2013-04-20 
求大神解答编贪吃蛇中出现的问题已经用c++实现了简单的贪吃蛇 不断调用输出函数 然后system(“cls”)但是调

求大神解答编贪吃蛇中出现的问题
已经用c++实现了简单的贪吃蛇 不断调用输出函数 然后system(“cls”)但是调试的时候发现问题 第一是用的21*21大小的“围墙” 没有问题 但当我用41*41的“围墙”的时候 就发现屏幕开始闪烁 到蛇的长度很长的时候 都可以看到闪烁的非常明显 
求给为打下指教一下 有没有什么函数可以让已经输出在屏幕上的东西不动 就是调用清屏函数时不会被消除 
[解决办法]

引用:
已经用c++实现了简单的贪吃蛇 不断调用输出函数 然后system(“cls”)但是调试的时候发现问题 第一是用的21*21大小的“围墙” 没有问题 但当我用41*41的“围墙”的时候 就发现屏幕开始闪烁 到蛇的长度很长的时候 都可以看到闪烁的非常明显 
求给为打下指教一下 有没有什么函数可以让已经输出在屏幕上的东西不动 就是调用清屏函数时不会被消除
应该没有吧,清屏函数的就是清屏的,怎么会有你要求的功能。
ps:游戏的话还是搞个界面的吧,dos窗口里搞什么啊
[解决办法]
你可以每次调用win32的api 设置光标位置, SetCursorPos 好像是这个 , 在这个位置进行输出东西,不需要清屏了。
[解决办法]
人眼对动态图像的变化仅能分辨出时间间隔为 25 毫秒左右的变化

你觉得闪烁了 是因为前后两次画面的刷新 超过了25毫秒

通常的游戏都是采用双缓冲 来解决画面闪烁的问题 

当然这是WIN32程序了 想在DOS窗口模式下实现双缓冲 不太现实

如果楼主一定需要这种模式

建议楼主每次只刷新改变的那一部分(即每次只是将蛇尾擦掉,将蛇头往前移一格)

热点排行