首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PacMan运动不平稳

PacMan运动不平稳
EN

Stack Overflow用户
提问于 2010-12-27 12:05:13
回答 1查看 1.1K关注 0票数 1

我使用简单的for循环将pacman移动到一行,但是pacman会闪烁,或者可能是整个屏幕的更新和闪烁。我怎样才能使它更光滑呢?

编辑:

我目前正在使用C++涡轮及其内置的图形库。BUt我倾向于稍后使用SDL (在2D数组(网格)上使用图像块)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-27 12:19:12

有许多技术可以用于框架之间的平稳转换。最简单的可能是双缓冲,即在可视视频内存之外完成帧的构造,然后整个内存块切换到新的帧位置(通常使用页面翻转、快速硬件切换,但即使在非视频内存中创建帧并在一次快速操作中将其“闪动”到视频内存也是有利的)。

通过使用这种方法,转换看起来更加流畅,因为您从来没有在任何时候显示过半构建的框架。尤其是如果切换是在硬件帧之间(至少在旧的CRT监视器上--实际上我不知道新的监视器是否有垂直和水平回溯的概念)。

另一种方法是保证每帧计算成本低。一个例子是只在非视频内存中绘制一次PacMan中的隧道线路,这样您就可以相对较快地“模糊”它(因为它们永远不会改变)。换言之,建立一个框架将包括:

change.

  • copying

  • 复制隧道墙,它从不复制圆点,它改变了字符,而字符变化相当频繁。

这大大加快了这个过程,我在俯视空间射击游戏中使用了这个技巧,这样更深的帧也能移动得更慢,从而产生视差效应。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4538522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档