|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.03.2013, 20:26 | #1 |
Пользователь
Регистрация: 14.03.2013
Сообщений: 30
|
Спрайтовая анимация
Нужно сделать движение человека по экрану. Использовал функцию BitBlt, но после движения изображения по экрану остается его след т.е. оно не стирается, а накладывается друг на друга. Как это и справить?
Код:
Последний раз редактировалось FomAW; 29.03.2013 в 20:45. |
30.03.2013, 12:27 | #2 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
Общий подход - не рисовать фрагмент нового изображения поверх старого, а формировать новое изображение целиком, начиная с фона.
Вы, очевидно, забываете восстановить фон. Вероятно, когда Вы справитесь с текущей проблемой, у Вас появится другая - мерцание изображения. Для избавления от нее нужна двойная буферизация. PS. И еще - sleep в неконсольном приложении - дурной тон. Вместо него нужно пользоваться таймером. |
30.03.2013, 12:57 | #3 |
Пользователь
Регистрация: 14.03.2013
Сообщений: 30
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
спрайтовая анимация (Исправьте мне мои ошибки) | Рамиль1 | Помощь студентам | 1 | 28.04.2012 14:04 |
Анимация | A-IX-2 | Общие вопросы Delphi | 9 | 10.03.2011 16:30 |
Спрайтовая анимация | Anabella | Помощь студентам | 0 | 21.06.2010 10:46 |