原始问题当我用 C++ 制作游戏时,窗口和缓冲区大小为 120 x 40 并且屏幕(wchar_t 的数组)相同,因此每个字符将占用相等的空间,这样整个数组将构成屏幕并稍后重绘它在控制台上我正在尝试使基本控制台与画布一起使用,但并非每个角色都有相同的空间,而且并非所有人都适合它//Display map for (nx = 0; nx < MAP_WIDTH; nx++) { for (ny = 0; ny < MAP_HEIGHT; ny++) { Screen[(ny + 1) * SCREEN_WIDTH + nx] = MAP[ny * MAP_WIDTH + nx] //returns a character '#' or '.'; } }这是我如何填充数组的示例`Screen = Array(SCREEN_WIDTH * SCREEEN_HEIGHT);`这是数组的初始化,现在我将如何将该屏幕缓冲区绘制到 C++ 中的画布上,就像这样 //finally printing the screen screen[ScreenWidth * ScreenHeight - 1] = '\0'; WriteConsoleOutputCharacter(hConsole, screen, ScreenWidth * ScreenHeight, { 0, 0 }, &dwBytesWritten);
1 回答
蓝山帝景
TA贡献1843条经验 获得超7个赞
我只是放弃了画布,只是将我的文字打印在带有这样的 para 标签内
let line = "";
for (let y = 0; y < SCREEN_HEIGHT; y++)
{
for (let x = 0; x < SCREEN_WIDTH; x++)
{
line += screen[y * SCREEN_WIDTH + x];
}
line += "\n";
}
document.getElementById("consoletext").innerText = line;
添加回答
举报
0/150
提交
取消