Итак, я делаю RPG-игру сверху вниз в окне консоли (с движущимися персонажами и всем остальным), и до сих пор созданный мной игровой движок мог отображать только прямоугольники, я хочу изменить это, я хочу сделатьдругие формы, такие как треугольники или, может быть, круги.
Так что я использую этот фрагмент кода, который я нашел, чтобы визуализировать прямоугольники в текущей версии моего игрового движка, эта функция принимает координаты SMALL_RECT
и заполняетпробел с указанным символом внутри c
:
BOOL cls( SMALL_RECT* lpScrollRectangle, WCHAR c)
{
HANDLE hConsoleOutput = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_SCREEN_BUFFER_INFO csbi;
if (GetConsoleScreenBufferInfo(hConsoleOutput, &csbi))
{
CHAR_INFO fi = { c, csbi.wAttributes };
if (!lpScrollRectangle)
{
csbi.srWindow.Left = 0;
csbi.srWindow.Top = 0;
csbi.srWindow.Right = csbi.dwSize.X - 1;
csbi.srWindow.Bottom = csbi.dwSize.Y - 1;
lpScrollRectangle = &csbi.srWindow;
}
return ScrollConsoleScreenBufferW(hConsoleOutput, lpScrollRectangle, 0, csbi.dwSize, &fi);
}
return FALSE;
}
Я действительно ничего не знаю о Win32 API.
Короче говоря, мой вопрос: Есть ли способ отобразить непрямоугольные фигуры, такие как треугольники, в окне консоли?может быть, система, основанная на вершине?
Большое спасибо!:)