C# 有没有比使用console.Clear()制作控制台游戏更好的方法?

C# 有没有比使用console.Clear()制作控制台游戏更好的方法?,c#,console,game-loop,C#,Console,Game Loop,我正在玩弄游戏循环,准备制作一些游戏作为练习 目前我有一个稳定的游戏循环,游戏更新速度尽可能快,渲染每秒更新x次(目前为25次) 渲染方法基本上是一个draw+Console.Clear()方法,当Console.Clear()点击时,显示会变得非常不稳定,因为它还没有完成绘制 有没有更好的方法来做这样的事情 我是否可以将任何数据写入控制台,然后将其替换为其他数据?既然您使用的是C#无论如何,您可能需要查看 我猜您的问题是由于Console.Clear()没有针对这种使用进行优化,因为XNA使用

我正在玩弄游戏循环,准备制作一些游戏作为练习

目前我有一个稳定的游戏循环,游戏更新速度尽可能快,渲染每秒更新x次(目前为25次)

渲染方法基本上是一个draw+Console.Clear()方法,当Console.Clear()点击时,显示会变得非常不稳定,因为它还没有完成绘制

有没有更好的方法来做这样的事情

我是否可以将任何数据写入控制台,然后将其替换为其他数据?

既然您使用的是C#无论如何,您可能需要查看

我猜您的问题是由于
Console.Clear()
没有针对这种使用进行优化,因为XNA使用了类似的方法(
Clear()
图形设备上调用)


如果您不想尝试使用XNA,那么绘制一个矩形(纯黑色或灰色或其他颜色)可能比调用
Clear()
将屏幕“清空”,然后在其上绘制更快。

您可能想查看


我没有使用它,但从文章/演示来看,它似乎可以让您在控制台上完成一大堆整洁的工作。

假设您在每个循环中都从左上角重新编写一个全屏,您只需将Clear()替换为:


并覆盖上一个屏幕。

我从一个控制台开始,以了解游戏循环的基本内部工作原理。但是在数据上画一张白板而不是控制台可能会更快。Clear()。啊,这可能是我经历的关键。谢谢:)
 Console.SetCursorPosition(0, 0);