如何在 Monogame 中打印或输出文本?
我用谷歌搜索了如何在单一游戏中显示文本,结果是: 调试.WriteLine
其中表示:“默认情况下,输出会写入 DefaultTraceListener 的实例。”(该页面让我更加困惑)。
因此,如果有人可以指导我显示 DefaultTraceListener 的方法,或者在单游戏中输出文本的另一种方法,我将不胜感激。
我找到了!
使用 Debug.WriteLine 写入调试器,该调试器位于 Visual Studio 的输出窗口中(默认位于底部)。在 OpenGL 项目中默认关闭程序(按 F5 启动,Esc 关闭)时会出现。
如果您愿意,可以像在普通 C# 控制台应用程序中一样使用
Console.WriteLine
(假设您正在开发桌面应用程序)。有几个步骤。
您的应用程序应该正常运行,启动游戏时只应该出现一个控制台窗口。
或者,您可以使用
Debug.WriteLine
,它将写入 Visual Studio 中的输出窗口(当您开始调试游戏时它应该出现)。
如果您使用标准
Debug.WriteLine
或 Trace.WriteLine
,则输出将转到默认跟踪侦听器,可以在 Visual Studio 输出窗口中查看该侦听器。在 Visual Studio 之外,您可以使用 DebugView (SysInternals) 或 LogFusion (Binary Fortress) 等程序来显示输出。 DebugView 甚至具有查看远程计算机调试输出的功能。
还有其他跟踪侦听器可以将输出发送到文件或 Windows 事件日志,或者您可以相当轻松地编写自己的跟踪侦听器。
您还可以考虑使用现成的日志框架,例如 NLog,这将为您提供很大的灵活性。我在实践中发现,使用 NLog 比 .NET 中的内置内容要容易得多,因为它可以让您轻松地重新配置事物并以更灵活的方式控制/过滤输出。
我知道这个问题已经得到解答,但如果其他人偶然发现了这个问题,您也可以使用
Console.Write(thing in here);
或 Console.WriteLine(thing in here);
写入控制台窗口。 WriteLine 添加行结尾,而 Write 则没有。
System.Console.WriteLine
即使不使用调试器也可以开箱即用。