Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Быстрая прорисовка экрана с использованием GDI+

42K
09 февраля 2009 года
coder2009
9 / / 16.01.2009
Всем привет! Я начал писать свой вариант игры Pac-Man. Все движется плавно по экрану, но постоянно мерцает.
Image main = new Bitmap("pacman.bmp");
Затем в фун-ии OnPaint() рисую изображение на экране:
g.DrawImage(main,new Point(m.x,m.y));
Как можно исправить мерцание?:confused:
8.9K
09 февраля 2009 года
Kulti
77 / / 29.07.2006
На OpenGL/DX написать =) А если серьезно, то можно двойной буферезацией воспользоваться. Типа сначала на битовую катру в памяти рисуешь, а потом ее всю сразу на форму пихаешь. BitBlt (вроде так функция называется), от нее и плясать (RTFM).
42K
10 февраля 2009 года
coder2009
9 / / 16.01.2009
Спасибо!
842
10 февраля 2009 года
sigmov
301 / / 16.09.2008
Если используете MFC, то помимо двойной буферизации нужно заблокировать перерисовку базового фона!

WM_ERASEBKGND - в событиях
не прорисоввывать фон:
BOOL CPrimAutoTransView::OnEraseBkgnd(CDC* pDC){return (false);}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог