Ho visto alcuni giochi di console in cui lo schermo si aggiorna/si cancella senza il fastidioso lampeggiamento. Ho provato numerose soluzioni, ecco quello che ho ottenuto fin d'ora:Schermata di cancellazione della console Win32 C++ senza lampeggiare
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);
}
Eppure, sto diventando un po 'lampeggiante minima. Qualcuno ha qualche idea?
E ' è possibile che questi giochi non siano scritti come applicazioni per console Windows, ma come applicazioni DOS che utilizzano varie modalità grafiche e scrivono pixel direttamente nella memoria grafica. –
@Captain Rileggi la prima frase. Il codice sorgente non è per i "giochi da console" che ha visto, il codice sorgente è ciò che ha provato. –
@CodyGray Oops;) –