화면 깜박임없이 화면이 새로 고침/지워지는 콘솔 게임을 보았습니다. 여러 가지 해결책을 시도해 보았습니다. 현재로서는 다음과 같습니다.깜박이는 Win32 C++ 콘솔 지우기 화면
while(true)
{
if(screenChanged) //if something needs to be drawn on new position
{
COORD coordScreen = { 0, 0 };
DWORD cCharsWritten;
CONSOLE_SCREEN_BUFFER_INFO csbi;
DWORD dwConSize;
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
GetConsoleScreenBufferInfo(hConsole, &csbi);
dwConSize = csbi.dwSize.X * csbi.dwSize.Y;
FillConsoleOutputCharacter(hConsole, TEXT(' '), dwConSize, coordScreen, &cCharsWritten);
GetConsoleScreenBufferInfo(hConsole, &csbi);
FillConsoleOutputAttribute(hConsole, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten);
SetConsoleCursorPosition(hConsole, coordScreen);
}
///printf all the time graphics on their right position with SetConsoleCursorPosition
Sleep(33.3f);
}
그래도 나는 몇 가지 최소한의 깜박임을 얻고 있습니다. 누구든지 아이디어가 있습니까?
그것을 이러한 게임은 Windows 콘솔 응용 프로그램으로 작성되지 않고 다양한 그래픽 모드를 사용하고 그래픽 메모리에 직접 픽셀을 쓰는 DOS 응용 프로그램으로 가능합니다. –
@Captain 첫 번째 문장을 다시 읽습니다. 소스 코드는 그가 본 콘솔 게임이 아니며 소스 코드는 그가 시도한 것입니다. –
@CodyGray 죄송합니다.) –