所以目前我正在创建一个基本游戏。
它有一个背景和一个玩家角色(都是bmp' s),它们使用wc.Display函数调用成功输出到窗口控制台。
我很好奇向窗口控制台显示文本的方法,即健康,得分或玩家离开了多少生命,例如吃豆人,乒乓球等。就像我的精灵在我的游戏窗口上的情况一样,我怎么做文本?
我知道cout的方法,但我不认为它与用于在游戏屏幕上显示文字的方法相同。
非常感谢任何帮助。
答案 0 :(得分:0)
假设你实际上并不是指控制台,因为你已经知道如何做精灵而不是文字:
RECT where; // populate this
HGDIOBJ OldFont;
BeginPaint(hWnd, &hDC);
OldFont = SelectObject(hDC, yourfont);
DrawText(hDC, "text", 4, &where, 0);
SelectObject(hDC, OldFont);
EndPaint(hWnd, &hDC);
答案 1 :(得分:0)
屏幕导向的文本i / o不在标准库的功能范围内。
它非常依赖系统。
但是,您可以使用相当便携的库,例如 ncurses 。
旧文本终端支持转义序列用于光标定位等,这些都是标准化的“ANSI转义序列”。
在Unix-land和Windows 10及更高版本中你可以使用它们,但这并不包括单字符(无缓冲)输入。
所以你需要像ncurses这样的东西。
对于Windows,您应该通过Windows API函数考虑基于wchar_t
的直接控制台i / o,以便能够输出非ASCII字符。
答案 2 :(得分:0)
我的头文件中添加了一个特定的功能,允许我将文本输出到屏幕。直到我去搜索它,我才知道它存在。谢谢你的帮助。