Я пишу тетрис с использованием C ++ и MFC.У меня есть таймер и обработчик OnTimer.Обработчик выглядит так:
... do some game-only logic ...
this->RedrawWindow();
А в обработчике OnPaint я рисую блоки, карту (с фоном растрового изображения), счет и т.д. Для рисования я использую растровые изображения и функцию BitBlt.Все нарисовано с нуля, я перерисовываю всю область окна.Общая производительность нормальная, иногда мерцает, но это нормально, но когда я добавил растровый фон на карту, мерцание во время перерисовки стало невыносимым.Нужно ли использовать другие алгоритмы для рисования растрового изображения, или, может быть, я неправильно выполняю все перерисовки при каждом запуске OnPaint?
Как устранить мерцание?Я могу использовать только C ++ и MFC, последний, к сожалению, я вообще не знал до начала этого проекта.
Итак, еще раз: как я могу устранить мерцание и повысить производительность перерисовки?