1

嗨所以我正在通过控制台窗口制作游戏,我想知道是否有任何方法可以让一两个文本字符的位置改变或消失。通常要做到这一点,我必须告诉控制台重新输入每个字符并重新输入一行,但这需要很长时间(1 秒 fps 加上重新输入场景所花费的 0.5 秒时间)。

有没有什么方法可以重新刷新或更改控制台上看到的一两行或“字符”,所以没有花太多时间等待控制台重新输入我的 24 行,每行都是一个字符串?(由文字构成的场景)

谢谢!=)

顺便说一句……有人记得窗户里的那个小复活节彩蛋吗?那是一部用控制台中的文字制作的整个星球大战电影?我希望游戏像那样流畅!

4

2 回答 2

3

你需要 ncurses 库。有关原因和示例,请参阅不带滚动的控制台打印。

还可以在谷歌上搜索已经这样做的 rogue/urogue/nethack 游戏的来源。

于 2011-05-01T03:27:35.927 回答
3

您需要使用外部库与控制台交互,因为 C++ 没有这些功能,但这是可能的。

我对这类事情的旧 goto 是ncurses。它简单、快速设置和跨平台。但它很,而且它的年龄显示出来了。(如果您在 Windows 上,则必须使用pdcurses;相同的功能,不同的包)。

还有一些特定于控制台的方法可以做到这一点。特别是,Windows 提供了一个 API 来执行这些类型的操作。

于 2011-05-01T03:33:00.697 回答